A Systematic Study of Code Obfuscation Against LLM-based Vulnerability Detection
By: Xiao Li , Yue Li , Hao Wu and more
Potential Business Impact:
Makes AI better at finding hidden computer bugs.
As large language models (LLMs) are increasingly adopted for code vulnerability detection, their reliability and robustness across diverse vulnerability types have become a pressing concern. In traditional adversarial settings, code obfuscation has long been used as a general strategy to bypass auditing tools, preserving exploitability without tampering with the tools themselves. Numerous efforts have explored obfuscation methods and tools, yet their capabilities differ in terms of supported techniques, granularity, and programming languages, making it difficult to systematically assess their impact on LLM-based vulnerability detection. To address this gap, we provide a structured systematization of obfuscation techniques and evaluate them under a unified framework. Specifically, we categorize existing obfuscation methods into three major classes (layout, data flow, and control flow) covering 11 subcategories and 19 concrete techniques. We implement these techniques across four programming languages (Solidity, C, C++, and Python) using a consistent LLM-driven approach, and evaluate their effects on 15 LLMs spanning four model families (DeepSeek, OpenAI, Qwen, and LLaMA), as well as on two coding agents (GitHub Copilot and Codex). Our findings reveal both positive and negative impacts of code obfuscation on LLM-based vulnerability detection, highlighting conditions under which obfuscation leads to performance improvements or degradations. We further analyze these outcomes with respect to vulnerability characteristics, code properties, and model attributes. Finally, we outline several open problems and propose future directions to enhance the robustness of LLMs for real-world vulnerability detection.
Similar Papers
"Digital Camouflage": The LLVM Challenge in LLM-Based Malware Detection
Cryptography and Security
Computers can't spot hidden computer viruses.
The Code Barrier: What LLMs Actually Understand?
Software Engineering
Tests if computers truly understand tricky code.
Empirical Assessment of the Code Comprehension Effort Needed to Attack Programs Protected with Obfuscation
Cryptography and Security
Makes software harder to hack and steal.