一种漏洞有效性预测的方法和系统技术方案

技术编号:25949361 阅读:27 留言:0更新日期:2020-10-17 03:41
本发明专利技术提出了一种漏洞有效性预测的方法和系统,该方法包括通过新增、修改或者删除配置重新定义漏洞有效性等级;通过制定的判断漏洞有效性等级的规则对代码安全扫描结果进行有效性等级判定;将有效果等级判定的结果展示在代码安全扫描结果中。本发明专利技术中漏洞有效性等级的内容为漏洞误报的程度,以及对漏洞误报的程度进行分级。基于本发明专利技术提出的一种漏洞有效性预测的方法,还提出了一种漏洞有效性预测的系统,本发明专利技术在激进型漏洞扫描结果的基础上,对漏洞的有效性进行预测,这里的有效性指的是对于扫描出来的漏洞,根据有效性规则进行判断,判断漏洞是否为误报,从而将漏洞按照有效性进行分类展示,便于进行漏洞分析,提升分析效率。

【技术实现步骤摘要】
一种漏洞有效性预测的方法和系统
本专利技术涉及代码安全扫描和概率统计
,特别涉及一种漏洞有效性预测的方法和系统。
技术介绍
代码安全扫描指的是通过特定的规则,对代码进行安全漏洞检查的一种方法,通过该方法可以发现代码中存在的安全漏洞,并提供修改建议,在开发过程中即可发现安全漏洞并进行修改。传统代码安全扫描的技术已经存在,并且相对成熟,如图1给出了现有技术中代码扫描方法。无论是保守型的扫描还是激进型的扫描都会扫描出漏洞,并按照漏洞的严重程度进行高中低(或者称为致命、严重、一般等)等级别进行分类,并且有的扫描工具也会根据代码文件、目录等进行分类,但是之所以存在保守型以及激进型的区别,关键就在于对于漏洞判定的严格程度,保守型的对于漏洞判定严格,这样漏洞的准确性就会高一些,但是会存在漏洞漏报的情况;激进型的发现的漏洞多,势必会造成大量的误报,这样会导致后期在分析漏洞的时候投入大量的精力。传统的漏洞严重程度的分类无论是激进型还是保守型的都是认为扫描出来的都是漏洞,在这个基础上进行的漏洞等级分类。
技术实现思路
为了解决上述技术问题,本专利技术提出了一种漏洞有效性预测的方法和系统,通过对代码安全扫描结果根据规则进行有效性检测输出漏洞有效性等级,提升漏洞分析效率。为实现上述目的,本专利技术提出了一种漏洞有效性预测的方法,该方法包括以下步骤:通过新增、修改或者删除配置重新定义漏洞有效性等级;通过制定的判断漏洞有效性等级的规则对代码安全扫描结果进行有效性等级判定;将有效果等级判定的结果展示在代码安全扫描结果中。进一步的,所述漏洞有效性等级的内容为漏洞误报的程度,以及对漏洞误报的程度进行分级。进一步的,所述通过新增、修改或者删除配置,重新定义漏洞有效性等级包括:对注释中扫描出的漏洞,有效性判定为误报;未提供依赖库的函数,有效性判定为误报;在代码中扫描出的漏洞,有效性判定为高;将代码有效性的等级进行反向配置。进一步的,对于输入值校验相关的漏洞,首先判断输入值来源;如果输入值来自函数本身,则漏洞的有效性判定为非误报;如果输入值引用未发现的函数,则漏洞的有效性判定为误报。进一步的,所述在有效性等级判定之后,所述判定标识跟随扫描结果进行持久化。进一步的,所述代码安全扫描结果包括在页面或者窗口中可见部分的扫描结果和在页面或者窗口中不可见却存在有效性等级标识的扫描结果。本专利技术还提出了一种漏洞有效性预测的系统,包括有效性规则制定模块、有效性规则匹配模块和有效性结果展示模块;所述有效性规则制定模块用于通过新增、修改或者删除配置重新定义漏洞有效性等级;所述有效性规则匹配模块用于根据有效性规则制定模块制定的判断漏洞有效性的规则对代码安全扫描结果进行有效性等级判定;所有有效性结果展示模块用于将有效果等级判断的结果展示在代码安全扫描结果中。进一步的,所述有效性规则制定模块包括:第一判定模块、第二判定模块、第三判定模块和配置模块;所述第一判定模块用于对注释中扫描出的漏洞,有效性判定为误报;所述第二判定模块用于对未提供依赖库的函数,有效性判定为误报;所述第三判定模块用于在代码中扫描出的漏洞,有效性判定为高;所述配置模块用于将代码有效性的等级进行反向配置。进一步的,所述有效性规则制定模块还包括第四判定模块;所述第四判定模块用于对于输入值校验相关的漏洞,首先判断输入值来源;如果输入值来自函数本身,则漏洞的有效性判定为非误报;如果输入值引用未发现的函数,则漏洞的有效性判定为误报。
技术实现思路
中提供的效果仅仅是实施例的效果,而不是专利技术所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:本专利技术提出了一种漏洞有效性预测的方法和系统,该方法包括通过新增、修改或者删除配置重新定义漏洞有效性等级;通过制定的判断漏洞有效性等级的规则对代码安全扫描结果进行有效性等级判定;将有效果等级判定的结果展示在代码安全扫描结果中。本专利技术中漏洞有效性等级的内容为漏洞误报的程度,以及对漏洞误报的程度进行分级。对注释中扫描出的漏洞,有效性判定为误报;未提供依赖库的函数,有效性判定为误报;在代码中扫描出的漏洞,有效性判定为高;将代码有效性的等级进行反向配置。对于输入值校验相关的漏洞,首先判断输入值来源;如果输入值来自函数本身,则漏洞的有效性判定为非误报;如果输入值引用未发现的函数,则漏洞的有效性判定为误报。基于本专利技术提出的一种漏洞有效性预测的方法,还提出了一种漏洞有效性预测的系统,本专利技术在激进型漏洞扫描结果的基础上,对漏洞的有效性进行预测,这里的有效性指的是对于扫描出来的漏洞,根据有效性规则进行判断,判断漏洞是否为误报,从而将漏洞按照有效性进行分类展示,便于进行漏洞分析,提升分析效率。附图说明图1是现有技术中代码扫描方法;图2是本专利技术实施例1中提出的一种漏洞有效性预测的方法流程图;图3是本专利技术实施例1提出的的一种漏洞有效性预测的系统示意图。具体实施方式为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本专利技术进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本专利技术的不同结构。为了简化本专利技术的公开,下文中对特定例子的部件和设置进行描述。此外,本专利技术可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本专利技术省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本专利技术。本专利技术实施例公开了一种漏洞有效性预测的方法和系统,在激进型漏洞扫描结果的基础上,对漏洞的有效性进行预测,根据有效性规则进行判断,判断漏洞是否为误报,从而将漏洞按照有效性进行分类展示,便于进行漏洞分析,提升分析效率。如图1给出了一种漏洞有效性预测的方法流程图。在步骤S101中,通过新增、修改或者删除配置重新定义漏洞有效性等级;有效性级别区别于传统的漏洞级别,传统的漏洞级别指的是漏洞的严重程度,及漏洞的危害程度,都是在判定漏洞有效的基础上进行的严重程度分级。本专利技术中的有效性级别指的是漏洞是否为误报的程度。对注释中扫描出的漏洞,有效性判定为误报;未提供依赖库的函数,有效性判定为误报;在代码中扫描出的漏洞,有效性判定为高;将代码有效性的等级进行反向配置。首先不同的编码语言具有各自的规则,例如注释在不同语言中,写法是各不相同的,所以在不同语言中对于注释的判断具有各自的方法:Python:单行注释以#开头多行注释用三个单引号”'或者三个双引号"""将注释括起来Java:单行注释,以双斜杠“//”标识,只能注释一行内容多行注释,包含在“/*”和“*/”之间,能注释多行的内容文档注释,包含在“/**”和“*/”之间,也能注释多行内容,一般用在类、方法本文档来自技高网
...

