Abstract | ||
---|---|---|
Control-flow integrity (CFI) is a general method for preventing code-reuse attacks, which utilize benign code sequences to achieve arbitrary code execution. CFI ensures that the execution of a program follows the edges of its predefined static Control-Flow Graph: any deviation that constitutes a CFI violation terminates the application. Despite decades of research effort, there are still several implementation challenges in efficiently protecting the control flow of function returns (Return-Oriented Programming attacks). The set of valid return addresses of frequently called functions can be large and thus an attacker could bend the backward-edge CFI by modifying an indirect branch target to another within the valid return set. This article proposes RAGuard, an efficient and user-transparent hardware-based approach to prevent Return-Oreiented Programming attacks. RAGuard binds a message authentication code (MAC) to each return address to protect its integrity. To guarantee the security of the MAC and reduce runtime overhead: RAGuard (1) computes the MAC by encrypting the signature of a return address with AES-128, (2) develops a key management module based on a Physical Unclonable Function (PUF) and a True Random Number Generator (TRNG), and (3) uses a dedicated register to reduce MACs’ load and store operations of leaf functions. We have evaluated our mechanism based on the open-source LEON3 processor and the results show that RAGuard incurs acceptable performance overhead and occupies reasonable area.
|
Year | DOI | Venue |
---|---|---|
2019 | 10.1145/3280852 | TACO |
Keywords | Field | DocType |
AES-128, Code-reuse attacks, PUF, key management, message authentication code, return-oriented programming attacks | Key management,Indirect branch,Message authentication code,Computer science,Advanced Encryption Standard,Control flow,Encryption,Physical unclonable function,Computer hardware,Arbitrary code execution | Journal |
Volume | Issue | ISSN |
15 | 4 | 1544-3566 |
Citations | PageRank | References |
0 | 0.34 | 34 |
Authors | ||
9 |
Name | Order | Citations | PageRank |
---|---|---|---|
Jun Zhang | 1 | 1102 | 188.11 |
Rui Hou | 2 | 45 | 11.05 |
Wei Song | 3 | 0 | 0.68 |
Sally A. Mckee | 4 | 1928 | 152.59 |
Zhen Jia | 5 | 338 | 17.82 |
Chen Zheng | 6 | 213 | 7.64 |
Ming-yu Chen | 7 | 902 | 79.29 |
Lixin Zhang | 8 | 571 | 45.96 |
Dan Meng | 9 | 476 | 67.10 |