一种基于PoC载荷库的漏洞扫描工具增强方法和系统与流程
未命名
08-03
阅读:94
评论:0

一种基于poc载荷库的漏洞扫描工具增强方法和系统
技术领域
1.本发明涉及poc载荷库管理技术领域,特别涉及一种基于poc载荷库的漏洞扫描工具增强方法和系统。
背景技术:
2.在信息安全里,漏洞的概念验证程序poc(proof of concept)是指针对一个漏洞的一段说明或一个攻击的样例,以确认此漏洞是真实存在的。漏洞利用exp(exploit)是一段对漏洞如何利用的详细说明或一段实现漏洞的攻击代码,可以使得读者完全了解漏洞的机理以及利用的方法。有效载荷(payload)指漏洞利用成功之后,真正在目标系统执行的代码或指令。针对汽车安全漏洞编写poc,可以加快漏洞测试速度,同时也可以在漏洞发现时批量检测车辆及其组件的漏洞情况。智能网联汽车漏洞poc载荷库对漏洞利用poc载荷进行了收集,与公共漏洞和披露cve(common vulnerabilities and exposures)兼容,包含已公开和未公开的汽车安全漏洞的poc载荷,供汽车行业渗透测试人员和漏洞研究人员使用。
3.近几年汽车行业安全攻击事件频发,由于汽车厂商或零部件供应商对于汽车安全漏洞的修复速度赶不上汽车安全漏洞挖掘的速度,每天都有新的汽车漏洞产生,但厂商或供应商却无法及时去修补已产生的漏洞,造成了较大的损失。汽车厂商或零部件供应商汽车安全知识储备不足、安全技术力量缺失,而大量汽车安全漏洞poc和exp却掌握在少数安全厂商和个人黑客手中,行业安全信息不流动,这些问题都导致了安全资源的不对等,汽车漏洞无法及时被修补。同时汽车行业漏洞挖掘人员不足,漏洞验证周期长,人工工作时间长、量大,也是行业普遍存在的问题。并且目前常见的poc漏洞验证框架、poc平台都是针对常见的web漏洞,缺少专门针对汽车行业的poc载荷库。并且,目前存在的汽车poc载荷库缺乏完善、合理的管理体系,尤其是针对用户对poc载荷库的poc载荷的更新和管理,缺乏有效的手段。
技术实现要素:
4.针对以上问题,本发明提出一种基于poc载荷库的漏洞扫描工具增强方法和系统,所述方法具体包括如下步骤:s1.第一用户在漏洞扫描工具系统界面中输入poc载荷数据的poc文件,并由漏洞扫描工具系统进行验证;s2.第一用户在所述漏洞扫描工具系统界面中输入poc载荷数据的漏洞利用步骤;s3.将所述poc载荷数据存储至漏洞扫描工具系统的存储空间中,并设置每个poc载荷数据的标识号;s4.根据聚类算法调整所述漏洞扫描工具系统的存储空间中的poc载荷数据之间的关联度数值;s5.当第二用户查询所述poc载荷数据时,根据所述标识号匹配所述第二用户查询的poc载荷数据。
5.进一步地,所述步骤s1第一用户在漏洞扫描工具系统界面中输入poc载荷数据的poc文件,并由漏洞扫描工具系统进行验证,具体包括如下步骤:s11.第一用户在漏洞扫描工具系统界面中上传poc文件;s12.漏洞扫描工具系统根据汽车漏洞专业词汇表中的关键词,提取步骤s11中第一用户上传的poc文件中的关键词,并统计所述关键词的词频;所述汽车漏洞专业词汇表中存储多个汽车漏洞关键词;s13.漏洞扫描工具系统获取系统中存储的第一poc载荷数据表,并提取所述第一poc载荷数据表中各行所对应的cve编码、poc文件、poc文件关键词、poc文件关键词词频;所述第一poc载荷数据表中每行对应一条poc载荷数据,其中每行存储poc载荷数据的如下内容:cve编码、poc载荷数据名称、poc文件、poc文件关键词、poc文件关键词词频、poc载荷数据的漏洞利用路径;s14.漏洞扫描工具系统将步骤s12中提取的第一用户上传的poc文件中的关键词和关键词的词频分别与步骤s13中提取的所述各行所对应的poc文件关键词、poc文件关键词词频进行对比,获得多个第一对比结果;所述第一对比结果为相似度数值;s15.对所述第一对比结果从高至低进行排序,获得所述相似度数值最大的第一对比结果;s16.当相似度数值最大的第一对比结果小于预设阈值时,漏洞扫描工具系统在界面中将步骤s11中第一用户输入上传的poc文件反馈给第三用户,第三用户在漏洞扫描工具系统中输入第一判定结果;所述第一判定结果为同意poc载荷数据上传或不同意poc载荷数据上传;s17.当所述相似度值最大的第一对比结果大于等于预设阈值,或者当所述相似度值最大的第一对比结果小于预设阈值并且所述第一判定结果为同意poc载荷数据上传时,将步骤s14中获得的多个第一对比结果按照从高至低排序的前3位第一对比结果所对应的三个poc文件分别与步骤s11中所述第一用户上传的poc文件进行语义相似度对比,获得三个第二对比结果;所述第二对比结果为语义相似度数值;s18.根据步骤s17中获得的三个poc文件所对应的三个第一对比结果和三个第二对比结果,获得三个第三对比结果;将所述三个第三对比结果按照数值大小由高至低排序,获得数值最大的第三对比结果所对应的poc文件;s19.漏洞扫描工具系统在第一poc载荷数据表中获取步骤s18中所述数值最大的第三对比结果所对应的poc文件对应的cve编码,并根据所述cve编码所对应的poc载荷数据的漏洞利用路径,在第二poc载荷数据表中获取多个漏洞利用步骤;所述第二poc载荷数据表中存储各poc载荷数据的漏洞利用步骤及其编号;s19a.漏洞扫描工具系统获取步骤s19中获得的cve编码所在的聚类集合,并获得所述聚类集合中的其他多个cve编码所对应的多个poc载荷数据的多个漏洞利用路径,并根据所述多个漏洞利用路径,在第二poc载荷数据表中获取每个漏洞利用路径对应的多个漏洞利用步骤;
所述聚类集合中存储多个cve编码。
6.进一步地,所述步骤s17中根据步骤s16中获得的三个poc文件所对应的三个第一对比结果和三个第二对比结果,获得三个第三对比结果,具体包括:针对每个poc文件所对应的第一对比结果和第二对比结果,按照如下方式计算获得第三对比结果:其中,为第三对比结果,为第一对比结果,为第二对比结果;、分别为第一权重值、第二权重值。
7.进一步地,所述步骤s2第一用户在所述漏洞扫描工具系统界面中输入poc载荷数据的漏洞利用步骤,具体包括,在步骤s19之后,还包括如下步骤:s21.第一用户在漏洞扫描工具系统中输入待填报的漏洞利用步骤的名称,漏洞扫描工具系统将用户输入的名称存储至临时存储空间中;s22.漏洞扫描工具系统在其系统界面中显示步骤s19中获得的多个漏洞利用步骤{}的第一个步骤;其中为所述步骤s19中获得的多个漏洞利用步骤的第i个步骤;n为所述步骤s19中获得的多个漏洞利用步骤的步骤个数;s23. 第一用户对漏洞扫描工具系统界面中显示的当前漏洞利用步骤进行确认,当第一用户确认为匹配时,则将所述当前漏洞利用步骤在第二poc载荷数据表中对应的编号存储至所述临时存储空间中,并将所述编号写在步骤s21中的所述名称之后的编号序列中,同时,在漏洞扫描工具系统界面中显示所述当前漏洞利用步骤的下一个漏洞利用步骤,重复执行步骤s23,直至第一用户确认为不匹配;当第一用户确认当前漏洞利用步骤为不匹配时,执行步骤s24;s24.漏洞扫描工具系统获取当前漏洞利用步骤的上一个漏洞利用步骤;漏洞扫描工具系统在步骤s19a中获得的所述其他多个cve编码对应的多个漏洞利用路径,并在每个漏洞利用路径对应的多个漏洞利用步骤中查找是否存在与步骤一致的漏洞利用步骤,如存在,则将查找到的漏洞利用步骤所在的漏洞利用路径中的下一个漏洞利用步骤显示在漏洞扫描工具系统的界面中;如不存在,则由第一用户在漏洞扫描工具系统的界面中输入漏洞利用步骤的内容,漏洞扫描工具系统将所述用户输入的漏洞利用步骤的内容插入至第二poc载荷数据表中,并设置所述插入的漏洞利用步骤的编号,将所述编号写入至临时存储空间中,并将所述编号写在所述名称之后的编号序列中;重复执行步骤s22至步骤s24,直至第一用户完成poc载荷数据的所有漏洞利用步骤的输入。
8.进一步地,所述步骤s24中所述在将查找到的漏洞利用步骤所在的漏洞利用路
径中的下一个漏洞利用步骤显示在漏洞扫描工具系统的界面中之后,还包括:将漏洞利用步骤所在的漏洞利用路径对应的cve编码与步骤s19中获取的cve编码之间的关联度数值增长10%。
9.进一步地,所述步骤s3将所述poc载荷数据存储至漏洞扫描工具系统的存储空间中,并设置每个poc载荷数据的标识号,具体包括如下步骤:s31. 漏洞扫描工具系统在第一poc载荷数据表中增加一条poc载荷数据,将步骤s24中所述临时存储空间中的所述名称作为增加的一条poc载荷数据中的poc载荷数据名称,将所述名称之后的编号序列作为增加的一条poc载荷数据的poc载荷数据的漏洞利用路径;s32.漏洞扫描工具系统为增加的一条poc载荷数据设置cve编码,并将设置的cve编码写入至第一poc载荷数据表中该条新增加的poc载荷数据的cve编码字段中;所述设置每个poc载荷数据的标识号为设置cve编码;s33.漏洞扫描工具系统将步骤s1中输入的该条新增加的poc载荷数据对应的poc文件,以及由漏洞扫描工具系统在步骤s12中提取的poc文件关键词、poc文件关键词词频写入到该新增加的poc载荷数据在第一poc载荷数据表中的对应字段中;s34.漏洞扫描工具将步骤s32中设置的cve编码添加至步骤s19a所述的聚类集合中,并将步骤s32中设置的cve编码与步骤s19a所述的聚类集合中的其他cve编码的关联度数值设置为初始数值10%。
10.进一步地,步骤s4根据聚类算法调整所述漏洞扫描工具系统的存储空间中的poc载荷数据之间的关联度数值,具体包括如下步骤:s41.当聚类集合中的cve编码的数量超过预设阈值m时,将该超过预设阈值m的聚类集合,采用聚类算法重新进行聚类,以拆分成两个或多个聚类集合。
11.本发明还提出了一种基于poc载荷库的漏洞扫描工具增强系统,所述系统包括显示装置,所述显示装置上显示系统界面,第一用户在所述系统界面中输入poc载荷数据,所述系统执行如下方法:s1.第一用户在漏洞扫描工具系统界面中输入poc载荷数据的poc文件,并由漏洞扫描工具系统进行验证;s2.第一用户在所述漏洞扫描工具系统界面中输入poc载荷数据的漏洞利用步骤;s3.将所述poc载荷数据存储至漏洞扫描工具系统的存储空间中,并设置每个poc载荷数据的标识号;s4.根据聚类算法调整所述漏洞扫描工具系统的存储空间中的poc载荷数据之间的关联度数值;s5.当第二用户查询所述poc载荷数据时,根据所述标识号匹配所述第二用户查询的poc载荷数据。
12.本发明的有益效果如下:1.本发明采用第一poc载荷数据表和第二poc载荷数据表对poc载荷数据进行存储,并且在第二poc载荷数据表中每条漏洞利用步骤均可重复使用,也即该种对poc载荷数据的存储方式能够使得存在相同漏洞利用步骤的不同poc载荷数据仅存储一条漏洞利用步
骤即可,避免漏洞利用步骤的重复存储,极大减小了poc载荷数据的存储空间;2.本发明采用关键词和词频对第一用户上传的poc文件进行一次验证,以避免第一用户对非汽车行业poc载荷数据的上传;3.本发明采用第一对比结果和第二对比结果对与第一用户上传的poc文件关联性最强的文件进行定位,并为第一用户提供可能输入的漏洞利用步骤,在第一用户输入的过程中,根据poc载荷数据聚类集合中的各载荷数据的关联度动态调整向用户提供的可能输入的漏洞利用步骤,使得第一用户能够快速搭建符合条件的poc载荷数据,提高了漏洞扫描工具的效率,增强了漏洞扫描工具对于poc载荷库的管理效果。
13.4.本发明采用聚类算法不断动态调整poc载荷数据的聚类集合,提高了漏洞扫描工具对于第一用户搭建poc载荷数据的效率;5.本发明第一用户在构建poc载荷数据过程中,不断动态调整聚类集合中各poc载荷数据之间的关联度数值,提高了漏洞扫描工具对于第一用户搭建poc载荷数据的效率。
14.上述说明,仅是本发明技术方案的概述,为了能够更清楚了解本发明技术手段,可依照说明书的内容予以实施,并且为了让本发明的上述说明和其它目的、特征及优点能够更明显易懂,特举较佳实施例,详细说明如下。
附图说明
15.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1为一种基于poc载荷库的漏洞扫描工具增强方法的流程图。
具体实施方式
16.下面将参照附图更详细地描述本公开的示例性实施方式。虽然附图中显示了本公开的示例性实施方式,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
17.在本发明的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
18.实施例一本发明提出了一种基于poc载荷库的漏洞扫描工具增强方法,所述方法具体包括如下步骤:s1.第一用户在漏洞扫描工具系统界面中输入poc载荷数据的poc文件,并由漏洞扫描工具系统进行验证;进一步地,所述步骤s1,具体包括如下步骤:s11.第一用户在漏洞扫描工具系统界面中上传poc文件;
具体地,第一用户在漏洞扫描工具系统界面中完成poc载荷数据的输入,poc载荷数据主要包括poc载荷数据名称、poc文件、漏洞利用步骤三部分。
19.s12.漏洞扫描工具系统根据汽车漏洞专业词汇表中的关键词,提取步骤s11中第一用户上传的poc文件中的关键词,并统计所述关键词的词频;所述poc文件为该poc载荷数据的文字描述;所述汽车漏洞专业词汇表为预先存储于漏洞扫描工具系统中,汽车漏洞专业词汇表中存储多个汽车漏洞关键词;s13.漏洞扫描工具系统获取系统中存储的第一poc载荷数据表,并提取所述第一poc载荷数据表中各行所对应的cve编码、poc文件、poc文件关键词、poc文件关键词词频;漏洞扫描工具系统中存储第一poc载荷数据表和第二poc载荷数据表;其中,第一poc载荷数据表中存储poc载荷数据的poc文件相关信息;所述第一poc载荷数据表中每行对应一条poc载荷数据,其中每行存储poc载荷数据的如下内容:cve编码、poc载荷数据名称、poc文件、poc文件关键词、poc文件关键词词频、poc载荷数据的漏洞利用路径。
20.需要特别强调的是,漏洞利用路径指的是poc载荷数据的多个漏洞利用步骤的编号按照执行顺序的集合,即单纯的编号集合并不包括具体的步骤内容。在系统中存储了两个表,一个是第一poc载荷数据表、一个是第二poc载荷数据表。其中第二poc载荷数据表中存储的是漏洞利用步骤的具体内容和该漏洞利用步骤所对应的编号,在第二poc载荷数据表中每条数据的格式为:{编号,漏洞利用步骤具体内容};第一poc载荷数据表中每条数据的格式为:cve编码、poc载荷数据名称、poc文件、poc文件关键词、poc文件关键词词频、poc载荷数据的漏洞利用路径;比如对于第一poc载荷数据表中的某一条数据的漏洞利用路径为{1,7,8,10},那么该条数据漏洞利用步骤的执行过程为:在第二poc载荷数据表中找到编号为1的漏洞利用步骤执行,再找到编号为7的漏洞利用步骤执行,再找到编号为8的漏洞利用步骤执行,直至结束。这样存储,可以避免对漏洞利用步骤的重复存储,极大减少数据存储量,并同时提升系统运行效率。
21.所述第二poc载荷数据表中存储各漏洞利用步骤以及各漏洞利用步骤的编号。对于所有的载荷数据来说,一个编号仅对应一个步骤,不同载荷数据同一编号,对应同一步骤。
22.例如,第二poc载荷数据表中存储的数据内容为:{1,a},{3,b},{7,c},{8,d},{10,e};其中1、3、7、8、10为漏洞利用步骤的编号;a、b、c、d、e分别为漏洞利用步骤的文字描述。
23.例如,第一poc载荷数据表中的某行数据为:111111,名称a,文件a,{can,
…
,网络},{30,
…
15},{1,7,8,10};其中111111为cve编码,名称a为poc载荷数据名称,文件a为poc文件,{can,
…
,网络}为poc文件关键词,{30,
…
15}中的30为对应的“can”关键词的词频,15为对应的“网络”关键词的词频,{1,7,8,10}为该poc载荷数据的漏洞利用路径,该漏洞利用路径中的编号与第二载荷数据表中的漏洞利用步骤编号一致,也即该poc载荷数据的漏洞利用步骤为:第一步骤为编号1对应的a,第二步骤为编号7对应的c,第三步骤为8对应的d,第四步骤为编号10对应的e。
24.其中,111111,名称a,文件a,{can,
…
,网络},{30,
…
15},{1,7,8,10}以及漏洞利用步骤a,c,d,e,组成一个完整的poc载荷数据。
25.s14.漏洞扫描工具系统将步骤s12中提取的第一用户上传的poc文件中的关键词和关键词的词频分别与步骤s13中提取的所述各行所对应的poc文件关键词、poc文件关键词词频进行对比,获得多个第一对比结果;所述第一对比结果为相似度数值;可选的,将两个poc文件的关键词和关键词词频采用相似度算法,如tf-ide算法,进行相似度计算,获得相似度数值。
26.进一步地,所述第一对比结果,即相似度计算方法采用现有的常见方法,如tf-ide算法,在此不做具体限定。s15.对所述第一对比结果从高至低进行排序,获得所述相似度数值最大的第一对比结果;s16.当相似度数值最大的第一对比结果小于预设阈值时,漏洞扫描工具系统在界面中将步骤s11中第一用户输入上传的poc文件反馈给第三用户,第三用户在漏洞扫描工具系统中输入第一判定结果;所述第一判定结果为同意poc载荷数据上传或不同意poc载荷数据上传;在相似度数值最大的第一对比结果小于预设阈值时,由第三用户输入第一判定结果,也即由人工经验进行审核,在此只记载系统所能实现的功能,不做人工审核标准的限定。
27.进一步地,所述预设阈值为预先设定;一般地,设置预设阈值,如。
28.s17.当所述相似度值最大的第一对比结果大于等于预设阈值,或者当所述相似度值最大的第一对比结果小于预设阈值并且所述第一判定结果为同意poc载荷数据上传时,将步骤s14中获得的多个第一对比结果按照从高至低排序的前3位第一对比结果所对应的三个poc文件分别与步骤s11中所述第一用户上传的poc文件进行语义相似度对比,获得三个第二对比结果;所述第二对比结果为语义相似度数值。poc文件为poc载荷数据的文字描述,第二对比结果是将两个poc文件进行语义相似度计算,获得语义相似度数值。而具体的语义相似度数值的计算方法采用现有的常见方法,在此不做进一步限定。
29.需要注意的是,当相似度数值最大的第一对比结果小于预设阈值时,也即系统自动判断在第一poc载荷数据表中没有与第一用户输入的poc文件特别相似的文件,则系统认为大概率第一用户输入的poc文件不是汽车行业的poc文件数据(也即可能第一用户输入错误)。但是,由于系统的判定也不是100%准确的,因此为了进一步提高对第一用户输入poc文件审核验证的准确性,本技术中在相似度数值最大的第一对比结果小于预设阈值时,交由第三用户进行人工审核。
30.进一步地,所述语义相似度的计算方法采用现有的常见方法,在此不再进一步限定。
31.进一步地,所述步骤s17中根据步骤s16中获得的三个poc文件所对应的三个第一对比结果和三个第二对比结果,获得三个第三对比结果,具体包括:针对每个poc文件所对应的第一对比结果和第二对比结果,按照如下方式计算获得第三对比结果:
其中,为第三对比结果,为第一对比结果,为第二对比结果;、分别为第一权重值、第二权重值。
32.进一步地,》。因为第一对比结果是按照关键词和关键词词频进行相似度计算,第二对比结果是按照语义相似度计算,关键词和关键词词频的相似度计算方法相对于语义相似度计算更加准确一些。因此,第一对比结果所对应的权重值大于第二对比结果对应的权重值。
33.s18.根据步骤s17中获得的三个poc文件所对应的三个第一对比结果和三个第二对比结果,获得三个第三对比结果;将所述三个第三对比结果按照数值大小由高至低排序,获得数值最大的第三对比结果所对应的poc文件;s19.漏洞扫描工具系统在第一poc载荷数据表中获取步骤s18中所述数值最大的第三对比结果所对应的poc文件对应的cve编码,并根据所述cve编码所对应的poc载荷数据的漏洞利用路径,在第二poc载荷数据表中获取多个漏洞利用步骤;所述第二poc载荷数据表中存储各poc载荷数据的漏洞利用步骤及其编号;s19a.漏洞扫描工具系统获取步骤s19中获得的cve编码所在的聚类集合,并获得所述聚类集合中的其他多个cve编码所对应的多个poc载荷数据的多个漏洞利用路径,并根据所述多个漏洞利用路径,在第二poc载荷数据表中获取每个漏洞利用路径对应的多个漏洞利用步骤;所述聚类集合中存储多个cve编码。
34.所述cve编码的聚类集合为采用各cve之间的关联度数值,采用常规的聚类算法预先构建;s2.第一用户在所述漏洞扫描工具系统界面中输入poc载荷数据的漏洞利用步骤。
35.需要特别说明的是,步骤s1中第一用户输入的是poc文件,步骤s2中第一用户输入的是漏洞利用步骤。一个poc载荷数据由两大部分组成,一是poc文件,也即对该poc载荷数据的文字说明。一是漏洞利用步骤,也即该poc载荷数据的各执行步骤。
36.进一步地,所述步骤s2还包括如下步骤:s21.第一用户在漏洞扫描工具系统中输入待填报的漏洞利用步骤的名称,漏洞扫描工具系统将用户输入的名称存储至临时存储空间中。
37.第一用户想要在系统中输入一个新的poc载荷数据,在步骤s1中输入该poc载荷数据对应的poc文件,在步骤s2中输入poc载荷数据的漏洞利用步骤。而在输入漏洞利用步骤的时候要输入该漏洞利用步骤的名称。待填报指的是当前第一用户正在输入的poc载荷数据的信息。
38.s22.漏洞扫描工具系统在其系统界面中显示步骤s19中获得的多个漏洞利用步骤{}的第一个漏洞利用步骤;其中为所述步骤s19中获得的多个漏洞利用步骤的第i个漏洞利用步骤;n为所述步骤s19中获得的多个漏洞利用步骤的步骤个数;s23. 第一用户对漏洞扫描工具系统界面中显示的当前漏洞利用步骤进行确认,当第一用户确认为匹配时,则将所述当前漏洞利用步骤在第二poc载荷数据表中对应
的编号存储至所述临时存储空间中,并将所述编号写在步骤s21中的所述名称之后的编号序列中,同时,在漏洞扫描工具系统界面中显示所述当前漏洞利用步骤的下一个漏洞利用步骤,重复执行步骤s23,直至第一用户确认为不匹配;当第一用户确认当前漏洞利用步骤为不匹配时,执行步骤s24;s24.漏洞扫描工具系统获取当前漏洞利用步骤的上一个漏洞利用步骤;具体的,从步骤s22中获取的多个漏洞利用步骤{}中获取漏洞利用步骤。
39.漏洞扫描工具系统在步骤s19a中获得的所述其他多个cve编码对应的多个漏洞利用路径,并在每个漏洞利用路径对应的多个漏洞利用步骤中查找是否存在与步骤一致的漏洞利用步骤,如存在,则将查找到的漏洞利用步骤所在的漏洞利用路径中的下一个漏洞利用步骤显示在漏洞扫描工具系统的界面中;例如,漏洞扫描工具系统在步骤s19a中获得的其他多个cve编码分别为:222222,333333,444444,其中222222对应的漏洞利用路径为1,3,4,5;33333对应的漏洞利用路径为:3,4,6,7;444444对应的漏洞利用路径为1,2,5,7。而步骤对应的编号为2,那么将查找到的漏洞利用步骤2所在的漏洞利用路径1,2,5,7的下一个漏洞利用步骤5显示在漏洞扫描工具系统的界面中。
40.如不存在,则由第一用户在漏洞扫描工具系统的界面中输入漏洞利用步骤的内容,漏洞扫描工具系统将所述用户输入的漏洞利用步骤的内容插入至第二poc载荷数据表中,并设置所述插入的漏洞利用步骤的编号,将所述编号写入至临时存储空间中,并将所述编号写在所述名称之后的编号序列中;重复执行步骤s22至步骤s24,直至第一用户完成poc载荷数据的所有漏洞利用步骤的输入。
41.进一步地,所述步骤s24中所述在将查找到的漏洞利用步骤所在的漏洞利用路径中的下一个漏洞利用步骤显示在漏洞扫描工具系统的界面中之后,还包括:将漏洞利用步骤所在的漏洞利用路径对应的cve编码与步骤s19中获取的cve编码之间的关联度数值增长10%。关联度数值用于聚类。
42.s3.将所述poc载荷数据存储至漏洞扫描工具系统的存储空间中,并设置每个poc载荷数据的标识号;进一步地,所述步骤s3具体包括如下步骤:s31. 漏洞扫描工具系统在第一poc载荷数据表中增加一条poc载荷数据,将步骤s24中所述临时存储空间中的所述名称作为增加的一条poc载荷数据中的poc载荷数据名称,将所述名称之后的编号序列作为增加的一条poc载荷数据的poc载荷数据的漏洞利用路径;s32.漏洞扫描工具系统为增加的一条poc载荷数据设置cve编码,并将设置的cve编码写入至第一poc载荷数据表中该条新增加的poc载荷数据的cve编码字段中;所述设置每个poc载荷数据的标识号为cve编码;
s33.漏洞扫描工具系统将步骤s1中输入的该条新增加的poc载荷数据对应的poc文件,以及由漏洞扫描工具系统在步骤s12中提取的poc文件关键词、poc文件关键词词频写入到该新增加的poc载荷数据在第一poc载荷数据表中的对应字段中;s34.漏洞扫描工具将步骤s32中设置的cve编码添加至步骤s19a所述的聚类集合中,并将步骤s32中设置的cve编码与步骤s19a所述的聚类集合中的其他cve编码的关联度数值设置为初始数值10%。在聚类集合中新增一个cve编码时,将这个新增的cve编码与该聚类集合原有的cve编码的相似度数值初始化为10%。
43.s4.根据聚类算法调整所述漏洞扫描工具系统的存储空间中的poc载荷数据之间的关联度数值;进一步地,所述步骤s4具体包括如下步骤:s41.当聚类集合中的cve编码的数量超过预设阈值m时,将该超过预设阈值m的聚类集合,采用(基于最新的关联度数值)聚类算法重新进行聚类,以拆分成两个或多个聚类集合;进一步地,在将超过预设阈值m的聚类的几何拆分后,将不在同一聚类集合的cve编码之间的关联度数值设置为0,也即将不在同一聚类集合的poc载荷数据之间的关联度数值设置为0。
44.s5.当第二用户查询所述poc载荷数据时,根据所述标识号匹配所述第二用户查询的poc载荷数据。
45.实施例二本发明还提出一种基于poc载荷库的漏洞扫描工具增强系统,所述系统包括显示装置,所述显示装置上显示系统界面,第一用户在所述系统界面中输入poc载荷数据,所述系统执行如下方法:s1.第一用户在漏洞扫描工具系统界面中输入poc载荷数据的poc文件,并由漏洞扫描工具系统进行验证;s2.第一用户在所述漏洞扫描工具系统界面中输入poc载荷数据的漏洞利用步骤;s3.将所述poc载荷数据存储至漏洞扫描工具系统的存储空间中,并设置每个poc载荷数据的标识号;s4.根据聚类算法调整所述漏洞扫描工具系统的存储空间中的poc载荷数据之间的关联度数值;s5.当第二用户查询所述poc载荷数据时,根据所述标识号匹配所述第二用户查询的poc载荷数据。
46.本发明的有益效果如下:1.本发明采用第一poc载荷数据表和第二poc载荷数据表对poc载荷数据进行存储,并且在第二poc载荷数据表中每条漏洞利用步骤均可重复使用,也即该种对poc载荷数据的存储方式能够使得存在相同漏洞利用步骤的不同poc载荷数据仅存储一条漏洞利用步骤即可,避免漏洞利用步骤的重复存储,极大减小了poc载荷数据的存储空间;2.本发明采用关键词和词频对第一用户上传的poc文件进行一次验证,以避免第一用户对非汽车行业poc载荷数据的上传;3.本发明采用第一对比结果和第二对比结果对与第一用户上传的poc文件关联性
最强的文件进行定位,并为第一用户提供可能输入的漏洞利用步骤,在第一用户输入的过程中,根据poc载荷数据聚类集合中的各载荷数据的关联度动态调整向用户提供的可能输入的漏洞利用步骤,使得第一用户能够快速搭建符合条件的poc载荷数据,提高了漏洞扫描工具的效率,增强了漏洞扫描工具对于poc载荷库的管理效果。
47.4.本发明采用聚类算法不断动态调整poc载荷数据的聚类集合,提高了漏洞扫描工具对于第一用户搭建poc载荷数据的效率;5.本发明第一用户在构建poc载荷数据过程中,不断动态调整聚类集合中各poc载荷数据之间的关联度数值,提高了漏洞扫描工具对于第一用户搭建poc载荷数据的效率。
48.以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
技术特征:
1.一种基于poc载荷库的漏洞扫描工具增强方法,其特征在于,所述方法具体包括如下步骤:s1.第一用户在漏洞扫描工具系统界面中输入poc载荷数据的poc文件,并由漏洞扫描工具系统进行验证;s2.第一用户在所述漏洞扫描工具系统界面中输入poc载荷数据的漏洞利用步骤;s3.将所述poc载荷数据存储至漏洞扫描工具系统的存储空间中,并设置每个poc载荷数据的标识号;s4.根据聚类算法调整所述漏洞扫描工具系统的存储空间中的poc载荷数据之间的关联度数值;s5.当第二用户查询所述poc载荷数据时,根据所述标识号匹配所述第二用户查询的poc载荷数据。2.根据权利要求1所述的一种基于poc载荷库的漏洞扫描工具增强方法,其特征在于,所述步骤s1第一用户在漏洞扫描工具系统界面中输入poc载荷数据的poc文件,并由漏洞扫描工具系统进行验证,具体包括如下步骤:s11.第一用户在漏洞扫描工具系统界面中上传poc文件;s12.漏洞扫描工具系统根据汽车漏洞专业词汇表中的关键词,提取步骤s11中第一用户上传的poc文件中的关键词,并统计所述关键词的词频;所述汽车漏洞专业词汇表中存储多个汽车漏洞关键词;s13.漏洞扫描工具系统获取系统中存储的第一poc载荷数据表,并提取所述第一poc载荷数据表中各行所对应的cve编码、poc文件、poc文件关键词、poc文件关键词词频;所述第一poc载荷数据表中每行对应一条poc载荷数据,其中每行存储poc载荷数据的如下内容:cve编码、poc载荷数据名称、poc文件、poc文件关键词、poc文件关键词词频、poc载荷数据的漏洞利用路径;s14.漏洞扫描工具系统将步骤s12中提取的第一用户上传的poc文件中的关键词和关键词的词频分别与步骤s13中提取的所述各行所对应的poc文件关键词、poc文件关键词词频进行对比,获得多个第一对比结果;所述第一对比结果为相似度数值;s15.对所述第一对比结果从高至低进行排序,获得所述相似度数值最大的第一对比结果;s16.当相似度数值最大的第一对比结果小于预设阈值时,漏洞扫描工具系统在界面中将步骤s11中第一用户输入上传的poc文件反馈给第三用户,第三用户在漏洞扫描工具系统中输入第一判定结果;所述第一判定结果为同意poc载荷数据上传或不同意poc载荷数据上传;s17.当相似度值最大的第一对比结果大于等于预设阈值,或者当所述相似度值最大的第一对比结果小于预设阈值并且所述第一判定结果为同意poc载荷数据上传时,将步骤s14中获得的多个第一对比结果按照从高至低排序的前3位第一对比结果所对应的三个poc文件分别与步骤s11中所述第一用户上传的poc文件进行语义相似度对比,获得三个第二对比结果;
所述第二对比结果为语义相似度数值;s18.根据步骤s17中获得的三个poc文件所对应的三个第一对比结果和三个第二对比结果,获得三个第三对比结果;将所述三个第三对比结果按照数值大小由高至低排序,获得数值最大的第三对比结果所对应的poc文件;s19.漏洞扫描工具系统在第一poc载荷数据表中获取步骤s18中所述数值最大的第三对比结果所对应的poc文件对应的cve编码,并根据所述cve编码所对应的poc载荷数据的漏洞利用路径,在第二poc载荷数据表中获取多个漏洞利用步骤;所述第二poc载荷数据表中存储各poc载荷数据的漏洞利用步骤及其编号;s19a.漏洞扫描工具系统获取步骤s19中获得的cve编码所在的聚类集合,并获得所述聚类集合中的其他多个cve编码所对应的多个poc载荷数据的多个漏洞利用路径,并根据所述多个漏洞利用路径,在第二poc载荷数据表中获取每个漏洞利用路径对应的多个漏洞利用步骤;所述聚类集合中存储多个cve编码。3.根据权利要求2所述的一种基于poc载荷库的漏洞扫描工具增强方法,其特征在于,所述步骤s17中根据步骤s16中获得的三个poc文件所对应的三个第一对比结果和三个第二对比结果,获得三个第三对比结果,具体包括:针对每个poc文件所对应的第一对比结果和第二对比结果,按照如下方式计算获得第三对比结果:其中,为第三对比结果,为第一对比结果,为第二对比结果;、分别为第一权重值、第二权重值。4.根据权利要求2所述的一种基于poc载荷库的漏洞扫描工具增强方法,其特征在于,所述步骤s2第一用户在所述漏洞扫描工具系统界面中输入poc载荷数据的漏洞利用步骤,具体包括,在步骤s19之后,还包括如下步骤:s21.第一用户在漏洞扫描工具系统中输入待填报的漏洞利用步骤的名称,漏洞扫描工具系统将用户输入的名称存储至临时存储空间中;s22.漏洞扫描工具系统在其系统界面中显示步骤s19中获得的多个漏洞利用步骤{}的第一个步骤;其中为所述步骤s19中获得的多个漏洞利用步骤的第i个步骤;n为所述步骤s19中获得的多个漏洞利用步骤的步骤个数;s23. 第一用户对漏洞扫描工具系统界面中显示的当前漏洞利用步骤进行确认,当第一用户确认为匹配时,则将所述当前漏洞利用步骤在第二poc载荷数据表中对应的编号存储至所述临时存储空间中,并将所述编号写在步骤s21中的所述名称之后的编号序列中,同时,在漏洞扫描工具系统界面中显示所述当前漏洞利用步骤的下一个漏洞利用步骤,重复执行步骤s23,直至第一用户确认为不匹配;当第一用户确认当前漏洞利用步骤为不匹配时,执行步骤s24;
s24.漏洞扫描工具系统获取当前漏洞利用步骤的上一个漏洞利用步骤;漏洞扫描工具系统在步骤s19a中获得的所述其他多个cve编码对应的多个漏洞利用路径,并在每个漏洞利用路径对应的多个漏洞利用步骤中查找是否存在与步骤一致的漏洞利用步骤,如存在,则将查找到的漏洞利用步骤所在的漏洞利用路径中的下一个漏洞利用步骤显示在漏洞扫描工具系统的界面中;如不存在,则由第一用户在漏洞扫描工具系统的界面中输入漏洞利用步骤的内容,漏洞扫描工具系统将所述用户输入的漏洞利用步骤的内容插入至第二poc载荷数据表中,并设置所述插入的漏洞利用步骤的编号,将所述编号写入至临时存储空间中,并将所述编号写在所述名称之后的编号序列中;重复执行步骤s22至步骤s24,直至第一用户完成poc载荷数据的所有漏洞利用步骤的输入。5.根据权利要求4所述的一种基于poc载荷库的漏洞扫描工具增强方法,其特征在于,所述步骤s24中所述在将查找到的漏洞利用步骤所在的漏洞利用路径中的下一个漏洞利用步骤显示在漏洞扫描工具系统的界面中之后,还包括:将漏洞利用步骤所在的漏洞利用路径对应的cve编码与步骤s19中获取的cve编码之间的关联度数值增长10%。6.根据权利要求5所述的一种基于poc载荷库的漏洞扫描工具增强方法,其特征在于,所述步骤s3将所述poc载荷数据存储至漏洞扫描工具系统的存储空间中,并设置每个poc载荷数据的标识号,具体包括如下步骤:s31. 漏洞扫描工具系统在第一poc载荷数据表中增加一条poc载荷数据,将步骤s24中所述临时存储空间中的所述名称作为增加的一条poc载荷数据中的poc载荷数据名称,将所述名称之后的编号序列作为增加的一条poc载荷数据的poc载荷数据的漏洞利用路径;s32.漏洞扫描工具系统为增加的一条poc载荷数据设置cve编码,并将设置的cve编码写入至第一poc载荷数据表中该条新增加的poc载荷数据的cve编码字段中;所述设置每个poc载荷数据的标识号为设置cve编码;s33.漏洞扫描工具系统将步骤s1中输入的该条新增加的poc载荷数据对应的poc文件,以及由漏洞扫描工具系统在步骤s12中提取的poc文件关键词、poc文件关键词词频写入到该新增加的poc载荷数据在第一poc载荷数据表中的对应字段中;s34.漏洞扫描工具将步骤s32中设置的cve编码添加至步骤s19a所述的聚类集合中,并将步骤s32中设置的cve编码与步骤s19a所述的聚类集合中的其他cve编码的关联度数值设置为初始数值10%。7.根据权利要求5所述的一种基于poc载荷库的漏洞扫描工具增强方法,其特征在于,s4根据聚类算法调整所述漏洞扫描工具系统的存储空间中的poc载荷数据之间的关联度数值,具体包括如下步骤:s41.当聚类集合中的cve编码的数量超过预设阈值m时,将该超过预设阈值m的聚类集合,采用聚类算法重新进行聚类,以拆分成两个或多个聚类集合。
8.一种基于poc载荷库的漏洞扫描工具增强系统,所述系统包括显示装置,所述显示装置上显示系统界面,第一用户在所述系统界面中输入poc载荷数据,所述系统执行如下方法:s1.第一用户在漏洞扫描工具系统界面中输入poc载荷数据的poc文件,并由漏洞扫描工具系统进行验证;s2.第一用户在所述漏洞扫描工具系统界面中输入poc载荷数据的漏洞利用步骤;s3.将所述poc载荷数据存储至漏洞扫描工具系统的存储空间中,并设置每个poc载荷数据的标识号;s4.根据聚类算法调整所述漏洞扫描工具系统的存储空间中的poc载荷数据之间的关联度数值;s5.当第二用户查询所述poc载荷数据时,根据所述标识号匹配所述第二用户查询的poc载荷数据。
技术总结
本发明提供一种基于PoC载荷库的漏洞扫描工具增强方法和系统,本发明由第一用户在漏洞扫描工具系统中输入PoC载荷数据,并由漏洞扫描工具系统对PoC载荷数据进行验证,并由漏洞扫描工具系统对第一用户输入的PoC载荷数据进行存储;本发明能够提高PoC载荷数据的搭建效率,以及提高PoC载荷库的存储效率。以及提高PoC载荷库的存储效率。以及提高PoC载荷库的存储效率。
技术研发人员:张亚楠 马超 沈诗雯 宁玉桥 郭振 边臣雅 薛世豪
受保护的技术使用者:中汽智联技术有限公司
技术研发日:2023.06.29
技术公布日:2023/8/1
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:一种固井施工用具有防倒灌功能的浮箍浮鞋的制作方法 下一篇:一种花生筛种机的制作方法