On instrumenting obfuscated java bytecode with aspects

Kung Chen, Ju-Bing Chen · 2006

Code obfuscators are widely used tools for protecting commercial Java software. Advanced obfuscation techniques make de-compiled Java programs not re-compilable, thus greatly raising the barrier of instrumenting Java bytecode for malicious purpose. However, we have found that the aspect-oriented programming language AspectJ can be abused to overcome advanced code obfuscation and to modify obfuscated Java software effectively using its bytecode instrumentation mechanism. This paper describes such issues and reports our experiment results. We argue that the simplicity and very low cost of such malicious aspects make them worth wider attention from the Java and AspectJ community.

Read the paper · More papers on PaperTik