一种基于软件包命名矩阵的软件漏洞识别方法与系统技术方案

技术编号:32725766 阅读:14 留言:0更新日期:2022-03-20 08:31
本发明专利技术公开了一种基于软件包命名矩阵的软件漏洞识别方法,提取漏洞数据的CPE信息;将待检测软件的包名与所述CPE信息中的原始包名进行匹配;如果原始包名匹配失败,则基于所述原始包名查询软件包命名矩阵,以获取所述原始包名的别名,并将待检测软件的包名与所述CPE信息中的别名进行匹配;如果原始包名或者别名匹配成功,则将待测软件的版本号与所述CPE信息中的版本号进行匹配;如果版本号匹配成功,则过滤出该漏洞数据,作为第一优先漏洞数据;如果版本号匹配失败,则过滤出该漏洞数据,作为第二优先漏洞数据;如果别名匹配失败,则判断该漏洞数据不影响待测软件。提高了过滤器的覆盖率,为待检测软件的最终安全漏洞分析结果提供了全面的数据基础。提供了全面的数据基础。提供了全面的数据基础。

【技术实现步骤摘要】
一种基于软件包命名矩阵的软件漏洞识别方法与系统


[0001]本专利技术涉及设备和网络运行安全
,尤其涉及一种基于软件包命名矩阵的软件漏洞识别方法和系统、信息存储介质。

技术介绍

[0002]如何依据已知漏洞库、漏洞公开信息进行目标软件的安全性检测是业内一直以来努力的一个方面。Google为了提升搜索引擎返回的答案质量和用户查询的效率,于2012年提出了知识图谱的概念。知识图谱是以数据集为基础,通过分析处理形成数据间的关系网络并通过可视化进行展示,其本质上是一种结构化的、具有丰富的语义关系的网络。近几年来,随着人工智能的快速发展,知识图谱也获得了长足的发展,并且产生了许多优秀的成果。目前,Minzhe Guo 等提出了一种基于本体的方法来对CVE安全漏洞库进行本体建模(Guo M,WangJ A.An ontology

based approach to model common vulnerabilitiesand exposures ininformation security[C]//ASEE Southest SectionConference.2009.),借助本体中的概念,公理和基本属性,来发现个体之间、个体与概念之间以及概念之间的复杂关系,该方案目前主要是用于漏洞信息的展示,而且存在可视化效果不足以及查询便利性不足的问题。陶耀东等人提出对工业互联网安全漏洞知识库进行了深入的研究(陶耀东,贾新桐,吴云坤.一种基于知识图谱的工业互联网安全漏洞研究方法[J].信息技术与网络安全,2020,39(01):6

13+18.),其挖掘出了漏洞

产品、事件

漏洞和事件

产品的关联关系,并进行了分析,取得了一定的成果,但该方案主要缺点在于其仅仅针对工业互联网漏洞,不具备通用性。

技术实现思路

