一种实现受漏洞影响的产品预测的方法及装置与流程

未命名 10-08 阅读:105 评论:0


1.本文涉及但不限于信息安全技术,尤指一种实现受漏洞影响的产品预测的方法及装置。


背景技术:

2.目前,当某一漏洞披露后,特别是开源组件漏洞(在信息产品供应链中,上游产品漏洞)披露后,下游产品往往会在一周乃至几个月后才会明确给出受该漏洞影响的产品和版本,也有很多产品甚至不会给出受该漏洞影响的情况,这样大大增加了资产风险。
3.开源组件的广泛引用给应用程序的开发方式带来了遍历。开发人员和企业可以在他们的代码中引用已有的组件和库来实现各种功能,同时也带来了一些隐患,例如:引用的代码可能存在着bug或脆弱性。软件成分分析工具可以分析了解应用程序中使用了哪些开源组件和依赖关系,可以识别组件及其依赖关系的安全性并识别它们带来的潜在风险,帮助研发团队开发和发布高质量的代码,并为参与者提供一种积极主动的风险管理方法。在软件开发过程的初期,软件成分分析工具通过识别安全漏洞和风险,使软件开发人员提前选择更为安全的组件。但是,当一个组件漏洞被披露以后,软件成分分析工具仍然没办法在攻击者攻击到组件的下游之前发现下游产品也存在该漏洞。
4.综上,如何实现受漏洞影响的产品预测,成为一个有待解决的问题。


技术实现要素:

