10.7544/issn1000-1239.2017.20160094
基于QEMU的动态函数调用跟踪
函数调用一直是Linux内核分析研究领域的重点.获得函数调用信息主要有2种方法:静态分析和动态分析.动态跟踪方法可实时和准确地获取函数调用关系信息,在分析和调试软件程序时有极大的帮助作用.针对现有工具存在跟踪信息不全面、需要编译选项支持等不足,基于开源的QEMU模拟器,设计并实现了支持多种CPU平台的通用动态函数调用跟踪工具,可在x86_32,x86_64,ARM共3种体系架构上动态跟踪包括Linux内核启动过程在内的函数调用和返回信息.该工具在程序运行时截获调用和返回的指令,并记录相关信息,利用此种指令只会在QEMU翻译块的最后一条出现的性质,减少检查指令的数量,提高运行效率;可不依赖源代码,只依据函数符号表进行函数调用关系分析.实验结果表明:跟踪和分析结果与源代码行为一致,相比于S2E提升了分析性能和支持的CPU平台种类,且能更好地扩展至其他平台.
函数调用、动态跟踪、模拟器、多平台、Linux内核分析
54
TP391(计算技术、计算机技术)
"核高基"国家科技重大专项基金项目2012ZX01039-004-41,2012ZX01039-003This work was supported by the National Science and Technology Major Projects of Hegaoji 2012ZX01039-004-41,2012ZX01039-003
2017-08-28(万方平台首次上网日期,不代表论文的发表时间)
共8页
1569-1576