[0003]鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的技术方案。因此,本专利技术的一个方面,提供了一种基于软件包命名矩阵的软件漏洞识别方法,该方法包括:提取漏洞数据的CPE信息;将待检测软件的原始包名与所述CPE信息中的包名进行匹配;如果原始包名匹配成功,则将待测软件的版本号与所述CPE信息中的版本号进行匹配;如果原始包名匹配失败,则基于所述原始包名查询软件包命名矩阵,以获取所述原始包名的别名,并将获取的别名与所述CPE信息中的包名进行匹配;如果别名匹配成功,则将待测软件的版本号与所述CPE信息中的版本号进行匹配;如果版本号匹配成功,则过滤出该漏洞数据,作为第一优先漏洞数据;如果版本号匹配失败,则过滤出该漏洞数据,作为第二优先漏洞数据;如果别名匹配失败,则判断该漏洞数据不影响待测软件。
[0004]可选的,该方法还包括:判断所述CPE信息是否包含漏洞数据运行环境信息;如果不包含运行环境信息,则不需要进行运行环境信息的匹配;如果包含运行环境信息,则还需要进行运行环境信息的匹配;如果运行环境信息不匹配,则确定该漏洞数据不影响待测软件。
[0005]可选的,该方法还包括:所述运行环境信息为包含running with或者runningon
的字段。
[0006]可选的,则将待测软件的版本号与所述CPE信息中的版本号进行匹配,包括:输入待测软件的版本号与所述CPE信息中的版本号;判断版本号数据是否存在“.”以外的字符,如果存在,则将其他字符替换为“.”;利用“.”分割版本号;从最前面位起按照位比较版本号。
[0007]可选的,从最前面位起按照位比较版本号,包括:判断是否存在字母,如果存在,将当前位的数字与字母分割,并将字母转换为整数类型,再比较大小,数字则直接比较大小,将数值较大的确定为较新版本。
[0008]如果待测软件的版本为较新版本,则判断为模糊漏洞;如果漏洞数据的版本为较新版本,则判断为存在漏洞。
[0009]本专利技术还提供一种基于软件包命名矩阵的软件漏洞识别系统,该系统包括: CPE信息提取模块,用于提取漏洞数据的CPE信息;包名匹配模块,用于将待检测软件的原始包名与所述CPE信息中的包名进行匹配;版本号匹配模块,如果原始包名匹配成功,则将待测软件的版本号与所述CPE信息中的版本号进行匹配;软件包命名矩阵查询模块,如果原始包名匹配失败,则基于所述原始包名查询软件包命名矩阵,以获取所述原始包名的别名;所述包名匹配模块还用于将所述别名与所述CPE信息中的包名进行匹配;如果别名匹配成功,则版本号匹配模块,将待测软件的版本号与所述CPE信息中的版本号进行匹配;漏洞数据过滤模块,如果版本号匹配成功,则过滤出该漏洞数据,作为第一优先漏洞数据;如果版本号匹配失败,则过滤出该漏洞数据,作为第二优先漏洞数据;如果别名匹配失败,则判断该漏洞数据不影响待测软件。
[0010]可选的,该系统还包括:运行环境判断模块,用于判断所述CPE信息是否包含漏洞数据运行环境信息;如果不包含运行环境信息,则不需要进行运行环境信息的匹配;环境信息匹配模块,如果包含运行环境信息,用于进行运行环境信息的匹配,如果运行环境信息不匹配,则确定该漏洞数据不影响待测软件。
[0011]可选的,所述版本号匹配模块包括:版本号获取子模块,用于输入待测软件的版本号与所述CPE信息中的版本号;信息处理子模块,用于判断版本号数据是否存在“.”以外的字符,如果存在,则将其他字符替换为“.”;利用“.”分割版本号;比较子模块,用于从最前面位起按照位比较版本号。
[0012]可选的,所述比较子模块执行下述步骤:判断是否版本信息中是否存在字母;如果存在,将当前位的数字与字母分割,并将字母转换为整数类型,再比较大小,数字则直接比较大小,将数值较大的确定为较新版本;
[0013]本专利技术还提供一种信息存储介质,该信息存储介质存储有计算机程序,所述计算机程序用于执行前面所述的基于软件包命名矩阵的软件漏洞识别方法。
[0014]本申请提供的技术方案,至少具有如下技术效果或优点:本专利技术提供一种解决方案,使得能够根据目标软件包及版本号列表,对多个来源的漏洞数据进行过滤,以过滤出与目标软件相关的漏洞,其中包含通过软件包名矩阵来进行包名的匹配,从而提高过滤器的覆盖率,该技术方案为目标软件的最终安全漏洞分析结果提供了全面的数据基础。
[0015]上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述技术方案和其目的、特征和优
点能够更明显易懂,以下特举本专利技术的具体实施方式。
附图说明
[0016]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0017]图1示出了本专利技术提出的一种基于软件包命名矩阵的软件漏洞识别方法的流程图;
[本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于软件包命名矩阵的软件漏洞识别方法,其特征在于,该方法包括:提取漏洞数据的CPE信息;将待检测软件的原始包名与所述CPE信息中的包名进行匹配;如果原始包名匹配成功,则将待测软件的版本号与所述CPE信息中的版本号进行匹配;如果原始包名匹配失败,则基于所述原始包名查询软件包命名矩阵,以获取所述原始包名的别名,并将所述别名与所述CPE信息中的包名进行匹配;如果别名匹配成功,则将待测软件的版本号与所述CPE信息中的版本号进行匹配;如果版本号匹配成功,则过滤出该漏洞数据,作为第一优先漏洞数据;如果版本号匹配失败,则过滤出该漏洞数据,作为第二优先漏洞数据;如果别名匹配失败,则判断该漏洞数据不影响待测软件。2.根据权利要求1所述的基于软件包命名矩阵的软件漏洞识别方法,其特征还在于,该方法还包括:判断所述CPE信息是否包含漏洞数据运行环境信息;如果不包含运行环境信息,则不需要进行运行环境信息的匹配;如果包含运行环境信息,则还需要进行运行环境信息的匹配;如果运行环境信息不匹配,则确定该漏洞数据不影响待测软件。3.根据权利要求1所述的基于软件包命名矩阵的软件漏洞识别方法,其特征还在于,所述运行环境信息为包含running with或者running on的字段。4.根据权利要求1所述的基于软件包命名矩阵的软件漏洞识别方法,其特征还在于,则将待测软件的版本号与所述CPE信息中的版本号进行匹配,包括:输入待测软件的版本号与所述CPE信息中的版本号;判断版本号数据是否存在“.”以外的字符,如果存在,则将其他字符替换为“.”;利用“.”分割版本号;从最前面位起按照位比较版本号。5.根据权利要求4所述的基于软件包命名矩阵的软件漏洞识别方法,其特征还在于,从最前面位起按照位比较版本号,包括:判断是否存在字母;如果存在,将当前位的数字与字母分割,并将字母转换为整数类型,再比较大小,数字则直接比较大小,将数值较大的确定为较新版本;如果待测软件的版本为较新版本,则判断为模糊漏洞;如果漏洞数据的版本为较新版本,则判断为存在漏洞。6.一种基于软件包命名矩阵的软件漏洞识别系统,其特征在于,该系统...

【专利技术属性】
技术研发人员:杨牧天刘梅罗天悦吴敬征王丽敏
申请(专利权)人:北京中科微澜科技有限公司
类型:发明
国别省市:

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

1