Enhanced Branch Obfuscation Based on Exception Handling and Encrypted Mapping Table
Reverse analysis will lead to the problems of software crack,theft and tamper,where the control flow analysis will reveal the pro-gram execution logic.The conditional jump instruction contains the branch conditions and targets,and as the breaking point of control flow analysis,it will easily expose some significant branch information of the program.Based on the exception handling mech-anism and encrypted mapping table,this paper proposes a enhanced branch obfuscation,which first introduces the exception code to replace the conditional jump instructions and then constructs the exception handlers to restore execution according to the mapping relation between the branch conditions and targets.Furthermore as supplement and perfect,the method rearranges the basic blocks and inserts some redundant blocks to increase the difficulty against reverse analysis.The method is evaluated from three aspects of va-lidity,space cost and time cost.Finally the experiment results show that the branch obfuscation has a good protection performance and can resist static and dynamic analysis,and also it has an acceptable performance of space and time cost.
Software protection Branch obfuscation Exception handling Map-ping table
Fei Xiang Daofu Gong Chunfang Yang Fenlin Liu
Zhengzhou Science and Technology Institute Zhengzhou,China
国际会议
2019国图灵大会(ACM Turing Celebration conference-China 2019 )
成都
英文
851-859
2019-05-17(万方平台首次上网日期,不代表论文的发表时间)