Nytro Posted May 23, 2013 Report Posted May 23, 2013 Mimimorphism: A New Approach to Binary Code ObfuscationZhenyu Wu, Steven Gianvecchio, Mengjun Xie, and Haining Wang AbstractBinary obfuscation plays an essential role in evading malware staticanalysis and detection. The widely used code obfuscation techniques,such as polymorphism and metamorphism, focus on evadingsyntax based detection. However, statistic test and semanticanalysis techniques have been developed to thwart their evasionattempts. More recent binary obfuscation techniques are dividedin their purposes of attacking either statistical or semanticapproach, but not both. In this paper, we introduce mimimorphism,a novel binary obfuscation technique with the potential of evadingboth statistical and semantic detections. Mimimorphic malwareuses instruction-syntax-aware high-order mimic functions to transformits binary into mimicry executables that exhibit high similarityto benign programs in terms of statistical properties and semanticcharacteristics. We implement a prototype of the mimimorphic engineon the Intel x86 platform, and evaluate its capability of evadingstatistical anomaly detection and semantic analysis detectiontechniques. Our experimental results demonstrate that the mimicryexecutables are indistinguishable from benign programs in termsof byte frequency distribution and entropy, as well as control flowfingerprint. Full paper (387 KB) appeared in Proceedings of the 17th ACM Conference on Computer and Communications Security (CCS'10).http://www.cs.wm.edu/~adamwu/Mimimorphism_CCS10/Mimimorphic.pdf Download Presentation slides (for PowerPoint 2007+, 1.12 MB)http://www.cs.wm.edu/~adamwu/Mimimorphism_CCS10/ZhenyuWu_CCS2010_Mimimorphism.pptx Experimental data 7th order 100 mimimorphic instances (bz2 tar package, 127 MB)http://www.cs.wm.edu/~hnw/Mimimorphic/MimicOrder7.tar.bz2 8th order 100 mimimorphic instances (bz2 tar package, 169 MB)http://www.cs.wm.edu/~hnw/Mimimorphic/MimicOrder8.tar.bz2 Note: These mimimorphic instances are NOT standalone executables. They are the mimimorphic payloads, which consist of sequences of mimicry instructions that encode a piece of randomized data. In a standalone mimimorphic executable, if we were to make one, each piece of payload will be merged with the decoder binary and put into the ".text" section of the executable. Maintained by: Zhenyu WuLast modified: Mon Apr 30 18:16:22 EDT 2012Sursa: Mimimorphism: A New Approach to Binary Code Obfuscation Quote