[发明专利]一种分段式符号执行方法有效
申请号: | 201810819763.7 | 申请日: | 2018-07-24 |
公开(公告)号: | CN109002723B | 公开(公告)日: | 2021-09-07 |
发明(设计)人: | 胡昌振;马锐;窦伯文;王龙;高浩然 | 申请(专利权)人: | 北京理工大学 |
主分类号: | G06F21/57 | 分类号: | G06F21/57 |
代理公司: | 北京理工大学专利中心 11120 | 代理人: | 高燕燕 |
地址: | 100081 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 段式 符号 执行 方法 | ||
本发明采用一种分段式符号执行方法,对程序段进行粗粒度划分,并采用各程序段独立执行的方式对程序进行符号化分析,以改进目前的符号执行工具针对大规模程序进行分析以及现有分段式符号执行顺序分析方法的分析效率和分析准确度。一种分段式符号执行方法,通过聚类方法将程序划分为较大的多个程序段,进而对各程序段进行独立符号执行,然后将各个程序段的符号执行结果进行合并,完成对整个程序的分析。
技术领域
本发明属于信息安全中的漏洞挖掘技术领域,具体涉及一种分段式符号执行方法。
背景技术
符号执行是一种通过使用符号值代替具体值进行软件漏洞检测的工具,它可以通过分析路径约束的方式来检测程序的错误。符号执行已经成为查找程序中错误和安全漏洞的有效技术之一,它已被微软等主要软件公司用于安全测试和质量保证。符号执行通常通过获取程序执行的路径并进行路径取反的方式来测试程序,其目标是通过计算程序逻辑表达式来代替人工分析代码的方式,提高程序的分析效率和测试覆盖率。虽然符号执行的路径树过于复杂可能会导致路径爆炸问题,但由于其路径约束可以进行计算,因此可以获得其他检测技术,例如模糊测试,等技术得不到的路径,从而可以有效地发现一些特殊错误。在实践中,这种方式也得到了应用,符号执行已经成为软件错误分析和安全漏洞检查的一种重要技术。
目前有很多符号执行工具,比如angr、KLEE、JPF等。
angr是由加州大学圣巴巴拉分校开发的二进制自动化分析工具,并在其中实现了目前流行的符号执行技术,具备对二进制程序的动静态符号分析能力。angr起初是用来寻找程序中的后门,现在可以应用于软件分析领域。
KLEE是由斯坦福大学开发的使用符号执行技术构造程序测试用例的工具。KLEE在分析程序构造测试用例的同时,也利用符号执行和约束求解技术在关键的程序点上对符号的取值范围进行分析,检查是否在安全范围内。
JPF是NASA的一个针对JAVA字节码程序的开源符号执行工具,它能够提供完整的符号执行功能,包括输入变量符号化、基本路径约束的生成以及程序路径搜索等功能。
这些工具作为目前流行的符号执行工具,在程序分析方面具有较好的实用性,但它们都存在着相同的弊病。它们在分析大型程序时都存在着路径爆炸和分析效率较低的问题,这将会导致巨大的开销。
分段式符号执行是将程序分为多个段进行分析,目前也有研究人员进行了相关研究,与本发明相类似的方法有Xiao Q,Chen Y,Wu C,et al.pbSE:Phase-Based SymbolicExecution[C]//IEEE/IFIP International Conference on Dependable Systems andNetworks.IEEE,2017:133-144;范文庆.分段符号执行模型及其环境交互问题研究[D].北京邮电大学,2010。但是,这些方法存在着一些问题。第一,这些方法主要是为了解决外部过程的分析问题,而不是处理符号执行中的路径爆炸问题;第二,这些方法主要是基于函数对程序进行划分,通常会划分出过多的程序段,而过多分段会严重隔断各程序段之间的数据联系,从而导致程序执行状态信息缺失,进而使得符号执行的分析结果不准确;第三,这些方法都是采用顺序方式对程序段进行符号执行,各个程序段执行之间有着先后顺序关系以及相应的状态数据,不能明显提升符号执行的效率。
发明内容
针对上述不足,本发明采用一种分段式符号执行方法,对程序段进行粗粒度划分,并采用各程序段独立执行的方式对程序进行符号化分析,以改进目前的符号执行工具针对大规模程序进行分析以及现有分段式符号执行顺序分析方法的分析效率和分析准确度。
本发明通过以下技术方案实现:
一种分段式符号执行方法,通过聚类方法将程序划分为较大的多个程序段,进而对各程序段进行独立符号执行,然后将各个程序段的符号执行结果进行合并,完成对整个程序的分析。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京理工大学,未经北京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810819763.7/2.html,转载请声明来源钻瓜专利网。