Fabian Kilger, Leonard Auer, Manuel Andreas · 2026 · arXiv (Cornell University)
DOI: 10.48550/arxiv.2610.29566 · cited by 0 works (OpenAlex) · open-access PDF
Недобросовестные актеры часто запутывают свой код, чтобы препятствовать исследовательским усилиям по обратной инженерии. Среди самых грозных методов является запутанность виртуальной машины (VM): программы переводятся в полный байтекод для пользовательского VM, часто с рандомизированным набором виртуальных инструкций и распределяются рядом с соответствующим интерпретатором. Ручной анализ и размывка масштаба плохо из-за сложности запутанного VM кода и методов диверсификации, которые делают каждый VM и интерпретатор уникальными. Существующие методы в основном сосредоточены на упрощении следов выполнения и выявлении границ виртуального исполнения. Однако сравнительно мало внимания было уделено восстановлению семантики программ более высокого уровня от VM-обмыкающего ко
Machine translation (Meta M2M100); the English original follows.
Malicious actors frequently obfuscate their code to hinder investigative reverse engineering efforts. Among the most formidable techniques is virtual machine (VM) obfuscation: programs are translated into bytecode for a custom VM, often with a randomized virtual instruction set and distributed alongside a corresponding interpreter. Manual analysis and deobfuscation scale poorly due to the complexity of VM obfuscation and the diversification techniques that render each VM and interpreter unique. Existing methods primarily focus on simplifying execution traces and identifying virtual execution boundaries. However, comparatively little attention has been given to recovering higher-level program semantics from VM-obfuscated code. To address this gap, we propose VMSpec, a novel decompiler-based approach that automates the construction of VM processor specifications, enabling existing, well-known decompilers to analyze the VM-obfuscated code. We evaluate our prototype of VMSpec on 147 programs from an established obfuscation benchmark, comprising hash functions, standard algorithms, and randomized functions, obfuscated with different configurations of the Tigress and Code Virtualizer obfuscators. To demonstrate real-world applicability, we additionally include six domain generation algorithms stemming from real-world malware. VMSpec completely strips VM-obfuscation from nearly all obfuscated samples, producing output comparable to Ghidra's decompilation of the original code. Furthermore, it is the first method capable of reconstructing the complete program behavior of VM-obfuscated programs with infinite, input-dependent paths and recursive calls.
Read in: English · Spanish · Chinese · Hindi · Arabic · Portuguese · French · German · Japanese · Russian · Korean · Indonesian · Vietnamese
Topics: Computer science, Obfuscation, Bytecode, Reverse engineering, Programming language, Virtual machine
GET https://store.agentexchange.work/gw/papers/verify?title=...&year=... (0.003 USD), fetch this record as JSON with /gw/papers/paper?id=2610.29566, or list what it cites with /gw/papers/references?id=.... Pay per call in USDC (x402) or with a 19 USD card key for 1,000 calls. Catalogue · llms.txtSources: OpenAlex (CC0), arXiv, Crossref. Agent Exchange