Control-flow integrity: Precision, security, and performance

N Burow, SA Carr, J Nash, P Larsen, M Franz… - ACM Computing …, 2017 - dl.acm.org
Memory corruption errors in C/C++ programs remain the most common source of security
vulnerabilities in today's systems. Control-flow hijacking attacks exploit memory corruption …

A survey on systems security metrics

M Pendleton, R Garcia-Lebron, JH Cho… - ACM Computing Surveys …, 2016 - dl.acm.org
Security metrics have received significant attention. However, they have not been
systematically explored based on the understanding of attack-defense interactions, which …

Code-pointer integrity

V Kuznetzov, L Szekeres, M Payer, G Candea… - The Continuing Arms …, 2018 - dl.acm.org
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) …

Data-oriented programming: On the expressiveness of non-control data attacks

H Hu, S Shinde, S Adrian, ZL Chua… - … IEEE Symposium on …, 2016 - ieeexplore.ieee.org
As control-flow hijacking defenses gain adoption, it is important to understand the remaining
capabilities of adversaries via memory exploits. Non-control data exploits are used to mount …

Control flow and code integrity for COTS binaries: An effective defense against real-world ROP attacks

M Zhang, R Sekar - Proceedings of the 31st Annual Computer Security …, 2015 - dl.acm.org
Despite decades of sustained effort, memory corruption attacks continue to be one of the
most serious security threats faced today. They are highly sought after by attackers, as they …

Everything old is new again: Binary security of {WebAssembly}

D Lehmann, J Kinder, M Pradel - 29th USENIX Security Symposium …, 2020 - usenix.org
WebAssembly is an increasingly popular compilation target designed to run code in
browsers and on other platforms safely and securely, by strictly separating code and data …

SoK: Shining light on shadow stacks

N Burow, X Zhang, M Payer - 2019 IEEE Symposium on …, 2019 - ieeexplore.ieee.org
Control-Flow Hijacking attacks are the dominant attack vector against C/C++ programs.
Control-Flow Integrity (CFI) solutions mitigate these attacks on the forward edge, ie, indirect …

Where does it go? refining indirect-call targets with multi-layer type analysis

K Lu, H Hu - Proceedings of the 2019 ACM SIGSAC Conference on …, 2019 - dl.acm.org
System software commonly uses indirect calls to realize dynamic program behaviors.
However, indirect-calls also bring challenges to constructing a precise control-flow graph …

Block oriented programming: Automating data-only attacks

KK Ispoglou, B AlBassam, T Jaeger… - Proceedings of the 2018 …, 2018 - dl.acm.org
With the widespread deployment of Control-Flow Integrity (CFI), control-flow hijacking
attacks, and consequently code reuse attacks, are significantly more difficult. CFI limits …

Enforcing unique code target property for control-flow integrity

H Hu, C Qian, C Yagemann, SPH Chung… - Proceedings of the …, 2018 - dl.acm.org
The goal of control-flow integrity (CFI) is to stop control-hijacking attacks by ensuring that
each indirect control-flow transfer (ICT) jumps to its legitimate target. However, existing …