Control Flow Integrity for COTS Binaries
By Mingwei Zhang, R. Sekar. USENIX Security Symposium, 2013
571 citations recorded by the source corpus.
View Paper: https://www.semanticscholar.org/paper/23e8236644775fd5d8ff5536ba06b960e19f904b
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
- Felix Schuster
- Lucas Davi
- Ahmad-Reza Sadeghi
- Volodymyr Kuznetsov
- Tigist Abera
- Thomas Tendyck
- Nicholas Carlini
- Nathan Burow
Citations in the corpus
- The Cybersecurity Landscape in Industrial Control Systems (2016, methodology): “To reduce this overhead, a number of proposals have been made: kBouncer [92], ROPecker [93], CFI for COTS binaries [94], ROPGuard [95], and CCFIR [96].”
- Data-Oriented Programming: On the Expressiveness of Non-control Data Attacks (2016, methodology): “BinCFI relies on non-writable address translation table to enforce target checking [8].”
- SoK: Automated Software Diversity (2014, background): “Along with the average impact of each implementation on program running time, we also show the effects on memory usage and on-disk binary file size (when reported).”
- Enforcing Forward-Edge Control-Flow Integrity in GCC & LLVM (2014, methodology): “Even the most recent CFI implementation, SAFEDISPATCH [19], must sacrifice software-engineering practicality and use profile-driven, whole-program optimization to achieve overheads comparable to ours (roughly 2% for all three of their Chromium benchmarks).”
- Out of Control: Overcoming Control-Flow Integrity (2014, methodology): “Specifically, recent work on practical CFI is applicable on binaries, but it enforces a looser notion of control flow integrity [17], [16].”
- Counterfeit Object-oriented Programming: On the Difficulty of Preventing Code Reuse Attacks in C++ Applications (2015, methodology): “For example, the widely deployed address space layout randomization (ASLR) technique ensures that the stack, the heap, and executable modules of a program are mapped at secret, pseudo-randomly chosen memory locations.”
- Code-pointer integrity (2014, methodology): “We also compare Levee to two related approaches, SoftBound [34] and control-flow integrity [1, 54, 53].”
- Control-Flow Integrity (2017, methodology): “Unfortunately, AIR is known to be a weak proxy for security [Tice et al. 2014].”
- C-FLAT: Control-Flow Attestation for Embedded Systems Software (2016, background): “Many improvements have been made in the last years making CFI an efficient and effective mitigation technology [47, 43].”
- LEMNA: Explaining Deep Learning based Security Applications (2018, background): “Binary code reverse-engineering, which transfers binary code to assembly code, is a crucial step in (1) examining and detecting malware [51], (2) hardening the security of software [75], and (3) generating security patches [56].”
- Stitching the Gadgets: On the Ineffectiveness of Coarse-Grained Control-Flow Integrity Protection (2014, background): “To do so, we introduce several new ROP attack primitives, and demonstrate the practicality of our approach by transforming existing real-world exploits into more stealthy attacks that bypass coarse-grained CFI defenses.”