用于确定漏洞类型的方法、电子设备和计算机程序产品技术

技术编号:39270780 阅读:7 留言:0更新日期:2023-11-07 10:50
本公开的实施例涉及用于确定漏洞类型的方法、电子设备和计算机程序产品。在本公开的实施例所提供的用于确定漏洞类型的方法中,收集漏洞的数据并且对所收集的数据进行编码。数据至少包括堆栈跟踪消息、标准错误和标准输出消息。方法还包括基于经编码的数据,根据一组经训练的梯度提升树模型,预测漏洞的类型。一组经训练的梯度提升树模型至少包括:修补确定模型、软硬件确定模型、以及产品/测试确定模型。以此方式,可以避免由于在训练过程中漏洞数据的类失衡等特性而导致模型分类结果不准确的问题。确的问题。确的问题。

【技术实现步骤摘要】
用于确定漏洞类型的方法、电子设备和计算机程序产品


[0001]本公开的实施例涉及漏洞分析领域,并且更具体地,涉及用于确定漏洞类型的方法、电子设备和计算机程序产品。

技术介绍

[0002]在产品测试和运营中,会有大量的漏洞(Bug)产生。对漏洞的分析是工程师工作内容的一部分。漏洞不单指软件系统的功能性错误,还包括了软件开发过程中需求、设计、开发等阶段评审过程发现的问题,以及软件发布后客户发现并反馈的问题,同时还包括了那些隐藏在软件内部暂时没有被发现的问题。

技术实现思路

[0003]在本公开的第一方面中,提供了一种用于确定漏洞类型的方法。该方法包括收集漏洞的数据,数据至少包括堆栈跟踪消息、标准错误和标准输出消息。方法还包括对所收集的数据进行编码。方法还包括基于经编码的数据,根据一组经训练的梯度提升树模型,预测漏洞的类型,其中一组经训练的梯度提升树模型至少包括:修补确定模型,用于确定漏洞是否需要进行修补;软硬件确定模型,用于确定需要进行修补的漏洞是软件问题还是硬件问题;以及产品/测试确定模型,用于确定软件问题的漏洞是由产品代码引起还是由测试代码引起。
[0004]在本公开的第二方面中,提供了一种电子设备。该电子设备包括处理器以及与处理器耦合的存储器,存储器具有存储于其中的指令,指令在被处理器执行时使设备执行动作。动作包括收集漏洞的数据,数据至少包括堆栈跟踪消息、标准错误和标准输出消息。动作还包括对所收集的数据进行编码。动作还包括基于经编码的数据,根据一组经训练的梯度提升树模型,预测漏洞的类型,其中一组经训练的梯度提升树模型至少包括:修补确定模型,用于确定漏洞是否需要进行修补;软硬件确定模型,用于确定需要进行修补的漏洞是软件问题还是硬件问题;以及产品/测试确定模型,用于确定软件问题的漏洞是由产品代码引起还是由测试代码引起。
[0005]在本公开的第三方面中,提供了一种计算机程序产品,计算机程序产品被有形地存储在计算机可读介质上并且包括机器可执行指令,机器可执行指令在被执行时使机器执行根据第一方面的方法。
[0006]提供
技术实现思路
部分是为了简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。
技术实现思路
部分无意标识本公开的关键特征或主要特征,也无意限制本公开的范围。
附图说明
[0007]通过结合附图对本公开示例性实施例进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施例中,相同的参考标号通常
代表相同部件。在附图中:
[0008]图1示出了本公开的实施例可以在其中被实现的示例环境的示意图;
[0009]图2示出了根据本公开的实施例的确定漏洞类型的示例方法的流程图;
[0010]图3示出了根据本公开的一些实施例的确定漏洞类型的示例方法的流程图;
[0011]图4是示出根据本公开的一些实施例对一组梯度提升树模型进行训练的示意图;以及
[0012]图5示出了可以用来实施本公开的实施例的示例设备的框图。
具体实施方式
[0013]下面将参考附图中示出的若干示例实施例来描述本公开的原理。虽然附图中显示了本公开的优选实施例,但应当理解,描述这些实施例仅是为了使本领域技术人员能够更好地理解进而实现本公开,而并非以任何方式限制本公开的范围。
[0014]在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
[0015]对漏洞的分析通常由人工进行。然而,随着互联网的飞速发展,使用产品的频率以及用户数量都在显著提升。每天会产生大量漏洞。漏洞的类型也是各种各样的。有些漏洞不需要立即被修补,有些漏洞可能不是软件本身造成的。对这些漏洞类型的分析仍然在要靠人工进行。由人工对漏洞类型进行分类,导致时间成本高,并且分析效率低。
[0016]本公开的实施例提出了一种确定漏洞类型的方案。根据本公开的各个实施例,收集包括堆栈跟踪消息、标准错误和标准输出消息等的漏洞数据。然后对所收集的数据进行编码,基于经编码的该数据,根据至少包括三个经训练的梯度提升树模型的一组模型,来预测漏洞的类型。
[0017]根据在此描述的实施例,通过使用多个二元分类模型作为一组经训练的梯度提升树模型,而不是使用单个多类分类模型,可以避免如下问题:由于在训练过程中漏洞数据的类失衡等特性,而导致模型分类结果不准确。此外,通过将所预测的结果呈现给工程师,从而可以减少时间成本,并且提高漏洞分析效率。
[0018]以下将参考附图来说明本公开的基本原理和若干示例实现方式。应当理解,给出这些示例性实施例仅是为了使本领域技术人员能够更好地理解进而实现本公开的实施例,而并非以任何方式限制本公开的范围。
[0019]图1示出了本公开的实施例可以在其中被实现的示例环境的示意图。如图1所示,环境100包括漏洞的数据130、编码器120、修补确定模型110

