[发明专利]一种基于排序学习的代码漏洞误报检测方法在审
申请号: | 202111471775.3 | 申请日: | 2021-11-30 |
公开(公告)号: | CN114139159A | 公开(公告)日: | 2022-03-04 |
发明(设计)人: | 房春荣;葛修婷;葛宇;陈振宇 | 申请(专利权)人: | 南京大学 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F21/57 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 210093 江苏省南京市*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 排序 学习 代码 漏洞 检测 方法 | ||
一种基于排序学习的代码漏洞误报检测方法,其特征是结合代码漏洞静态分析工具findbugs获取标记正报和误报漏洞报告以及对提取相应报告的软件度量准则;然后根据pair‑wise的排序学习模型构建一个代码漏洞误报检测模型;随后利用置信度最低策略选取部分报告通过众包平台分配给众包安全专家审核;最后,结合众包安全评审专家结果,并将其持续反馈到代码漏洞检测模型中,进行迭代式的模型训练,使得正报漏洞报告排序到误报漏洞报告之前,进而达到有效检测代码漏洞误报的目的。
技术领域
本发明属于软件工程领域,尤其是安全领域在软件工程领域的应用,用于对代码漏洞静态分析工具结果的正报和误报漏洞的过滤。
背景技术
在早期的软件开发阶段中,代码漏洞静态分析工具能够自动检测代码漏洞和脆弱性,这些工具在代码的缺陷和异常检测中展示了其重要性和实用性。然而,代码漏洞静态分析工具难以在有限时间内判定抽象路径的可达性,因此它们基于保守地过近似原理对代码漏洞进行检测,进而导致这些工具存在较高的误报率。误报的漏洞会降低开发人员审核代码漏洞或修复代码漏洞的效率,进而增加代码漏洞检测的人力和物力成本,因此,如何有效地减少代码漏洞的误报成为了代码漏洞安全检测领域的关注点。
为了减少代码漏洞静态扫描工具的误报率,最常使用的方法是对这些工具产生的报告进行二次过滤。目前基于二次过滤的代码漏洞误报检测方法大致包括两种方法:一种方法是基于排序的代码漏洞误报过滤,即通过对代码漏洞静态分析工具产生的报告漏洞进行排序,并将正报的漏洞排列在误报漏洞的前面,旨在为了开发人员能够更快速的识别被测代码中存在的漏洞。另一种方法是分类,即通过代码漏洞静态分析工具产生的报告进行特征提取,然后基于机器学习模型和统计模型对这些工具产生的报告进行正报和误报漏洞的分类。
根据不同的排序模型,基于排序的代码漏洞误报检测方法大致可分为三类:第一类是基于一次排序的代码漏洞误报检测方法,根据某种排序策略,对代码漏洞静态扫描工具产生的报告进行整体排序;第二类是基于自适应的代码漏洞误报检测方法,此方法需要结合反馈机制,根据反馈的结果对初始的排序结果进行动态的调整和更新,因此此方法需要对代码漏洞静态扫描工具产生的报告进行多次排序;第三类方法是基于排序学习的代码漏洞误报检测方法,即首先提取代码漏洞静态扫描工具产生的报告中的特征,根据排序学习模型自动学习并对代码漏洞静态扫描工具产生的结果进行概率分配,再根据概率进行报告排序。
虽然上述方法能在一定程度上能够减少代码漏洞检测方法的误报率,但是由于这些方法缺乏领域知识,因此现有的代码误报检测模型在误报漏洞的识别上仍然是不够的。由此可见,结合众包安全专家的领域只是,利用基于排序学习的代码漏洞误报检测方法针对代码漏洞误报检测模型进行进一步的研究是很有必要的。
发明内容
本发明要解决的问题是:提出一种基于排序学习的代码漏洞误报检测方法,进而改善现有代码漏洞误报检测模型效果不佳的问题。
本发明的技术方案为:一种基于排序学习的代码漏洞误报检测方法,包括以下步骤:
1)根据代码漏洞静态分析工具findbugs对代码进行扫描,针对findbugs产生进行人工标记和审核,进而获得正报和误报漏洞数据集;
2)对步骤1)中得到的正报和误报漏洞数据集进行特征提取,主要包括以下步骤:
2.1)根据软件准则提取工具,对代码进行函数级别的圈复杂度、halstead度量、代码行数、循环嵌套数量、分支数量等软件准则度量特征提取;
2.2)根据收集到的正报和误报漏洞数据集,根据漏洞代码行定位到每个正报和误报漏洞的具体函数;
2.3)将步骤2.1)和步骤2.2)进行函数映射,以得到每个正报和误报漏洞的软件度量等特征;
2.4)对步骤2.3)产生的特征进行归一化和特征选择等预处理;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111471775.3/2.html,转载请声明来源钻瓜专利网。