An In-Depth Analysis of the Code-Reuse Gadgets Introduced by Software Obfuscation

被引:0
|
作者
Zhang, Naiqian [1 ]
Feng, Zheyun [1 ]
Xu, Dongpeng [1 ]
机构
[1] Univ New Hampshire, Durham, NH 03824 USA
关键词
Software Obfuscation; Code-reuse Attack; Gadget;
D O I
10.1007/978-3-031-54776-8_9
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Software obfuscation techniques are commonly employed to resist malicious reverse engineering. However, recent studies indicate that obfuscation introduces potential vulnerabilities susceptible to code-reuse attacks because the number of code-reuse gadgets in obfuscated programs significantly increases. Understanding how different obfuscation techniques contribute to the emergence of these code-reuse gadgets is crucial for developing secure obfuscation schemes that minimize the risk of code-reuse attacks, but no existing study has investigated this problem. To address this knowledge gap, we present a comprehensive study on the impact of software obfuscation on code-reuse gadgets in programs. Firstly, we collect and analyze metrics data of gadgets obtained from a benchmark of programs obfuscated using various techniques. By examining the statistical results, we establish quantitative and qualitative relationships between each obfuscation technique and the resulting gadgets. Our key findings reveal how obfuscation techniques introduce significant code-reuse attack risks to a gadget set from different measurement schemes. Secondly, we delve into the underlying mechanisms of each obfuscation technique and elucidate why they contribute to generating specific types of gadgets. Lastly, we propose a mitigation strategy that combines low-risk obfuscation methods. Evaluation results demonstrate that our mitigation strategy effectively reduces the risks associated with code-reuse attacks without compromising obfuscation strength.
引用
收藏
页码:217 / 240
页数:24
相关论文
共 30 条
  • [1] ROPMEMU: A Framework for the Analysis of Complex Code-Reuse Attacks
    Graziano, Mariano
    Balzarotti, Davide
    Zidouemba, Alain
    ASIA CCS'16: PROCEEDINGS OF THE 11TH ACM ASIA CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2016, : 47 - 58
  • [2] 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
  • [3] 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
  • [4] Software Module Clustering: An In-Depth Literature Analysis
    Sarhan, Qusay, I
    Ahmed, Bestoun S.
    Bures, Miroslav
    Zamli, Kamal Z.
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2022, 48 (06) : 1905 - 1928
  • [5] Reverse code engineering: An in-depth analysis of the Bagle virus
    Rozinov, K
    Proceedings from the Sixth Annual IEEE Systems, Man and Cybernetics Information Assurance Workshop, 2005, : 380 - 387
  • [6] Behind the Intents: An In-depth Empirical Study on Software Refactoring in Modern Code Review
    Paixao, Matheus
    Uchoa, Anderson
    Bibiano, Ana Carla
    Oliveira, Daniel
    Garcia, Alessandro
    Krinke, Jens
    Arvonio, Emilio
    2020 IEEE/ACM 17TH INTERNATIONAL CONFERENCE ON MINING SOFTWARE REPOSITORIES, MSR, 2020, : 125 - 136
  • [7] Protecting Software through Obfuscation: Can It Keep Pace with Progress in Code Analysis?
    Schrittwieser, Sebastian
    Katzenbeisser, Stefan
    Kinder, Johannes
    Merzdovnik, Georg
    Weippl, Edgar
    ACM COMPUTING SURVEYS, 2016, 49 (01)
  • [8] PAPI software-defined events for in-depth performance analysis
    Jagode, Heike
    Danalis, Anthony
    Anzt, Hartwig
    Dongarra, Jack
    INTERNATIONAL JOURNAL OF HIGH PERFORMANCE COMPUTING APPLICATIONS, 2019, 33 (06): : 1113 - 1127
  • [9] In-Depth Analysis of Computer Memory Acquisition Software for Forensic Purposes
    McDown, Robert J.
    Varol, Cihan
    Carvajal, Leonardo
    Chen, Lei
    JOURNAL OF FORENSIC SCIENCES, 2016, 61 : S110 - S116
  • [10] Software as a service (SaaS) testing challenges-An in-depth analysis
    Prakash, V.
    Ramadoss, Ravikumar
    Gopalakrishnan, S.
    International Journal of Computer Science Issues, 2012, 9 (3 3-3): : 506 - 510