一种相同漏洞记录的判断方法、装置、设备及可读存储介质制造方法及图纸

技术编号:37790194 阅读:13 留言:0更新日期:2023-06-09 09:20
本申请提供了一种相同漏洞记录的判断方法、装置、设备及可读存储介质,当检测到针对目标源代码执行的漏洞扫描累积次数达到预设次数阈值时,获取最后一次漏洞扫描得到的第一漏洞记录表;其中,次数阈值为大于1的正整数;构建第一漏洞记录表中目标漏洞记录的第一数字指纹;将第一数字指纹与预设数字指纹列表进行匹配;其中,预设数字指纹列表包括倒数第二次漏洞扫描得到的所有漏洞记录的数字指纹;当匹配结果为预设数字指纹列表中存在与第一数字指纹相同的第二数字指纹时,确定目标漏洞记录和第二数字指纹对应的漏洞记录相同。通过本申请方案的实施,可以有效提高判断过程中的程序运行效率。运行效率。运行效率。

【技术实现步骤摘要】
一种相同漏洞记录的判断方法、装置、设备及可读存储介质


[0001]本申请涉及漏洞检测
,尤其涉及一种相同漏洞记录的判断方法、装置、设备及可读存储介质。

技术介绍

[0002]静态应用程序安全测试(Static Application Security Testing)技术,简称SAST,通常用于在编码阶段分析应用程序的源代码或二进制文件的语法、结构、过程、接口等,以发现程序代码存在的安全漏洞。同一个软件项目在不断迭代开发的过程中,针对该项目的源代码可能会存在多次的扫描记录,且SAST扫描器存在误报的情况,因此催生出一些新的需求,例如:在历史的扫描记录中,某条代码漏洞记录如果被确认为误报,那么在新的一次扫描结果中,该漏洞不应该报出来。在历史的扫描记录中,某条代码漏洞记录如果被确认,在新的一次扫描结果中依然存在的话,则该漏洞需要标识为“复发”。当前某条代码漏洞在历史的扫描记录中未曾出现,则该漏洞需要标识为“新增”。
[0003]基于以上的需求,在进行添加标识等处理操作之前,需要先进行相同漏洞记录的判断。现有的相同漏洞记录的判断方法通常为:基于预设的对比顺序依次完整地对所有漏洞特征元素进行校验,根据校验结果判断漏洞是否相同。由于一条完整的漏洞记录包含的元素比较多,直接进行匹配操作比较繁琐,因此现有的相同漏洞记录的判断方法或多或少的存在以下问题:判断条件过多,代码逻辑过于复杂,可读性不佳,容易出错;适用场景范围小,不利于后期的维护;采用层嵌套的for循环,用于判断的记录数量过多,程序运行效率不佳;在数据库表设计两张一对多关系的表来存储相关数据,数据加载出来的时候需要进行关联查询,需要加载的记录数量较多,加载速度较慢。

技术实现思路

