[发明专利]一种结合符号执行提高软件模糊测试效率的方法有效
申请号: | 201810689118.8 | 申请日: | 2018-06-28 |
公开(公告)号: | CN108845944B | 公开(公告)日: | 2021-10-15 |
发明(设计)人: | 董威;徐鲁杭;尹良泽;贾维熙;陈振邦;陈立前;王戟 | 申请(专利权)人: | 中国人民解放军国防科技大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 湖南兆弘专利事务所(普通合伙) 43008 | 代理人: | 周长清;胡君 |
地址: | 410073 湖南*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开一种结合符号执行提高软件模糊测试效率的方法,步骤包括:S1.对目标程序进行预处理,获取目标程序的信息;S2.向目标程序输入模糊测试器生成测试用例,并检测程序是否发生异常;S3.基于路径覆盖率构建调度参数,计算模糊测试过程中调度参数,判断模糊测试器的状态,如果处于低速状态,转入步骤S4,如果处于高速状态,返回步骤S2,如果处于停滞状态,退出测试;S4.识别模糊测试过程中未遍历的分支,构建未遍历的程序路径,使用符号执行方法生成有效测试用例以激发模糊测试器至高速状态,如果无法生成且为停滞状态,退出测试。本发明具有实现原理简单、漏洞挖掘性能好且效率高、误报率低以及使用灵活、可靠等优点。 | ||
搜索关键词: | 一种 结合 符号 执行 提高 软件 模糊 测试 效率 方法 | ||
【主权项】:
1.一种结合符号执行提高软件模糊测试效率的方法,其特征在于,步骤包括:S1.预处理:对目标程序进行包括反汇编、插桩的预处理,获取目标程序的包括汇编代码、控制流图CFG的信息;S2.模糊测试:向目标程序输入模糊测试器生成测试用例,并检测程序是否发生异常,如果发生程序异常记录对应的测试用例;S3.基于路径覆盖率的调度:基于模糊测试过程中的路径覆盖率构建用于调度的调度参数,计算所述步骤S2的模糊测试过程中所述调度参数,根据计算得到的所述调度参数判断模糊测试器的状态,如果处于低速状态,转入执行步骤S4,如果处于高速状态,返回执行步骤S2,如果处于停滞状态,判定已遍历目标程序的所有可达路径,退出测试;S4.测试用例生成:识别模糊测试过程中未遍历的分支,并根据识别到的分支构建模糊测试未遍历的程序路径,对构建的程序路径使用符号执行方法生成有效测试用例以激发模糊测试器至高速状态,如果无法生成有效测试用例且模糊测试器为停滞状态,判定已遍历目标程序的所有可达路径,退出测试。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201810689118.8/,转载请声明来源钻瓜专利网。
- 上一篇:一种判断软件测试阶段性完成的方法及系统
- 下一篇:应用测试优化方法及装置