obfFuzz: Empirical Study to Boost Fuzzing the Obfuscated Software
Code obfuscation is a well-known method of protecting proprietary software against reverse engineering. Although obfuscation is beneficial, it alters the program’s control and data flow. Thus, systematic control and data flow alteration significantly affect the quality of the binaries, especially from the point of view of fuzzing testing. Although these modifications can introduce bugs in the program, there is still a lack of clear understanding of how implementing an obfuscation algorithm degrades the quality of fuzzing obfuscated software.This paper proposes obfFuzz, the first empirical study to reveal and understand the challenges behind the fuzzing of obfuscated software. Our study begins by fuzzing the unobfuscated binaries and comparing the results with obfuscated binaries. We chose the most popular fuzzing technique, AFL++. It is interesting because of its approach to combining mutation-based test case generation with code coverage metrics, which is the most affected component, by applying obfuscation transformation techniques. We have evaluated our tool on four real-world programs (pdfinfo, exif, tiffinfo, and md2roff). Our study revealed several findings: 1) Control flow obfuscation makes the code more complex, significantly decreasing the percentage of code coverage by $\mathbf{6 0 \%}$ compared to the original code. 2) Due to data flow obfuscation, we have inefficient mutations during fuzzing, so it takes $\mathbf{7 0 \%}$ more time to expose crashes than in the unobfuscated code with the same constraints. 3) Applying obfuscation techniques increases the program code size and decreases execution speed, giving us inefficient fuzzing results for the obfuscated binary. 4) Our observation shows that fuzzing an obfuscated binary is inefficient. Obfuscation transformations add more complexity, degrading the resultant binary and introducing buggy code.
Authors
- Kawkab Aldoshan
Institutions
- University of Georgia (US)
Publication Details
- Published
- 2024-12-27
- DOI
- https://doi.org/10.1109/icctit64404.2024.10928491
- Primary Topic
- Advanced Malware Detection Techniques
- Type
- article
- Field-Weighted Citation Impact
- 0.00