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 条
  • [1] A Method for Analyzing Code-Reuse Attacks
    A. V. Vishnyakov
    A. R. Nurmukhametov
    Sh. F. Kurmangaleev
    S. S. Gaisaryan
    Programming and Computer Software, 2019, 45 : 473 - 484
  • [2] A Method for Analyzing Code-Reuse Attacks
    Vishnyakov, A. V.
    Nurmukhametov, A. R.
    Kurmangaleev, Sh F.
    Gaisaryan, S. S.
    PROGRAMMING AND COMPUTER SOFTWARE, 2019, 45 (08) : 473 - 484
  • [3] ROPocop - Dynamic mitigation of code-reuse attacks
    Follner, Andreas
    Bodden, Eric
    JOURNAL OF INFORMATION SECURITY AND APPLICATIONS, 2016, 29 : 16 - 26
  • [4] Capturing Malware Propagations with Code Injections and Code-Reuse Attacks
    Korczynski, David
    Yin, Heng
    CCS'17: PROCEEDINGS OF THE 2017 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2017, : 1691 - 1708
  • [5] μShield Configurable Code-Reuse Attacks Mitigation For Embedded Systems
    Abbasi, Ali
    Wetzels, Jos
    Bokslag, Wouter
    Zambon, Emmanuele
    Etalle, Sandro
    NETWORK AND SYSTEM SECURITY, 2017, 10394 : 694 - 709
  • [6] Mitigating Code-Reuse Attacks on CISC Architectures in a Hardware Approach
    Zhang, Zhijiao
    Lu, Yashuai
    Chen, Yu
    Lu, Yongqiang
    Shi, Yuanchun
    ICT SYSTEMS SECURITY AND PRIVACY PROTECTION, 2015, 455 : 431 - 445
  • [7] Preventing Kernel Code-Reuse Attacks Through Disclosure Resistant Code Diversification
    Gionta, Jason
    Enck, William
    Larsen, Per
    2016 IEEE CONFERENCE ON COMMUNICATIONS AND NETWORK SECURITY (CNS), 2016, : 189 - 197
  • [8] Mitigating Code-Reuse Attacks with Control-Flow Locking
    Bletsch, Tyler
    Jiang, Xuxian
    Freeh, Vince
    27TH ANNUAL COMPUTER SECURITY APPLICATIONS CONFERENCE (ACSAC 2011), 2011, : 353 - 362
  • [9] Towards Automating Code-Reuse Attacks Using Synthesized Gadget Chains
    Schloegel, Moritz
    Blazytko, Tim
    Basler, Julius
    Hemmer, Fabian
    Holz, Thorsten
    COMPUTER SECURITY - ESORICS 2021, PT I, 2021, 12972 : 218 - 239
  • [10] Thwarting code-reuse and side-channel attacks in embedded systems
    Tsoupidi, Rodothea Myrsini
    Troubitsyna, Elena
    Papadimitratos, Panagiotis
    COMPUTERS & SECURITY, 2023, 133