DocumentCode
173195
Title
Obfuscation by code fragmentation to evade reverse engineering
Author
Balachandran, Vivek ; Emmanuel, Sabu ; Ng Wee Keong
Author_Institution
Sch. of Comput. Eng., Nanyang Technol. Univ., Singapore, Singapore
fYear
2014
fDate
5-8 Oct. 2014
Firstpage
463
Lastpage
469
Abstract
Software distributed can be reverse engineered using software analyzing tools, thereby letting an adversary understand the logic of the program and finding the vulnerabilities in the program. Control flow obfuscation is one of the techniques that can obscure the program so that the reverse engineering tools get an erroneous result while analyzing the program. In this paper, we propose a binary obfuscation algorithm that makes it difficult to reverse engineer the programs. The basic idea is to fragment the binary code by moving instruction sets from various parts of the program to a new code block. The control flow, to and from the new code block, is camouflaged using dynamic instruction modification during runtime. Experimental results indicate that the algorithm performs well against reverse engineering attacks by standard tools.
Keywords
logic programming; program diagnostics; reverse engineering; software tools; source code (software); binary code fragmentation; binary obfuscation algorithm; code block; control flow obfuscation; dynamic instruction modification; instruction sets; program logic; program obfuscation; program vulnerabilities; reverse engineering attacks; reverse engineering tools; software analyzing tools; software distribution; Algorithm design and analysis; Assembly; Educational institutions; Heuristic algorithms; Reverse engineering; Software; Visualization;
fLanguage
English
Publisher
ieee
Conference_Titel
Systems, Man and Cybernetics (SMC), 2014 IEEE International Conference on
Conference_Location
San Diego, CA
Type
conf
DOI
10.1109/SMC.2014.6973951
Filename
6973951
Link To Document