[发明专利]结合神经网络基于函数与分支覆盖的漏洞检测方法在审
申请号: | 202110766564.6 | 申请日: | 2021-07-07 |
公开(公告)号: | CN113569252A | 公开(公告)日: | 2021-10-29 |
发明(设计)人: | 王丹琛;徐鹏;李志辉;郭伟;吴贯锋;彭浩 | 申请(专利权)人: | 四川省信息安全测评中心 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F11/36;G06N3/04;G06N3/08 |
代理公司: | 成都厚为专利代理事务所(普通合伙) 51255 | 代理人: | 王杰 |
地址: | 610000 四川*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 结合 神经网络 基于 函数 分支 覆盖 漏洞 检测 方法 | ||
本发明公开了一种结合神经网络基于函数与分支覆盖的漏洞检测方法,包括:S1.获取要执行漏洞检测的待测程序;S2.对待测程序进行模糊测试,并在模糊测试过程中监测函数与分支的覆盖信息;S3.判断是否存在未覆盖的函数与分支,若存在未覆盖的函数与分支,则执行S4,否则执行S7;S4.利用混合符号执行探索未覆盖的函数与分支,以及求解未覆盖的函数与分支;S5.利用混合符合执行生成新的测试用例;S6.利用所述新的测试用例更新模糊测试的测试用例,执行S2;S7.结束漏洞检测。本发明通过结合模糊测试与符号执行的优点,提高了代码覆盖率,进一步增强了漏洞挖掘能力。
技术领域
本发明涉及软件系统安全性检测领域,特别是涉及一种结合神经网络基于函数与分支覆盖的漏洞检测方法。
背景技术
随着信息技术的发展,软件已经渗透到现代社会的方方面面,且软件规模和复杂度日益增加,然而由于开发不当引入的软件漏洞使得其安全性越发受到重视。在当今社会,软件安全性涉及国计民生的各个行业,软件安全漏洞隐患可造成无法弥补的严重后果。软件漏洞挖掘是保障软件安全性的有效技术手段,高覆盖率、高效率的漏洞挖掘方法可以有效减少漏洞隐患。
软件漏洞可以认为是隐藏在程序中的错误语句,通过提升测试用例的代码覆盖率可以提高软件漏洞的检测概率,软件漏洞挖掘致力于为待测程序生成高覆盖率的测试用例以发现软件漏洞,当被测程序配套的测试用例覆盖率高且均执行通过时,则认为该程序在一定程度上具有高可靠性。
目前被广泛研究与使用的挖掘技术是基于覆盖率引导的模糊测试与符号执行。
模糊测试是一种自动化或者半自动化的软件测试技术,动态执行目标程序, 通过构造随机的、非预期的畸形数据作为程序的输入,并基于覆盖率选择已有测试用例进行随机变异(mutation)从而生成新的测试用例,该过程将不断被重复,直到不能覆盖到更多的分支或语句为止.在动态执行测试用例时,如果检测到异常崩溃(crash)则认为发现漏洞。模糊测试是当前挖掘漏洞最有效的方法,比其他漏洞挖掘技术更能应对复杂的程序,具有可扩展性好的优势。但在大规模漏洞分析测试中,模糊测试方法仍然依赖于种子输入的质量,依赖于对测试输入对象格式的深度理解和定制,存在测试冗余、测试攻击面模糊、测试路径盲目性较高等问题。
符号执行是通过使用符号值代替具体值作为程序输入,并用符号表达式来表示与符号值相关的程序变量的值。其首要目标是在符号化输入的条件下,生成所有跟输入变量有关的程序执行路径所对应的具体输入,或是在规定时间内尽可能多地生成具体输入。混合执行(concolic execution)是结合具体执行与符号执行的一种动态符号执行,用具体输入执行程序,在程序运行的过程中,通过程序插桩手段收集路径约束条件,按顺序搜索程序路径,利用约束求解器求解上一执行中收集到的约束集,从而得到下一次执行的测试用例;在下一次执行结束后,按一定的策略选择其中某一分支判断点进行约束取反,得到新的约束集,再用约束求解器对其进行求解,得到下一执行的测试用例。如此反复,可以避免执行重复路径,从而以尽可能少的测试集达到高测试覆盖的目的。符号执行可以避免冗余测试输入的产生,但是依赖于约束求解器的求解能力和效率,并受限于程序状态爆炸问题。
发明内容
本发明的目的在于克服现有技术的不足,提供一种结合神经网络基于函数与分支覆盖的漏洞检测方法。
本发明的目的是通过以下技术方案来实现的:结合神经网络基于函数与分支覆盖的漏洞检测方法,包括:
S1.获取要执行漏洞检测的待测程序;
S2.对待测程序进行模糊测试,并在模糊测试过程中监测函数与分支的覆盖信息;
S3.判断是否存在未覆盖的函数与分支,若存在未覆盖的函数与分支,则执行S4,否则执行S7;
S4.利用混合符号执行探索未覆盖的函数与分支,以及求解未覆盖的函数与分支;
S5.利用混合符合执行生成新的测试用例;
S6.利用所述新的测试用例更新模糊测试的测试用例,执行S2;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川省信息安全测评中心,未经四川省信息安全测评中心许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110766564.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种提高合金钢机械性能的工艺方法
- 下一篇:凝血分析仪