USENIX Security2017Top-tier venue
Predicting the Resilience of Obfuscated Code Against Symbolic Execution Attacks via Machine Learning
Sebastian Banescu, Christian S. Collberg, Alexander Pretschner
Abstract
Software obfuscation transforms code such that it is more difficult to reverse engineer. However, it is known that given enough resources, an attacker will successfully reverse engineer an obfuscated program. Therefore, an open challenge for software obfuscation is estimating the time an obfuscated program is able to withstand a given reverse engineering attack. This paper proposes a general framework for choosing the most relevant software features to estimate the effort of automated attacks. Our framework uses these software features to build regression models that can predict the resilience of different software protection transformations against automated attacks. To evaluate the effectiveness of our approach, we instantiate it in a case-study about predicting the time needed to deobfuscate a set of C programs, using an attack based on symbolic execution. To train regression models our system requires a large set of programs as input. We have therefore implemented a code generator that can generate large numbers of arbitrarily complex random C functions. Our results show that features such as the number of community structures in the graphrepresentation of symbolic path-constraints, are far more relevant for predicting deobfuscation time than other features generally used to measure the potency of controlflow obfuscation (e.g. cyclomatic complexity). Our best model is able to predict the number of seconds of symbolic execution-based deobfuscation attacks with over 90% accuracy for 80% of the programs in our dataset, which also includes several realistic hash functions.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 16a474fb-4bfb-4fc8-ab25-2016dce72adeCited by top-tier papers5
- VMHunt: A Verifiable Approach to Partially-Virtualized Binary Code SimplificationDongpeng Xu, Jiang Ming, Yu Fu, Dinghao WuCCS 2018 · 60 citations
- "Get in Researchers; We're Measuring Reproducibility": A Reproducibility Study of Machine Learning Papers in Tier 1 Security ConferencesDaniel Olszewski, Allison Lu, Carson Stillman, Kevin Warren et al.CCS 2023 · 19 citations
- Control-Flow Deobfuscation using Trace-Informed Compositional Program SynthesisBenjamin Mariano, Ziteng Wang, Shankara Pailoor, Christian S. Collberg et al.OOPSLA 2024 · 5 citations
- Inspecting Virtual Machine Diversification Inside Virtualization ObfuscationNaiqian Zhang, Dongpeng Xu, Jiang Ming, Jun Xu et al.S&P 2025
- Loki: Hardening Code Obfuscation Against Automated AttacksMoritz Schloegel, Tim Blazytko, Moritz Contag, Cornelius Aschermann et al.USENIX Security 2022
Related papers
- Large Language Models for Opaque Predicate Resolution: A Universal Control Flow Deobfuscation FrameworkXiao Chen, Qiuyun Wang, Shuwei Wang, Weize Zhang et al.FSE 2026
- Boosting symbolic execution via constraint solving time prediction (experience paper)Sicheng Luo, Hui Xu, Yanxiang Bi, Xin Wang et al.ISSTA 2021 · 12 citations
- Generating Adversarial Computer Programs using Optimized ObfuscationsShashank Srikant, Sijia Liu, Tamara Mitrovska, Shiyu Chang et al.ICLR 2021 · 61 citations
- FeatMaker: Automated Feature Engineering for Search Strategy of Symbolic ExecutionJaehan Yoon, Sooyoung ChaFSE 2024 · 3 citations
- Search-Based Local Black-Box Deobfuscation: Understand, Improve and MitigateGrégoire Menguy, Sébastien Bardin, Richard Bonichon, Cauim de Souza LimaCCS 2021 · 15 citations
