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 条
  • [21] Code-Reuse Attacks for the Web: Breaking Cross-Site Scripting Mitigations via Script Gadgets
    Lekies, Sebastian
    Kotowicz, Krzysztof
    Gross, Samuel
    Nava, Eduardo A. Vela
    Johns, Martin
    CCS'17: PROCEEDINGS OF THE 2017 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2017, : 1709 - 1723
  • [22] Survey of Methods for Automated Code-Reuse Exploit Generation
    A. V. Vishnyakov
    A. R. Nurmukhametov
    Programming and Computer Software, 2021, 47 : 271 - 297
  • [23] Efficient and Robust Detection of Code-Reuse Attacks Through Probabilistic Packet Inspection in Industrial IoT Devices
    Ho, Jun-Won
    IEEE ACCESS, 2018, 6 : 54343 - 54354
  • [24] An instruction verification based hardware/software co-design approach for mitigating code-reuse attacks
    Lü Y.-S.
    Tien Tzu Hsueh Pao/Acta Electronica Sinica, 2016, 44 (10): : 2403 - 2409
  • [25] CommonCode: A Code-Reuse Platform for Wireless Network Experimentation
    Lee, Junhee
    Lee, Jinsung
    Lee, Kyunghan
    Chong, Song
    IEEE COMMUNICATIONS MAGAZINE, 2012, 50 (03) : 156 - 163
  • [26] Survey of Methods for Automated Code-Reuse Exploit Generation
    Vishnyakov, A. V.
    Nurmukhametov, A. R.
    PROGRAMMING AND COMPUTER SOFTWARE, 2021, 47 (04) : 271 - 297
  • [27] Size Does Matter Why Using Gadget-Chain Length to Prevent Code-Reuse Attacks is Hard
    Goktas, Enes
    Athanasopoulos, Elias
    Polychronakis, Michalis
    Bos, Herbert
    Portokalidis, Georgios
    PROCEEDINGS OF THE 23RD USENIX SECURITY SYMPOSIUM, 2014, : 417 - 432
  • [28] BBB-CFI: Lightweight CFI Approach Against Code-Reuse Attacks Using Basic Block Information
    He, Wenjian
    Das, Sanjeev
    Zhang, Wei
    Liu, Yang
    ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2020, 19 (01)
  • [29] A code-reuse scheme in the downlink of TD-SCDMA system
    Liao, Yan-Yan
    Peng, Zhen-Yu
    Yang, Da-Cheng
    Dianzi Yu Xinxi Xuebao/Journal of Electronics and Information Technology, 2007, 29 (12): : 2926 - 2929
  • [30] On Detecting Code Reuse Attacks
    Kosolapov, Y. V.
    AUTOMATIC CONTROL AND COMPUTER SCIENCES, 2020, 54 (07) : 573 - 583