Where does it go? refining indirect-call targets with multi-layer type analysis
System software commonly uses indirect calls to realize dynamic program behaviors.
However, indirect-calls also bring challenges to constructing a precise control-flow graph …
However, indirect-calls also bring challenges to constructing a precise control-flow graph …
Fineibt: Fine-grain control-flow enforcement with indirect branch tracking
We present the design, implementation, and evaluation of FineIBT: a CFI enforcement
mechanism that improves the precision of hardware-assisted CFI solutions, like Intel IBT, by …
mechanism that improves the precision of hardware-assisted CFI solutions, like Intel IBT, by …
Practical program modularization with type-based dependence analysis
K Lu - 2023 IEEE Symposium on Security and Privacy (SP), 2023 - ieeexplore.ieee.org
Today's software programs are bloating and have become extremely complex. As there is
typically no internal isolation among modules in a program, a vulnerability can be exploited …
typically no internal isolation among modules in a program, a vulnerability can be exploited …
A survey of exploitation techniques and defenses for program data attacks
Y Wang, Q Li, Z Chen, P Zhang, G Zhang - Journal of Network and …, 2020 - Elsevier
In recent years, program data attacks (PDA) have become a popular topic in the field of
network security. PDAs are memory corruption vulnerability exploitation techniques that …
network security. PDAs are memory corruption vulnerability exploitation techniques that …
Beyond the edges of kernel control-flow hijacking protection with hek-cfi
Over the past decade, vulnerabilities in the Linux kernel have more than doubled, allowing
control-flow hijacking attacks that compromise the entire system. To thwart these attacks …
control-flow hijacking attacks that compromise the entire system. To thwart these attacks …
Unleashing the Power of {Type-Based} Call Graph Construction by Using Regional Pointer Information
When dealing with millions of lines of C code, we still cannot have the cake and eat it: type
analysis for call graph construction is scalable yet highly imprecise. We address this …
analysis for call graph construction is scalable yet highly imprecise. We address this …
A cocktail approach to practical call graph construction
After decades of research, constructing call graphs for modern C-based software remains
either imprecise or inefficient when scaling up to the ever-growing complexity. The main …
either imprecise or inefficient when scaling up to the ever-growing complexity. The main …
Semantic-enhanced indirect call analysis with large language models
In contemporary software development, the widespread use of indirect calls to achieve
dynamic features poses challenges in constructing precise control flow graphs (CFGs) …
dynamic features poses challenges in constructing precise control flow graphs (CFGs) …
Typesqueezer: When static recovery of function signatures for binary executables meets dynamic analysis
Control-Flow Integrity (CFI) is considered a promising solution in thwarting advanced code-
reuse attacks. While the problem of backward-edge protection in CFI is nearly closed …
reuse attacks. While the problem of backward-edge protection in CFI is nearly closed …
Lightweight, multi-stage, compiler-assisted application specialization
Program debloating aims to enhance the performance and reduce the attack surface of
bloated applications. Several techniques have been recently proposed to specialize …
bloated applications. Several techniques have been recently proposed to specialize …