1、软硬件确定模型110

2以及产品/测试确定模型110

3。修补确定模型110

1、软硬件确定模型110

2以及产品/测试确定模型110

3是一组经训练的梯度提升树模型,可以统称为或单独称为“模型110”。对模型110的训练将在后文结合图4进行描述。
[0020]编码器120可以利用任何已知或未知的编码技术对数据130进行编码。数据130可以是来自任何平台的漏洞数据。
[0021]应当理解,仅出于示例性的目的描述环境100的结构和功能,而不暗示对于本公开的范围的任何限制。例如,本公开的实施例还可以被应用到与环境100不同的环境中。此外,虽然图1中仅示出了三个模型110,但并不限于此,也可以包括更多或更少的模型110。
[0022]图2示出了根据本公开的实施例的确定漏洞类型的示例方法200的流程图。方法200例如可以在如图1所示的环境100中执行。应当理解,方法200还可以包括未示出的附加动作和/或可以省略所示出的动作,本公开的范围在此方面不受限制。以下结合图1来详细描述方法200。
[0023]在框210处,漏洞的数据130被收集。数据130至少包括堆栈跟踪消息、标准错误和标准输出消息。数据130可以从各种平台收集,例如缺陷跟踪管理系统JIRA、搜索引擎、网络文件共享存储、对象存储等不同平台。
[0024]在一些实施例中,数据130可能来自于缺陷跟踪管理系统JIRA。此时,数据130可以是基本JIRA信息,诸如工单(tickit)状态、最终解决方案、产品类型,以及详细的漏洞消息(例如堆栈跟踪消息、标准错误和标准输出本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于确定漏洞类型的方法,包括:收集漏洞的数据,所述数据至少包括堆栈跟踪消息、标准错误和标准输出消息;对所收集的数据进行编码;以及基于经编码的所述数据,根据一组经训练的梯度提升树模型,预测所述漏洞的类型,其中所述一组经训练的梯度提升树模型至少包括:修补确定模型,用于确定所述漏洞是否需要进行修补;软硬件确定模型,用于确定需要进行修补的所述漏洞是软件问题还是硬件问题;以及产品/测试确定模型,用于确定软件问题的所述漏洞是由产品代码引起还是由测试代码引起。2.根据权利要求1所述的方法,其中对所收集的所述数据进行编码包括:利用独热编码,将所述数据编码为用于所述梯度提升树模型的文本格式。3.根据权利要求1所述的方法,其中基于经编码的所述数据根据所述一组经训练的梯度提升树模型预测所述漏洞的类型包括:基于经编码的所述数据,根据所述修补确定模型,确定所述漏洞是否需要进行修补;以及响应于确定所述漏洞中的第一漏洞不需要进行修补,预测所述第一漏洞的类型是无需修补。4.根据权利要求3所述的方法,还包括:响应于确定所述漏洞中的第二漏洞需要进行修补,基于所述第二漏洞的经编码的数据,根据所述软硬件确定模型,确定所述第二漏洞是软件问题还是硬件问题;以及响应于确定所述第二漏洞是硬件问题,预测所述第二漏洞的类型是硬件问题。5.根据权利要求4所述的方法,还包括:响应于确定所述漏洞中的第三漏洞需要进行修补,并且确定所述第三漏洞是软件问题,基于所述第三漏洞的经编码的数据,根据所述产品/测试确定模型,确定所述第三漏洞是由产品代码引起还是由测试代码引起;响应于确定所述第三漏洞是由产品代码引起,预测所述第三漏洞的类型是产品代码问题;以及响应于确定所述第三漏洞是由测试代码引起,预测所述第三漏洞的类型是测试代码问题。6.根据权利要求1所述的方法,其中所述一组经训练的梯度提升树模型通过以下操作被训练:分别利用针对一组梯度提升树模型中的各个模型的过滤器,对训练数据进行过滤,以获得用于训练各个模型的多个训练数据子集;利用独热编码,将所述多个训练数据子集中的训练数据编码为文本格式;以及利用经编码的所述多个训练数据子集,分别训练所述一组梯度提升树模型中的模型。7.根据权利要求6所述的方法,还包括:利用网格搜索、随机搜索或者基于贝叶斯的搜索,对所述一组梯度提升树模型中的模型的超参数进行优化。8.一种电子设备,包括:
处理器;以及与所述处理器耦合的存储器,所述存储器具有存储于其中的指令,所述指令在被所述处理器执行时使所述设备执行动作,所述动作包括:收集漏洞的数据,...

【专利技术属性】
技术研发人员:陈梦欢单轲盛荣倪嘉呈龚旻
申请(专利权)人:戴尔产品有限公司
类型:发明
国别省市:

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

1