[发明专利]使用控制变异的模糊测试覆盖率改进方法有效

专利信息
申请号: 201710331793.9 申请日: 2017-05-12
公开(公告)号: CN107193731B 公开(公告)日: 2020-10-27
发明(设计)人: 潘丽敏;宋言言;罗森林;李师伟;曹伟 申请(专利权)人: 北京理工大学
主分类号: G06F11/36 分类号: G06F11/36
代理公司: 暂无信息 代理人: 暂无信息
地址: 100081 *** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 使用 控制 变异 模糊 测试 覆盖率 改进 方法
【说明书】:

发明涉及提高模糊测试覆盖率的测试用例控制变异生成方法,属于信息安全的漏洞挖掘领域。本发明针对目前优化模糊测试覆盖率方法时间代价高、测试范围不完整和自动化程度低等问题,提出一种控制变异生成测试用例的方法。本方法利用插桩技术对测试用例生成过程进行反馈,结合随机变异和控制变异方式优化测试用例生成。实验结果表明,相比于未优化的模糊测试方法,方法使代码覆盖率提高了35%~47%,相同代码覆盖率下所需测试用例数减少了48%以上。方法不但提高了测试用例覆盖率和减小了测试用例冗余,而且具有时间代价低、测试范围完整和测试过程无需人工干预的特点。

技术领域

本发明涉及一种提高模糊测试覆盖率的测试用例控制变异生成方法,属于信息安全的漏洞挖掘领域。

背景技术

近几年来,伴随着计算机网络的发展,信息化的概念已被人们熟知,网络信息更是无处不在,网络信息技术在国民经济和国防建设中的应用越来越广泛深入,因此,承载网络信息的软件的安全性变得尤为重要。但是随着软件系统日益庞大,功能日益复杂,再加上软件从业人员安全知识不足,以及编程语言自身的安全缺陷,导致软件的安全漏洞层出不穷。在我们的生活中,经常可以听到这样的报道:某网站受到黑客攻击;某计算机系统受到攻击,造成客户数据丢失;目前又出现某计算机病毒,已扩散到全球……这些安全漏洞直接影响人们的工作和生活,侵害国民利益,甚至危害国家安全。因此,在危害发生前挖掘软件漏洞并进行修补,已经成为软件开发周期中不可或缺的重要一环。

目前为大家所熟知的漏洞挖掘技术包括补丁对比分析、面向二进制的符号执行、污点跟踪和模糊测试。其中,模糊测试技术是一种应用非常广泛的漏洞挖掘技术,它的原理是通过向目标应用程序注入畸形或意外数据,使之发生崩溃或异常行为来发现漏洞。因此模糊测试技术的核心问题是如何生成有效的畸形数据,其中高覆盖率是模糊测试有效性的重要标准。

当前比较主流的测试用例生成方法有两种,即基于规范的生成方法和基于变异的生成方法。其中基于规范的生成方法效果最好,覆盖率高,冗余度低,但是其致命缺点是在协议规范未知的情况下便无法进行数据建模,显然大部分的软件的协议规范不可能公开,因此此方法有很大的局限性。基于变异的生成方法比纯粹随机的变异生成方法有一定改善,但测试效率仍十分低下,覆盖率和冗余度均不理想。针对该问题,业界已经出现的优化方法有程序控制流分析、符号执行技术、污点跟踪与分析技术和遗传算法等。符号执行存在路径爆炸和复杂约束求解问题,难以应用到复杂软件上的测试。污点跟踪与分析技术每次只对个别路径进行测试,并且其原理导致很难做到测试的自动化;遗传算法可生成漏洞检测能力较强的测试用例,但是在用例生成与选择过程中付出高昂的时间代价。

综上分析,现有的优化模糊测试覆盖率的方法普遍存在时间代价高、测试范围不完整和自动化程度低的问题。针对这些问题,本发明将提出一种有效的模糊测试用例控制变异方法,可大大提高模糊测试覆盖率,实现快速、全面的自动化模糊测试。

发明内容

本发明的目的是:针对目前优化模糊测试覆盖率方法时间代价高、测试范围不完整和自动化程度低等问题,提出一种控制变异生成测试用例的方法,使用简单高效的控制变异方法来增加代码覆盖率,无需进行大量的分析与计算,并在保证代码覆盖率的前提下,实现整体方案的自动化。

本发明的设计原理为:

考虑到程序中对数据的一种常见处理方法,即使用数值作为程序进入某个分支的判断条件。当测试用例因为变异到达某个程序分支,如果保持该变异字段的信息并声明为不可变异,将该测试用例作为种子测试用例,待到下次以该种子用例进行变异生成测试用例,将能够控制模糊测试在该探索到的新分支内进行进一步的测试。本发明使用插桩技术监控测试用例的执行路径,当有新分支出现后,记录该不可变异字段信息,控制模糊测试的变异范围。

本发明的技术方案是通过如下步骤实现的:

步骤1,提取目标程序可解析的合法文件作为初始用例,随机变异生成测试用例。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京理工大学,未经北京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201710331793.9/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top