【技术保护点】
1.一种漏洞有效性预测的方法,其特征在于,包括以下步骤:/n通过新增、修改或者删除配置重新定义漏洞有效性等级;/n通过制定的判断漏洞有效性等级的规则对代码安全扫描结果进行有效性等级判定;/n将有效果等级判定的结果展示在代码安全扫描结果中。/n

【技术特征摘要】
1.一种漏洞有效性预测的方法,其特征在于,包括以下步骤:
通过新增、修改或者删除配置重新定义漏洞有效性等级;
通过制定的判断漏洞有效性等级的规则对代码安全扫描结果进行有效性等级判定;
将有效果等级判定的结果展示在代码安全扫描结果中。


2.根据权利要求1所述的一种漏洞有效性预测的方法,其特征在于,所述漏洞有效性等级的内容为漏洞误报的程度,以及对漏洞误报的程度进行分级。


3.根据权利要求1所述的一种漏洞有效性预测的方法,其特征在于,所述通过新增、修改或者删除配置,重新定义漏洞有效性等级包括:
对注释中扫描出的漏洞,有效性判定为误报;
未提供依赖库的函数,有效性判定为误报;
在代码中扫描出的漏洞,有效性判定为高;
将代码有效性的等级进行反向配置。


4.根据权利要求3所述的一种漏洞有效性预测的方法,其特征在于,对于输入值校验相关的漏洞,首先判断输入值来源;如果输入值来自函数本身,则漏洞的有效性判定为非误报;如果输入值引用未发现的函数,则漏洞的有效性判定为误报。


5.根据权利要求1所述的一种漏洞有效性预测的方法,其特征在于,所述在有效性等级判定之后,所述判定标识跟随扫描结果进行持久化。


6.根据权利要求1所述的一种漏洞有效性预测的方法,其特征在于,所述代码安全扫描结果包括在页...

【专利技术属性】
技术研发人员:张忠伟
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1