Code-pointer integrity
In this chapter, we describe code-pointer integrity (CPI), a new design point that guarantees
the integrity of all code pointers in a program (eg, function pointers, saved return addresses) …
the integrity of all code pointers in a program (eg, function pointers, saved return addresses) …
Sok: Runtime integrity
This paper provides a systematic exploration of Control Flow Integrity (CFI) and Control Flow
Attestation (CFA) mechanisms, examining their differences and relationships. It addresses …
Attestation (CFA) mechanisms, examining their differences and relationships. It addresses …
Sok: All you ever wanted to know about x86/x64 binary disassembly but were afraid to ask
Disassembly of binary code is hard, but necessary for improving the security of binary
software. Over the past few decades, research in binary disassembly has produced many …
software. Over the past few decades, research in binary disassembly has produced many …
SoK: Integrity, Attestation, and Auditing of Program Execution
This paper provides a systematic exploration of Control Flow Integrity (CFI) and Control Flow
Attestation (CFA) mechanisms, examining their differences and relationships. It addresses …
Attestation (CFA) mechanisms, examining their differences and relationships. It addresses …
xmp: Selective memory protection for kernel and user space
Attackers leverage memory corruption vulnerabilities to establish primitives for reading from
or writing to the address space of a vulnerable process. These primitives form the foundation …
or writing to the address space of a vulnerable process. These primitives form the foundation …
Speculative probing: Hacking blind in the Spectre era
To defeat ASLR or more advanced fine-grained and leakage-resistant code randomization
schemes, modern software exploits rely on information disclosure to locate gadgets inside …
schemes, modern software exploits rely on information disclosure to locate gadgets inside …
Compiler-assisted code randomization
Despite decades of research on software diversification, only address space layout
randomization has seen widespread adoption. Code randomization, an effective defense …
randomization has seen widespread adoption. Code randomization, an effective defense …
Function interface analysis: A principled approach for function recognition in COTS binaries
Function recognition is one of the key tasks in binary analysis, instrumentation and reverse
engineering. Previous approaches for this problem have relied on matching code patterns …
engineering. Previous approaches for this problem have relied on matching code patterns …
Shredder: Breaking exploits through API specialization
Code reuse attacks have been a threat to software security since the introduction of non-
executable memory protections. Despite significant advances in various types of additional …
executable memory protections. Despite significant advances in various types of additional …
Practical fine-grained binary code randomization
Despite its effectiveness against code reuse attacks, fine-grained code randomization has
not been deployed widely due to compatibility as well as performance concerns. Previous …
not been deployed widely due to compatibility as well as performance concerns. Previous …