[0004]本申请实施例的主要目的在于提供一种相同漏洞记录的判断方法、装置、设备及可读存储介质,至少能够解决相关技术中判断逻辑繁琐、程序运行效率低的问题。
[0005]为实现上述目的,本申请实施例第一方面提供了一种相同漏洞记录的判断方法,该方法包括:
[0006]当检测到针对目标源代码执行的漏洞扫描累积次数达到预设次数阈值时,获取最后一次漏洞扫描得到的第一漏洞记录表;其中,次数阈值为大于1的正整数;
[0007]构建第一漏洞记录表中目标漏洞记录的第一数字指纹;
[0008]将第一数字指纹与预设数字指纹列表进行匹配;其中,预设数字指纹列表包括倒数第二次漏洞扫描得到的所有漏洞记录的数字指纹;
[0009]当匹配结果为预设数字指纹列表中存在与第一数字指纹相同的第二数字指纹时,确定目标漏洞记录和第二数字指纹对应的漏洞记录相同。
[0010]本申请实施例第二方面提供了一种相同漏洞记录的判断装置,包括:
[0011]获取模块,用于当检测到针对目标源代码执行的漏洞扫描累积次数达到预设次数
阈值时,获取最后一次漏洞扫描得到的第一漏洞记录表;其中,次数阈值为大于1的正整数;
[0012]构建模块,用于构建第一漏洞记录表中目标漏洞记录的第一数字指纹;
[0013]匹配模块,用于将第一数字指纹与预设数字指纹列表进行匹配;其中,预设数字指纹列表包括倒数第二次漏洞扫描得到的所有漏洞记录的数字指纹;
[0014]确定模块,用于当匹配结果为预设数字指纹列表中存在与第一数字指纹相同的第二数字指纹时,确定目标漏洞记录和第二数字指纹对应的漏洞记录相同。
[0015]本申请实施例第三方面提供了一种电子设备,包括:存储器及处理器,其中,处理器用于执行存储在存储器上的计算机程序,处理器执行计算机程序时,实现上述本申请实施例第一方面提供的相同漏洞记录的判断方法中的各步骤。
[0016]本申请实施例第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时,实现上述本申请实施例第一方面提供的相同漏洞记录的判断方法中的各步骤。
[0017]由上可见,根据本申请方案所提供的一种相同漏洞记录的判断方法、装置、设备及可读存储介质,当检测到针对目标源代码执行的漏洞扫描累积次数达到预设次数阈值时,获取最后一次漏洞扫描得到的第一漏洞记录表;其中,次数阈值为大于1的正整数;构建第一漏洞记录表中目标漏洞记录的第一数字指纹;将第一数字指纹与预设数字指纹列表进行匹配;其中,预设数字指纹列表包括倒数第二次漏洞扫描得到的所有漏洞记录的数字指纹;当匹配结果为预设数字指纹列表中存在与第一数字指纹相同的第二数字指纹时,确定目标漏洞记录和第二数字指纹对应的漏洞记录相同。通过本申请方案的实施,根据每一漏洞记录的漏洞特征元素构建对应的数字指纹,在进行相同漏洞记录的判断时,只需要将相关漏洞记录的数字指纹进行对比即可确定这些漏洞记录是否相同,无需对漏洞的各个特征元素进行轮流对比判断,在确保判断准确性的前提下简化了判断逻辑,提高了判断的效率。
附图说明
[0018]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0019]图1为本申请第一实施例提供的一种相同漏洞记录的判断方法的基础流程示意图;
[0020]图2为本申请第一实施例提供的一条完整漏洞记录的UML类图;
[0021]图3为本申请第一实施例提供的一个数字指纹的构建流程示意图;
[0022]图4为本申请第二实施例提供的一种相同漏洞记录的判断方法的细化流程示意图;
[0023]图5为本申请第三实施例提供的相同漏洞记录的判断装置的程序模块示意图;
[0024]图6为本申请第四实施例提供的电子设备的结构示意图。
具体实施方式
[0025]为使得本申请的专利技术目的、特征、优点能够更加的明显和易懂,下面将结合本申请
实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而非全部实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0026]术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请实施例的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
[0027]本申请第一实施例提供了一种相同漏洞记录的判断方法,如图1为本实施例提供的相同漏洞记录的判断方法的基础流程示意图,该相同漏洞记录的判断方法包括以下的步骤:
[0028]步骤101、当检测到针对目标源代码执行的漏洞扫描累积次数达到预设次数阈值时,获取最后一次漏洞扫描得到的第一漏洞记录表。
[0029]具体的,每完成一次漏洞扫描,得到一张漏洞记录表,每张漏洞记本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种相同漏洞记录的判断方法,其特征在于,包括:当检测到针对目标源代码执行的漏洞扫描累积次数达到预设次数阈值时,获取最后一次漏洞扫描得到的第一漏洞记录表;其中,所述次数阈值为大于1的正整数;构建所述第一漏洞记录表中目标漏洞记录的第一数字指纹;将所述第一数字指纹与预设数字指纹列表进行匹配;其中,所述预设数字指纹列表包括倒数第二次漏洞扫描得到的所有漏洞记录的数字指纹;当匹配结果为所述预设数字指纹列表中存在与所述第一数字指纹相同的第二数字指纹时,确定所述目标漏洞记录和所述第二数字指纹对应的漏洞记录相同。2.根据权利要求1所述的相同漏洞记录的判断方法,其特征在于,在所述获取最后一次漏洞扫描得到的第一漏洞记录表的步骤之前,还包括:采用SAST扫描器对目标源代码进行漏洞扫描;根据扫描到的每一漏洞的漏洞特征元素,生成每一所述漏洞对应的漏洞记录;其中,所述漏洞特征元素包括漏洞记录类型ID、漏洞风险等级、漏洞爆发点源代码文件路径、漏洞爆发点源代码文件行数以及数据流节点列表,所述数据流节点列表包括数据流节点源代码文件路径、数据流节点源代码文件行数、数据流节点名称;根据生成的所有漏洞记录创建所述第一漏洞记录表,完成所述最后一次漏洞扫描。3.根据权利要求2所述的相同漏洞记录的判断方法,其特征在于,所述构建所述第一漏洞记录表中目标漏洞记录的第一数字指纹的步骤,包括:读取所述第一漏洞记录表中目标漏洞记录的所有漏洞特征元素的字符串;根据所述所有漏洞特征元素的字符串构建所述目标漏洞记录的第一数字指纹。4.根据权利要求3所述的相同漏洞记录的判断方法,其特征在于,所述根据所述所有漏洞特征元素的字符串构建所述第一数字指纹的步骤,包括:基于预设的拼接顺序将所述所有漏洞特征元素的字符串进行拼接,得到目标字符串;采用预设的散列函数对所述目标字符串进行处理得到散列值;将所述散列值确定为所述第一数字指纹。5.根据权利要求2所述的相同漏洞记录的判断方法,其特征在于,所述根据生成的所有漏洞记录创建所述第一漏洞记录表的步骤,包括:根据生成的每一漏洞记录所包含的漏洞特征元素对所述所有漏洞记录进行分类;将分类后的漏洞记录分别存储于预设漏洞记录表中的不同位置,得到所述第一漏洞记录表。6.根据权利要求5所述的相同漏洞记录的判断方法,其特征在于,在所述将分类后的漏洞记录分别存储于预设漏洞记录表中的不同位置,得到所述第...

【专利技术属性】
技术研发人员:陆庆尚万振华王颉徐瑞祝
申请(专利权)人:深圳开源互联网安全技术有限公司
类型:发明
国别省市:

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

1