ROPMEMU: A Framework for the Analysis of Complex Code-Reuse Attacks

被引:19
|
作者
Graziano, Mariano [1 ]
Balzarotti, Davide [2 ]
Zidouemba, Alain [1 ]
机构
[1] Cisco Syst Inc, San Jose, CA 95134 USA
[2] Eurecom, Chappes, France
关键词
D O I
10.1145/2897845.2897894
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Code reuse attacks based on return oriented programming (ROP) are becoming more and more prevalent every year. They started as a way to circumvent operating systems protections against injected code, but they are now also used as a technique to keep the malicious code hidden from detection and analysis systems. This means that while in the past ROP chains were short and simple (and therefore did not require any dedicated tool for their analysis), we recently started to observe very complex algorithms - such as a complete rootkit - implemented entirely as a sequence of ROP gadgets. In this paper, we present a set of techniques to analyze complex code reuse attacks. First, we identify and discuss the main challenges that complicate the reverse engineer of code implemented using ROP. Second, we propose an emulation-based framework to dissect, reconstruct, and simplify ROP chains. Finally, we test our tool on the most complex example available to date: a ROP rootkit containing four separate chains, two of them dynamically generated at runtime.
引用
收藏
页码:47 / 58
页数:12
相关论文
共 50 条
  • [31] On Detecting Code Reuse Attacks
    Y. V. Kosolapov
    Automatic Control and Computer Sciences, 2020, 54 : 573 - 583
  • [32] SGXDump: A Repeatable Code-Reuse Attack for Extracting SGX Enclave Memory
    Yoon, HanJae
    Lee, ManHee
    APPLIED SCIENCES-BASEL, 2022, 12 (15):
  • [33] Gadget Weighted Tagging: A Flexible Framework to Protect Against Code Reuse Attacks
    Chen, Liwei
    Ma, Mengyu
    Zhang, Wenhao
    Shi, Gang
    Meng, Dan
    ICT SYSTEMS SECURITY AND PRIVACY PROTECTION, SEC 2017, 2017, 502 : 568 - 584
  • [34] Input-Driven Dynamic Program Debloating for Code-Reuse Attack Mitigation
    Wang, Xiaoke
    Hui, Tao
    Zhao, Lei
    Cheng, Yueqiang
    PROCEEDINGS OF THE 31ST ACM JOINT MEETING EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, ESEC/FSE 2023, 2023, : 934 - 946
  • [35] Hardware-assisted fine-grained code-reuse attack detection
    20155201716533
    (1) State Key Laboratory for Novel Software Technology, Nanjing University, Nanjing, China; (2) Department of Computer Science and Technology, Nanjing University, Nanjing, China; (3) School of Information Systems, Singapore Management University, Singapore, Singapore, 1600, Asterisk Research, Inc.; Deloitte Tohmatsu Risk Services Co., Ltd.; Farsight Security, Inc.; NTT Communications Corporation; Tapad Inc. (Springer Verlag):
  • [36] Marlin: Mitigating Code Reuse Attacks Using Code Randomization
    Gupta, Aditi
    Habibi, Javid
    Kirkpatrick, Michael S.
    Bertino, Elisa
    IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, 2015, 12 (03) : 326 - 337
  • [37] Defensing Code Reuse Attacks Using Live Code Randomization
    Zhang G.-M.
    Li Q.-B.
    Zeng G.-Y.
    Zhao Y.-T.
    Ruan Jian Xue Bao/Journal of Software, 2019, 30 (09): : 2772 - 2790
  • [38] Detecting Code Reuse Attacks with Branch Prediction
    Lee, Yongsuk
    Lee, Gyungho
    COMPUTER, 2018, 51 (04) : 40 - 47
  • [39] Efficiently Securing Systems from Code Reuse Attacks
    Kayaalp, Mehmet
    Ozsoy, Meltem
    Abu Ghazaleh, Nael
    Ponomarev, Dmitry
    IEEE TRANSACTIONS ON COMPUTERS, 2014, 63 (05) : 1144 - 1156
  • [40] CR-Spectre: Defense-Aware ROP Injected Code-Reuse Based Dynamic Spectre
    Dhavlle, Abhijitt
    Rafatirad, Setareh
    Homayoun, Houman
    Dinakarrao, Sai Manoj Pudukotai
    PROCEEDINGS OF THE 2022 DESIGN, AUTOMATION & TEST IN EUROPE CONFERENCE & EXHIBITION (DATE 2022), 2022, : 508 - 513