Simplifying Mixed Boolean-Arithmetic Obfuscation by Program Synthesis and Term Rewriting

被引:1
|
作者
Lee, Jaehyung [1 ]
Lee, Woosuk [1 ]
机构
[1] Hanyang Univ, Dept Comp Sci & Engn, Ansan, South Korea
基金
新加坡国家研究基金会;
关键词
Program Synthesis; Mixed Boolean Arithmetic Obfuscation; Term Rewriting;
D O I
10.1145/3576915.3623186
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Mixed Boolean Arithmetic (MBA) obfuscation transforms a program expression into an equivalent but complex expression that is hard to understand. MBA obfuscation has been popular to protect programs from reverse engineering thanks to its simplicity and effectiveness. However, it is also used for evading malware detection, necessitating the development of effective MBA deobfuscation techniques. Existing deobfuscation methods suffer from either of the four limitations: (1) lack of general applicability, (2) lack of flexibility, (3) lack of scalability, and (4) lack of correctness. In this paper, we propose a versatile MBA deobfuscation method that synergistically combines program synthesis, term rewriting, and an algebraic simplification method. The key novelty of our approach is that we perform on-the-fly learning of transformation rules for deobfuscation, and apply them to rewrite the input MBA expression. We implement our method in a tool called ProMBA and evaluate it on over 4000 MBA expressions obfuscated by the state-of-the-art obfuscation tools. Experimental results show that our method outperforms the state-of-the-art MBA deobfuscation tool by a large margin, successfully simplifying a vast majority of the obfuscated expressions into their original forms.
引用
收藏
页码:2351 / 2365
页数:15
相关论文
共 11 条
  • [1] MBA-Blast: Unveiling and Simplifying Mixed Boolean-Arithmetic Obfuscation
    Liu, Binbin
    Shen, Junfu
    Ming, Jiang
    Zheng, Qilong
    Li, Jing
    Xu, Dongpeng
    PROCEEDINGS OF THE 30TH USENIX SECURITY SYMPOSIUM, 2021, : 1701 - 1718
  • [2] On Simplifying Mixed Boolean-Arithmetic Expressions
    Kosolapov, Yu. V.
    AUTOMATIC CONTROL AND COMPUTER SCIENCES, 2024, 58 (07) : 836 - 852
  • [3] Formal Verification of a Program Obfuscation Based on Mixed Boolean-Arithmetic Expressions
    Blazy, Sandrine
    Hutin, Remi
    PROCEEDINGS OF THE 8TH ACM SIGPLAN INTERNATIONAL CONFERENCE ON CERTIFIED PROGRAMS AND PROOFS (CPP' 19), 2019, : 196 - 208
  • [4] Software Obfuscation with Non-Linear Mixed Boolean-Arithmetic Expressions
    Liu, Binbin
    Feng, Weijie
    Zheng, Qilong
    Li, Jing
    Xu, Dongpeng
    INFORMATION AND COMMUNICATIONS SECURITY (ICICS 2021), PT I, 2021, 12918 : 276 - 292
  • [5] Mixed Boolean-Arithmetic (MBA) Obfuscation Using Permutation Polynomials on Modular Lipschitz Integers
    Wang, Sichun
    2024 IEEE CANADIAN CONFERENCE ON ELECTRICAL AND COMPUTER ENGINEERING, CCECE 2024, 2024, : 405 - 411
  • [6] Simplification of General Mixed Boolean-Arithmetic Expressions: GAMBA
    Reichenwallner, Benjamin
    Meerwald-Stadler, Peter
    2023 IEEE EUROPEAN SYMPOSIUM ON SECURITY AND PRIVACY WORKSHOPS, EUROS&PW, 2023, : 427 - 438
  • [7] Information hiding in software with mixed boolean-arithmetic transforms
    Zhou, Yongxin
    Main, Alec
    Gu, Yuan X.
    Johnson, Harold
    INFORMATION SECURITY APPLICATIONS, 2007, 4867 : 61 - 75
  • [8] An In-Place Simplification on Mixed Boolean-Arithmetic Expressions
    Liu, Binbin
    Zheng, Qilong
    Li, Jing
    Xu, Dongpeng
    SECURITY AND COMMUNICATION NETWORKS, 2022, 2022
  • [9] NeuReduce: Reducing Mixed Boolean-Arithmetic Expressions by Recurrent Neural Network
    Feng, Weijie
    Liu, Binbin
    Xu, Dongpeng
    Zheng, Qilong
    Xu, Yun
    FINDINGS OF THE ASSOCIATION FOR COMPUTATIONAL LINGUISTICS, EMNLP 2020, 2020, : 635 - 644
  • [10] Optimizing Homomorphic Evaluation Circuits by Program Synthesis and Term Rewriting
    Lee, DongKwon
    Lee, Woosuk
    Oh, Hakjoo
    Yi, Kwangkeun
    PROCEEDINGS OF THE 41ST ACM SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION (PLDI '20), 2020, : 503 - 518