Abstract | ||
---|---|---|
Widespread use of memory unsafe programming languages (e.g., Cand C++) leaves many systems vulnerable to memory corruptionattacks. A variety of defenses have been proposed to mitigate attacksthat exploit memory errors to hijack the control flow of the codeat run-time, e.g., (fine-grained) randomization or Control Flow Integrity. However, recent work on data-oriented programming (DOP)demonstrated highly expressive (Turing-complete) attacks, even inthe presence of these state-of-the-art defenses. Although multiplereal-world DOP attacks have been demonstrated, no efficient defenses are yet available. We propose run-time scope enforcement(RSE), a novel approach designed to efficiently mitigate all currentlyknown DOP attacks by enforcing compile-time memory safety constraints (e.g., variable visibility rules) at run-time. We present HardScope, a proof-of-concept implementation of hardware-assistedRSE for the new RISC-V open instruction set architecture. Wediscuss our systematic empirical evaluation of HardScope whichdemonstrates that it can mitigate all currently known DOP attacks,and has a real-world performance overhead of 3.2% in embeddedbenchmarks. |
Year | Venue | Field |
---|---|---|
2017 | arXiv: Cryptography and Security | Memory safety,Memory corruption,Instruction set,Computer security,Computer science,Control flow,Control-flow integrity,Exploit,Enforcement,Memory errors |
DocType | Volume | Citations |
Journal | abs/1705.10295 | 4 |
PageRank | References | Authors |
0.38 | 3 | 7 |
Name | Order | Citations | PageRank |
---|---|---|---|
Thomas Nyman | 1 | 77 | 7.98 |
Ghada Dessouky | 2 | 40 | 6.26 |
Shaza Zeitouni | 3 | 67 | 7.33 |
Aaro Lehikoinen | 4 | 4 | 0.38 |
Andrew J. Paverd | 5 | 77 | 11.52 |
N. Asokan | 6 | 2889 | 211.44 |
Ahmad-reza Sadeghi | 7 | 5463 | 334.69 |