Control-Flow Bending: On the Effectiveness of Control-Flow Integrity

被引:0
作者
Carlini, Nicolas [1 ]
Barresi, Antonio [2 ]
Payer, Mathias [3 ]
Wagner, David [1 ]
Gross, Thomas R. [2 ]
机构
[1] Univ Calif Berkeley, Berkeley, CA 94720 USA
[2] Swiss Fed Inst Technol, Zurich, Switzerland
[3] Purdue Univ, W Lafayette, IN 47907 USA
来源
PROCEEDINGS OF THE 24TH USENIX SECURITY SYMPOSIUM | 2015年
关键词
D O I
暂无
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Control-Flow Integrity (CFI) is a defense which prevents control-flow hijacking attacks. While recent research has shown that coarse-grained CFI does not stop attacks, fine-grained CFI is believed to be secure. We argue that assessing the effectiveness of practical CFI implementations is non-trivial and that common evaluation metrics fail to do so. We then evaluate fully precise static CFI - the most restrictive CFI policy that does not break functionality - and reveal limitations in its security. Using a generalization of non-control-data attacks which we call Control-Flow Bending (CFB), we show how an attacker can leverage a memory corruption vulnerability to achieve Turing-complete computation on memory using just calls to the standard library. We use this attack technique to evaluate fully-precise static CFI on six real binaries and show that in five out of six cases, powerful attacks are still possible. Our results suggest that CFI may not be a reliable defense against memory corruption vulnerabilities. We further evaluate shadow stacks in combination with CFI and find that their presence for security is necessary: deploying shadow stacks removes arbitrary code execution capabilities of attackers in three of six cases.
引用
收藏
页码:161 / 176
页数:16
相关论文
共 44 条
  • [1] Abadi M, 2005, CCS 05 P 12 ACM C CO
  • [2] AKRITIDIS P., 2008, IEEE S P 08
  • [3] [Anonymous], OSDI 14
  • [4] [Anonymous], 2004, EXEC SHIELD
  • [5] BLETSCH T., 2011, ACSAC 11
  • [6] Bletsch Tyler K., 2011, ASIACCS 11
  • [7] CARLINI N., 2014, USENIX SECURITY 14
  • [8] Castro M., 2006, OSDI '06
  • [9] Return-Oriented Programming without Returns
    Checkoway, Stephen
    Davi, Lucas
    Dmitrienko, Alexandra
    Sadeghi, Ahmad-Reza
    Shacham, Hovav
    Winandy, Marcel
    [J]. PROCEEDINGS OF THE 17TH ACM CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY (CCS'10), 2010, : 559 - 572
  • [10] CHEN S., 2005, USENIX SECURITY 05