Abstract
Current Control-Flow Integrity (CFI) implementations track control edges individually, insensitive to the context of preceding edges. Recent work demonstrates that this leaves sufficient leeway for powerful ROP attacks. Context-sensitive CFI, which can provide enhanced security, is widely considered impractical for real-world adoption. Our work shows that Context-sensitive CFI (CCFI) for both the backward and forward edge can be implemented efficiently on commodity hardware. We present PathArmor, a binary-level CCFI implementation which tracks paths to sensitive program states, and defines the set of valid control edges within the state context to yield higher precision than existing CFI implementations. Even with simple context-sensitive policies, PathArmor yields significantly stronger CFI invariants than context-insensitive CFI, with similar performance.
Original language | English |
---|---|
Title of host publication | CCS 2015 - Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security |
Publisher | Association for Computing Machinery (ACM) |
Pages | 927-940 |
Number of pages | 14 |
Volume | 2015-October |
ISBN (Electronic) | 9781450338325 |
DOIs | |
Publication status | Published - 12 Oct 2015 |
Event | 22nd ACM SIGSAC Conference on Computer and Communications Security, CCS 2015 - Denver, United States Duration: 12 Oct 2015 → 16 Oct 2015 |
Conference
Conference | 22nd ACM SIGSAC Conference on Computer and Communications Security, CCS 2015 |
---|---|
Country/Territory | United States |
City | Denver |
Period | 12/10/15 → 16/10/15 |
Keywords
- Context-sensitive CFI
- Control-flow integrity