Protecting Java code via code obfuscation
Crossroads - Speical issue on robotics
An Empirical Study of Method In-lining for a Java Just-in-Time Compiler
Proceedings of the 2nd Java Virtual Machine Research and Technology Symposium
Covert Java: Techniques for Decompiling, Patching, and Reverse Engineering
Covert Java: Techniques for Decompiling, Patching, and Reverse Engineering
Proceedings of the 3rd international conference on Aspect-oriented software development
Advanced obfuscation techniques for Java bytecode
Journal of Systems and Software
Overcoming the obfuscation of Java programs by identifier renaming
Journal of Systems and Software
Krakatoa: decompilation in java (dose bytecode reveal source?)
COOTS'97 Proceedings of the 3rd conference on USENIX Conference on Object-Oriented Technologies (COOTS) - Volume 3
Open modules: modular reasoning about advice
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
Introduction to software engineering for secure systems: SESS06 -- secure by design
Proceedings of the 2006 international workshop on Software engineering for secure systems
Hi-index | 0.00 |
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.