5.以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
6.本发明实施例提供一种实现受漏洞影响的产品预测的方法及装置,能够为进行受漏洞影响的产品预测提供技术支持。
7.本发明实施例提供了一种实现受漏洞影响的产品预测的方法,包括:
8.获取受漏洞影响的产品数据集;
9.确定获得的受漏洞影响的产品数据集中的频繁项集;
10.根据选出的频繁项集产生关联规则。
11.另一方面,本发明实施例还提供一种计算机存储介质,所述计算机存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现上述实现受漏洞影响的产品预测的方法。
12.再一方面,本发明实施例还提供一种终端,包括:存储器和处理器,所述存储器中保存有计算机程序;其中,
13.处理器被配置为执行存储器中的计算机程序;
14.所述计算机程序被所述处理器执行时实现如上述实现受漏洞影响的产品预测的方法。
15.还一方面,本发明实施例还提供一种实现受漏洞影响的产品预测的装置,包括:获
取单元、确定单元和产生单元;其中,
16.获取单元设置为:获取受漏洞影响的产品数据集;
17.确定单元设置为:确定获得的受漏洞影响的产品数据集中的频繁项集;
18.产生单元设置为:根据选出的频繁项集产生关联规则。
19.本技术技术方案包括:获取受漏洞影响的产品数据集;确定获得的受漏洞影响的产品数据集中的频繁项集;根据选出的频繁项集产生关联规则。本发明实施例通过确定受漏洞影响的产品数据集中的频繁项集产生关联规则,为进行受漏洞影响的产品预测提供了技术支持。
20.本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
21.附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本技术的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
22.图1为本发明实施例实现受漏洞影响的产品预测的方法的流程图;
23.图2为本发明实施例生成候选项集的示意图。
具体实施方式
24.为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互任意组合。
25.在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
26.图1为本发明实施例实现受漏洞影响的产品预测的方法的流程图,如图1所示,包括:
27.步骤101、获取受漏洞影响的产品数据集;
28.在一种示例性实例中,本发明实施例获取受漏洞影响的产品数据集,包括:
29.获取漏洞数据和与漏洞关联的受影响产品的通用平台枚举(cpe)数据;
30.根据获取的漏洞数据对获取的cpe数据进行关联查询,将关联查询的结果确定为受漏洞影响的产品数据集。
31.在一种示例性实例中,本发明实施例获取漏洞数据和与漏洞关联的受影响产品的cpe数据,包括:利用爬虫技术,爬取漏洞数据和与漏洞关联的受影响产品的cpe(用于描述或定义企业数字资产中存在的应用程序,操作系统和硬件设备;cpe可以用作执行和验证与这些企业资产相关的it管理策略(例如漏洞、配置和补救策略)的信息源)数据;在一种示例性实例中,本发明实施例爬取上述与漏洞关联的受影响产品的cpe数据时,可以参照相关技术构建与漏洞关联的受影响产品数据库。
32.在一种示例性实例中,本发明实施例根据获取的漏洞数据对获取的cpe数据进行
关联查询,包括:根据漏洞数据中包含的与通用漏洞披露(cve)信息和受影响的产品范围,对cpe数据进行关联查询。在一种示例性实例中,本发明实施例受漏洞影响的产品数据集可以包括表1所示的内容:
[0033][0034][0035]
表1
[0036]
在一种示例性实例中,本发明实施例方法还包括:对受漏洞影响的产品数据集中的数据进行以下一项或任意组合的处理:去重、合并、处理无效值和处理缺失值。
[0037]
步骤102、确定获得的受漏洞影响的产品数据集中的频繁项集;
[0038]
本发明实施例确定受漏洞影响的产品数据集中全部频繁项集、发现受漏洞影响的产品数据集中有价值的潜在频繁模式,是关联规则挖掘的最终目的;本发明实施例中的最小支持度和最小置信度是挖掘关联规则的数值条件。
[0039]
在一种示例性实例中,本发明实施例确定受漏洞影响的产品数据集中的频繁项集,包括:
[0040]
根据预先设置的最小支持度,确定受漏洞影响的产品数据集中的频繁项集。
[0041]
在一种示例性实例中,本发明实施例根据预先设置的最小支持度,确定受漏洞影响的产品数据集中的频繁项集,包括:
[0042]
步骤201、首次扫描受漏洞影响的产品数据集时,统计受漏洞影响的产品数据集中每一个项出现的次数,获得候选1-项集;
[0043]
步骤202、根据预先设置的最小支持度(minsup)阈值,从获得的候选1-项集中筛选出频繁1-项集;
[0044]
步骤203、将筛选出的所有频繁1-项集组合为候选2-项集;这里,组合处理包括:将所有频繁1-项集添加到一个集合中,形成新的集合的过程;
[0045]
步骤204、从第i次扫描受漏洞影响的产品数据集开始,判断候选i-项集候选是否为空,i大于或等于2;
[0046]
步骤205、判断获得的候选i-项集候选不为空时,统计受漏洞影响的产品数据集中,候选i-项集出现的次数,并根据最小支持度阈值筛选出频繁i-项集;将筛选出的频繁i-项集进行组合,形成在后一次扫描时的候选i-项集;判断获得的候选i-项集候选为空时,将候选i-项集为空之前的所有频繁i-项集作为受漏洞影响的产品数据集中的频繁项集;其中,i-项集包括:项集中包含i个不同的项。在一种示例性实例中,本发明实施例候选i-项集可以记做ci,频繁i-项集记做li。在一种示例性实例中,本发明实施例当最小支持度阈值为1,可以筛选出3个频繁1-项集;当最小支持度阈值为2,可以筛选出2个频繁1-项集,当最小支持度阈值为3,可以筛选出1个频繁1-项集;一般的,最小支持度阈值越大,筛选出的频繁i-项集越小,相反的,最小支持度阈值越小,筛选出的频繁i-项集越大。判断获得的所述候选i-项集候选为空时,本发明实施例可以将在前获得的所有频繁项集作为受漏洞影响的产品数据集中的频繁项集。
[0047]
以下通过简要示例对确定频繁项集的处理进行简要说明:假设受漏洞影响的产品数据集包含l1、l2、l3和l4;其中,l1={a,b,c,d},所有可能生成的候选项集如图2所示,对于一个候选项集,假设候选项集的长度为k,那么该候选项集最终能够产生的非空频繁项集的个数为2
k-1;本发明实施例通过筛选符合最小支持度(minsup)的候选项集,得到频繁项集。
[0048]
步骤103、根据选出的频繁项集产生关联规则。
[0049]
在一种示例性实例中,本发明实施例根据选出的频繁项集产生关联规则,包括:通过计算频繁项集的最小置信度minconf,生成关联规则。
[0050]
在一种示例性实例中,根据选出的频繁项集产生关联规则之后,本发明实施例方法还包括:根据产生的关联规则,对受漏洞影响的产品进行预测。
[0051]
本发明实施例可以应用apriori算法执行上述处理,apriori算法的目标是:从庞大的且杂乱无章的受漏洞影响的产品数据集中找出受漏洞影响的频繁出现的数据集合,这些频繁出现的数据集合即频繁项集,表示了不同产品之间的内在联系,具有潜在的意义和价值。
[0052]
以apache tomcat安全漏洞(cve-2020-1938)为例,2020年2月20日公开一条漏洞:apache tomcat安全漏洞(cve-2020-1938),已知该漏洞的受影响产品为apache tomcat;本发明实施例可根据历史的漏洞受影响产品数据,利用apriori算法得到一系列的关联规则,其中有一条规则为:apache tomcat
‑‑‑‑
》oracle agile plm的置信度为98%,可以推算出oracle agile plm也存在该漏洞,但是目前相关官网并未发布该漏洞以及该漏洞的补丁,本发明实施例可以根据该漏洞的原理,提前做好防护措施;在2020年7月14日,相关官网发布了该漏洞,以及该漏洞的补丁包,此时安全运营人员可以根据实际情况选择打补丁或者继续采取防护措施。
[0053]
本发明实施例通过对受漏洞影响产品的历史数据进行关联分析,发现受漏洞影响的不同产品之间的关联关系,从而在已知某一产品存在漏洞时,可以推算出另一款产品也存在该漏洞。本发明实施例将漏洞所对应的受影响产品数据进行关联分析,可找到不同产品间的相关性,从而当某一款开源组件漏洞披露后,可以预测受该漏洞影响的开源组件的下游产品也存在该漏洞;当某一款产品的某一个函数存在漏洞,可预测跟这款产品具有同样函数的其他产品也存在该漏洞。在漏洞披露以及补丁发布的窗口期内,安全运营人员或者产品使用者可以提前准备做好防护工作,也可为漏洞挖掘人员挖出某一漏洞后,多一个角度预测有该漏洞的产品,在哪里有该漏洞。
[0054]
本发明实施例还提供一种计算机存储介质,计算机存储介质中存储有计算机程序,计算机程序被处理器执行时实现上述实现受漏洞影响的产品预测的方法。
[0055]
本发明实施例还提供一种终端,包括:存储器和处理器,存储器中保存有计算机程序;其中,
[0056]
处理器被配置为执行存储器中的计算机程序;
[0057]
计算机程序被处理器执行时实现如上述实现受漏洞影响的产品预测的方法。
[0058]
本发明实施例实现受漏洞影响的产品预测的装置,包括:
[0059]
获取单元、确定单元和产生单元;其中,
[0060]
获取单元设置为:获取受漏洞影响的产品数据集;
[0061]
确定单元设置为:确定获得的受漏洞影响的产品数据集中的频繁项集;
[0062]
产生单元设置为:根据选出的频繁项集产生关联规则。
[0063]
在一种示例性实例中,本发明实施例装置还包括预测单元,设置为:根据产生的关联规则,对受漏洞影响的产品进行预测。
[0064]
在一种示例性实例中,本发明实施例获取单元是设置为:
[0065]
获取漏洞数据和与漏洞关联的受影响产品的cpe数据;
[0066]
根据获取的漏洞数据对cpe数据进行关联查询,获得受漏洞影响的产品数据集。
[0067]
在一种示例性实例中,本发明实施例获取单元是设置为根据获取的漏洞数据对获取的cpe数据进行关联查询,包括:
[0068]
根据漏洞数据中包含的与通用漏洞披露cve信息和受影响的产品范围,对cpe数据
进行关联查询。
[0069]
在一种示例性实例中,本发明实施例装置还包括预处理单元,设置为对受漏洞影响的产品数据集中的数据进行以下一项或任意组合的处理:去重、合并、处理无效值和处理缺失值。
[0070]
在一种示例性实例中,本发明实施例确定单元是设置为:根据预先设置的最小支持度阈值,确定受漏洞影响的产品数据集中的频繁项集。
[0071]
在一种示例性实例中,本发明实施例确定单元是设置为:
[0072]
首次扫描受漏洞影响的产品数据集时,统计受漏洞影响的产品数据集中每一个项出现的次数,获得候选1-项集;
[0073]
根据预先设置的最小支持度阈值,从获得的候选1-项集中筛选出频繁1-项集;
[0074]
将筛选出的频繁1-项集进行组合,获得候选2-项集;
[0075]
从第i次扫描受漏洞影响的产品数据集开始,判断候选i-项集候选是否为空,i大于或等于2;
[0076]
判断获得的候选i-项集候选不为空时,统计受漏洞影响的产品数据集中,候选i-项集出现的次数,并根据最小支持度阈值筛选出频繁i-项集;将筛选出的频繁i-项集进行组合,形成在后一次扫描时的候选i-项集;判断获得的候选i-项集候选为空时,将候选i-项集为空之前获得的所有频繁i-项集作为受漏洞影响的产品数据集中的频繁项集;其中,i-项集包括:项集中包含i个不同的项。在一种示例性实例中,本发明实施例候选i-项集可以记做ci,频繁i-项集记做li。
[0077]
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。

