首页 | 本学科首页   官方微博 | 高级检索  
     

基于混合分析的二进制程序控制流图构建方法
引用本文:朱凯龙,陆余良,黄晖,邓兆琨,邓一杰.基于混合分析的二进制程序控制流图构建方法[J].浙江大学学报(自然科学版 ),2019,53(5):829-836.
作者姓名:朱凯龙  陆余良  黄晖  邓兆琨  邓一杰
作者单位:国防科技大学 电子对抗学院,安徽 合肥 230000
摘    要:构建控制流图(CFG)是二进制程序分析的基础工作,针对静态构建方法无法处理间接跳转,动态构建方法效率低、不适用于大规模程序的问题,提出结合静态分析和动态分析的混合分析方法. 使用静态分析获得基础的控制流信息;采用模糊测试生成测试用例以进行动态分析,利用动态插桩获得间接跳转信息;融合静态分析和动态分析结果生成控制流图. 基于该混合分析方法,设计并实现了面向x86平台二进制程序的控制流图构建工具CFGConstructor. 分别在示例程序和CGC数据集上进行实验,评估该工具的有效性和性能. 实验结果表明CFGConstructor相比于静态分析能够构建更加完备的控制流图,相比于动态分析分析效率更高,能够适用于大规模程序.

关 键 词:二进制程序分析  控制流图(CFG)  混合分析技术  模糊测试  动态二进制插桩  

Construction approach for control flow graph from binaries using hybrid analysis
Kai-long ZHU,YU-liang LU,Hui HUANG,Zhao-kun DENG,Yi-jie DENG.Construction approach for control flow graph from binaries using hybrid analysis[J].Journal of Zhejiang University(Engineering Science),2019,53(5):829-836.
Authors:Kai-long ZHU  YU-liang LU  Hui HUANG  Zhao-kun DENG  Yi-jie DENG
Abstract:The construction of control flow graph (CFG) was the basis of binary program analysis. A hybrid analysis approach combining static and dynamic analysis techniques was proposed, for the problems that the static construction method cannot handle the indirect jump cases and dynamic construction methods were inefficient and not suitable for large-scale programs. The static analysis technique was used to obtain the basic control flow of the target program. Test cases generated by fuzz testing were used to dynamically analyze the target program, during which a dynamic binary instrumentation technique was used to obtain information of indirect jumps. Finally, the analysis results in the former two steps were integrated to generate CFGs. A CFG construction system CFGConstructor targeting on x86 binaries was designed and implemented based on the proposed hybrid analysis method. Experiments were carried out on the sample programs and CGC dataset to evaluate the effectiveness and efficiency. Results show that the proposed approach can construct more complete CFGs than static analysis do, and is more efficient than dynamic analysis, capable to analyze large programs.
Keywords:binary analysis  control flow graph (CFG)  hybrid analysis technology  fuzz testing  dynamic binary instrumentation  
本文献已被 CNKI 等数据库收录!
点击此处可从《浙江大学学报(自然科学版 )》浏览原始摘要信息
点击此处可从《浙江大学学报(自然科学版 )》下载全文
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号