Home   >   CSC-OpenAccess Library   >    Manuscript Information
Full Text Available

This is an Open Access publication published under CSC-OpenAccess Policy.
Publications from CSC-OpenAccess Library are being accessed from over 74 countries worldwide.
Dynamic Multi Levels Java Code Obfuscation Technique (DMLJCOT)
Adwan Fakhri Yasin, Ihab Nasra
Pages - 140 - 160     |    Revised - 31-08-2016     |    Published - 01-10-2016
Volume - 10   Issue - 4    |    Publication Date - October 2016  Table of Contents
Software Obfuscation, Reverse Engineering, Byte Code, Java Reflection, De-compiler.
Several obfuscation tools and software are available for Java programs but larger part of these software and tools just scramble the names of the classes or the identifiers that stored in a bytecode by replacing the identifiers and classes names with meaningless names. Unfortunately, these tools are week, since the java, compiler and java virtual machine (JVM) will never load and execute scrambled classes. However, these classes must be decrypted in order to enable JVM loaded them, which make it easy to intercept the original bytecode of programs at that point, as if it is not been obfuscated. In this paper, we presented a dynamic obfuscation technique for java programs. In order to deter reverse engineers from de-compilation of software, this technique integrates three levels of obfuscation, source code, lexical transformation and the data transformation level in which we obfuscate the data structures of the source code and byte-code transformation level. By combining these levels, we achieved a high level of code confusion, which makes the understanding or decompiling the java programs very complex or infeasible. The proposed technique implemented and tested successfully by many Java de-compilers, like JV, CAVJ, DJ, JBVD and AndroChef. The results show that all decompiles are deceived by the proposed obfuscation technique.
1 Google Scholar 
2 refSeek 
3 Scribd 
4 SlideShare 
5 PdfSR 
1 J.T. Chan and W. Yang, "Advanced obfuscation techniques for java bytecode," Journal of systems and software, Vol. 71, 2004.
2 J.M. Memon, S. Arfeen, A. Mughal, F. Memon, "Preventing Reverse Engineering Threat in Java Using Byte Code Obfuscation Techniques". 2nd International Conference on Emerging Technologies, IEE, Peshawar, Pakistan 13-14 November 2006.
3 M. Popa, "Techniques of Program Code Obfuscation for Secure Software. Journal of Mobile, Embedded and Distributed Systems, vol. III, no. 4, 2011, ISSN 2067 - 4074.
4 F. BUZATU, "Methods for Obfuscating Java Programs. Journal of Mobile, Embedded and Distributed Systems, vol. IV, no. 1, 2012,ISSN 2067-4074
5 V. Balachandran and S. Emmanuel, "Software Code Obfuscation by Hiding Control Flow". IEEE, 978-1-4577-1019-3/11/$26.00, 2011.
6 X. Yao, J. Pang, Y. Zhang, Y. Yu, J. Lu, "A Method and implementation of control flow obfuscation using SEH". Fourth International Conference on Multimedia Information Networking and Security, IEEE, 978-0-7695-4852-4/12 $26.00, 2012
7 I. Popov, S. Debray, and G. Andrews, "Binary obfuscation using signals," in Proc. of 16th USENIX Security Symposium on USENIX Security Symposium table of contents, USENIX Association Berkely, CA, USA, 2007.
8 M. Madou, B. Anckaert, P. Moseley, S. Debray, B. De Sutter, K. De Bosschere, "Software Protection Through Dynamic Code Mutation, "LECTURE NOTES IN COMPUTER SCIENCE 3786, 2006, 194.
9 W. Dingab, Z. Gua, F. Gaoa, "Reconstruction of Data Type in Obfuscated Binary Programs". ICACT, ISBN 978-89-968650-3-2, 2014.
10 S. Andrivet, "C++11 metaprogramming applied to software obfuscation". Black Hat Europe conference, Amsterdam ,2014
11 W. Miao, J. Broberg and J. Siek, "Compile-time Reflection and Metaprogramming for Java". ACM, 978-1-4503-2619-3/14/01. . . $15.00,2014
12 É. Tanter a, R. Toledo a, G. Pothier a, J. Noyéb, "Flexible metaprogramming and AOP in Java". Science of Computer Programming 72 (2008) 22-30.
13 M. Garci, "Runtime metaprogramming via java.lang.invoke.MethodHandle". LAMP, EPFL, 2012, http://lamp.epfl.ch/~magarcia.
14 J. MacBride, C. Mascioli, S. Marks, Y. Tang, L.M. Head, and R., P. Ramachandran. "A COMPARATIVE STUDY OF JAVA OBFUSCATORS". Proceeding of the Nith IASTED International Conference SOFTWARE ENGENEERING AND APPLICATION, November 14-16, 2005, Phoenix, AZ, USA.
15 N. Jeenjun S. Khuntaweetep and S. Somkuarnpanit. "Byte code Interpreter for 8051 Microcontroller". Proceeding of the International Multi Conference of Engineers and Computer Scientists, 2010 Vol II, IMECS 2010, March 17-19, 2010, Hong King.
16 E. E. Ogheneovo and C.K. Oputeh, "Source Code Obfuscation: A Technique for Checkmating Software Reverse Engineering". International Journal of Engineering Science Invention ISSN (Online): 2319-6734, ISSN (Print): 2319-6726 www.ijesi.org Volume 3 Issue 5? May 2014 ? PP.01-10.
17 S. Treadwell, M. Zhou, "A Heuristic Approach for Detection of Obfuscated Malware". 978-1- 4244-4173-0/09/$25.00. © 2009 IEEE.
18 F. BUZATU, "Methods for Obfuscating Java Programs". Journal of Mobile, Embedded and Distributed Systems, vol. IV, no. 1, 2012, ISSN 2067-4074
19 P. Sivadasan, P .S. Lal, N. Sivadasan, "JConstHide: A Framework for Java Source Code Constant Hiding". Journal of Information Assurance and Security 4 (2009) 21-29.
20 I. Welch and R. J. Stroud, "Kava - A Reflective Java based on Bytecode Rewriting",ACM, Proceedings of the 1st OOPSLA Workshop on Reflection and Software Engineering: Reflection and Software Engineering, Papers from OORaSE 1999, Pages 155-167 Springer-Verlag London, ISBN:3-540-67761-5,200.
21 L. Ertaul and S.Venkatesh. "Novel Obfuscation Algorithms for Software Security". Proceedings of the 2005 International Conference on Software Engineering Research and Practice, SERP'05, June, Las Vegas, June, (2005).
23 H.Chen, L.Yuan, B.Huang, P.Yew. "Control Flow Obfuscation with Information Flow Tracking", MICRO 42 Proceedings of the 42nd Annual IEEE/ACM International Symposium on Microarchitecture,Pages 391-400 , ACM New York, NY, USA (2009).
24 S.Schrittwieser and S.Katzenbeisser. "Code Obfuscation against Static and Dynamic Reverse Engineering", IH'11 Proceedings of the 13th international conference on Information hiding,Pages 270-284 ,Springer-Verlag Berlin, Heidelberg (2011).
Associate Professor Adwan Fakhri Yasin
Arab American University - Palestinian Occupied Territori
Mr. Ihab Nasra
Arab American University - Palestinian Occupied Territori