技术特征:
1.一种实现受漏洞影响的产品预测的方法,包括:获取受漏洞影响的产品数据集;确定获得的受漏洞影响的产品数据集中的频繁项集;根据选出的频繁项集产生关联规则。2.根据权利要求1所述的方法,其特征在于,所述根据选出的频繁项集产生关联规则之后,所述方法还包括:根据产生的所述关联规则,对受漏洞影响的产品进行预测。3.根据权利要求1所述的方法,其特征在于,所述获取受漏洞影响的产品数据集,包括:获取漏洞数据和与漏洞关联的受影响产品的通用平台枚举cpe数据;根据获取的所述漏洞数据对所述cpe数据进行关联查询,获得所述受漏洞影响的产品数据集。4.根据权利要求3所述的方法,其特征在于,所述根据获取的漏洞数据对获取的cpe数据进行关联查询,包括:根据所述漏洞数据中包含的与通用漏洞披露cve信息和受影响的产品范围,对所述cpe数据进行关联查询。5.根据权利要求3所述的方法,其特征在于,所述确定获得的受漏洞影响的产品数据集中的频繁项集之前,所述方法还包括对所述受漏洞影响的产品数据集中的数据进行以下一项或任意组合的处理:去重、合并、处理无效值和处理缺失值。6.根据权利要求1-5任一项所述的方法,其特征在于,所述确定获得的受漏洞影响的产品数据集中的频繁项集,包括:根据预先设置的最小支持度阈值,确定所述受漏洞影响的产品数据集中的所述频繁项集。7.根据权利要求6所述的方法,其特征在于,所述根据预先设置的最小支持度阈值,确定所述受漏洞影响的产品数据集中的所述频繁项集,包括:首次扫描所述受漏洞影响的产品数据集时,统计所述受漏洞影响的产品数据集中每一个项出现的次数,获得候选1-项集;根据预先设置的最小支持度阈值,从获得的所述候选1-项集中筛选出频繁1-项集;将筛选出的所有所述频繁1-项集组合为候选2-项集;从第i次扫描所述受漏洞影响的产品数据集开始,判断候选i-项集候选是否为空,i大于或等于2;判断获得的所述候选i-项集候选不为空时,统计所述受漏洞影响的产品数据集中,所述候选i-项集出现的次数,并根据最小支持度阈值筛选出频繁i-项集;将筛选出的频繁i-项集进行组合,获得在后一次扫描时的候选i-项集;判断获得的所述候选i-项集候选为空时,将候选i-项集为空之前获得的所有频繁i-项集作为受漏洞影响的产品数据集中的频繁项集;其中,i-项集包括:项集中包含i个不同的项。8.一种计算机存储介质,所述计算机存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-7中任一项所述的实现受漏洞影响的产品预测的方法。9.一种终端,包括:存储器和处理器,所述存储器中保存有计算机程序;其中,
处理器被配置为执行存储器中的计算机程序;所述计算机程序被所述处理器执行时实现如权利要求1-7中任一项所述的实现受漏洞影响的产品预测的方法。10.一种实现受漏洞影响的产品预测的装置,包括:获取单元、确定单元和产生单元;其中,获取单元设置为:获取受漏洞影响的产品数据集;确定单元设置为:确定获得的受漏洞影响的产品数据集中的频繁项集;产生单元设置为:根据选出的频繁项集产生关联规则。

技术总结
本文公开一种实现受漏洞影响的产品预测的方法及装置,包括:获取受漏洞影响的产品数据集;确定获得的受漏洞影响的产品数据集中的频繁项集;根据选出的频繁项集产生关联规则。本发明实施例通过确定受漏洞影响的产品数据集中的频繁项集产生关联规则,为进行受漏洞影响的产品预测提供了技术支持。响的产品预测提供了技术支持。响的产品预测提供了技术支持。


技术研发人员:张苗苗 丁斌 张延佳 蒋发群
受保护的技术使用者:北京网御星云信息技术有限公司 启明星辰信息技术集团股份有限公司
技术研发日:2023.06.09
技术公布日:2023/10/5
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