CN115102796B - 基于知识图谱和随机游走策略的漏洞关联评估方法及系统 - Google Patents
基于知识图谱和随机游走策略的漏洞关联评估方法及系统 Download PDFInfo
- Publication number
- CN115102796B CN115102796B CN202211035105.1A CN202211035105A CN115102796B CN 115102796 B CN115102796 B CN 115102796B CN 202211035105 A CN202211035105 A CN 202211035105A CN 115102796 B CN115102796 B CN 115102796B
- Authority
- CN
- China
- Prior art keywords
- vulnerability
- graph
- vertex
- knowledge graph
- vertexes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1433—Vulnerability analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Animal Behavior & Ethology (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于知识图谱和随机游走策略的漏洞关联评估方法及系统,使用知识图谱图形化存储知识的能力,直观显示漏洞之间的关联关系,解决漏洞库可视化程度差、可读性差的问题;利用数据库中获取的攻击之间的关系、攻击和弱点的关系、弱点和漏洞的关系和从实际网络中获取的漏洞和网络节点的关系、网络节点之间的连通关系,实现对漏洞相关数据的高效组织和推理;并对漏洞知识图谱进行点线变换,点线变换图中的实质漏洞顶点同时包含漏洞知识图谱中漏洞实体和网络节点实体的信息,实现对不同网络节点上相同漏洞分开评估;在点线变换图上基于随机游走策略对实质漏洞顶点进行关联评估,可准确得到漏洞的关联攻击可能性以及攻击可能造成的损失。
Description
技术领域
本发明涉及网络安全技术领域,尤其涉及一种基于知识图谱和随机游走策略的漏洞关联评估方法及系统。
背景技术
随着计算机技术和互联网技术的发展,网络安全漏洞问题愈发严峻。一旦不法分子成功利用漏洞发起网络攻击,对个人、企业、国家都有可能造成重大损失。网络安全问题已经成为信息时代人类社会面临的共同挑战,如何更好地管理漏洞、针对漏洞进行修复的研究逐渐成为安全领域的研究重点。而如何评估不同漏洞的危害性大小,从而帮助企业解决漏洞修复的优先级问题,将有限的资源投入到修复和解决更容易被攻击并且被攻击后产生的后果和损失更为严重的高危害性漏洞,是研究修复工作的痛点问题。
攻击者利用漏洞之间的关联关系发起多步攻击已在攻击事件中占据更大比重。而目前行业内通用的漏洞评估体系美国通用漏洞评估体系(CVSS)仅仅从技术层面评估单个漏洞的危害性,没有考虑漏洞之间可能存在的关联关系。
在评估漏洞的危害性时有必要研究漏洞的关联评估。随着网络防御能力的提升,仅仅依靠单步攻击即可完成入侵目的几乎不可能实现,多步攻击已经成为网络攻击主要手段。多步攻击往往是以一系列典型的单步攻击手段组合而成,在攻击过程中利用不同漏洞之间的关联关系,发起攻击。
目前主流的漏洞关联评估方法,首先生成包含漏洞之间的关联关系(即多步攻击中漏洞的利用顺序关系)的漏洞关联图,再根据漏洞关联图利用随机游走等等方法计算漏洞的关联攻击危害性。目前主流的获取漏洞关联关系的方法是先利用传统攻击图生成算法生成攻击图,再根据漏洞关联规则将攻击图简化为漏洞关联图。常用的漏洞关联规则是权限提升规则,即攻击者在利用漏洞前后所拥有的受害主机上的权限的提升。该过程生成的漏洞关联图的质量不仅取决于攻击图生成算法的质量,还与定义的漏洞关联规则有关,引入了更多误差。而且漏洞之间的关联规则是人为定义的,漏洞之间存在的关联关系可解释性较差;在攻击图简化为漏洞关联图过程中还存在资源浪费问题。
此外,传统的漏洞关联评估数据存储在漏洞库中,漏洞和漏洞属性以及漏洞之间的关联关系以文字形式表现,信息可视化程度差、可读性差,漏洞之间潜在的相关性难以直观表达,难以判断漏洞关联图生成的准确性,导致漏洞评估过程可解释性差。
目前,美国国家漏洞库(NVD)将漏洞和弱点对应起来,通用攻击模式和枚举(CAPEC)数据集将攻击模式和弱点关联起来,可以利用通用攻击模式和弱点将漏洞关联起来,首先利用CAPEC数据集的Relationships(显示与此攻击模式相关的其他攻击模式)将攻击关联起来,获得多步攻击中的攻击顺序;利用CAPEC数据集的Related Weakness(与该攻击模式相关的弱点)将攻击和弱点关联起来,获得多步攻击中利用的弱点顺序;再利用NVD数据集中弱点和漏洞的关系,将漏洞和弱点关联起来,获得多步攻击中漏洞的利用顺序,即可得到理想状态下的漏洞关联关系。但是,漏洞只有存在于实际网络中才有意义,以上方式直接利用数据集得到的漏洞关联关系没有考虑到实际网络情况,因此,无法结合实际网络进行漏洞关联评估。
发明内容
本发明的目的是提供一种基于知识图谱和随机游走策略的漏洞关联评估方法及系统,使用知识图谱图形化存储知识的能力,直观的显示出漏洞之间的关联关系,解决漏洞库可视化程度差、可读性差的问题;将漏洞、网络节点、弱点和攻击模式实体以及数据库中获取的攻击之间的关系、攻击和弱点的关系、弱点和漏洞的关系和从实际网络中获取的漏洞和网络节点的关系、网络节点之间的连通关系组织起来,获得实际网络中漏洞的关联关系,实现对漏洞相关数据的高效组织和推理;并根据图论的线图理论对漏洞知识图谱进行点线变换,生成点线变换图,图中的实质漏洞顶点即同时包含了漏洞知识图谱中的漏洞实体和网络节点实体的信息,实现对不同网络节点上的相同漏洞分开评估;随后在点线变换图上基于随机游走策略对实质漏洞顶点进行关联评估,可以准确得到漏洞的关联攻击可能性以及攻击可能造成的损失。
本发明的目的是通过以下技术方案实现的:
一种基于知识图谱和随机游走策略的漏洞关联评估方法,包括:
根据实际网络的漏洞扫描信息和网络节点拓扑关系生成包含漏洞和网络节点及它们的属性信息和关系的知识图谱,再结合外部数据集包含的漏洞、弱点、攻击模式、漏洞与弱点的关系、以及弱点与攻击模式,生成漏洞知识图谱;
基于图论的线图理论对所述漏洞知识图谱进行点边变换,获得点线变换图,将所述点线变换图中包含网络节点信息和网络节点上漏洞信息的顶点称为实质漏洞顶点;
采用随机游走策略,在点线变换图上随机游走,获得每一个实质漏洞顶点的稳态利用概率,并将稳态利用概率作为相应实质漏洞顶点的关联危害性评估结果。
一种基于知识图谱和随机游走策略的漏洞关联评估系统,包括:
漏洞知识图谱构建模块,用于根据实际网络的漏洞扫描信息和网络节点拓扑关系生成包含漏洞和网络节点及它们的属性信息和关系的知识图谱,再结合外部数据集包含的漏洞、弱点、攻击模式、漏洞与弱点的关系、以及弱点与攻击模式,生成漏洞知识图谱;
图的点边变换模块,用于基于图论的线图理论对所述漏洞知识图谱进行点边变换,获得点线变换图,将所述点线变换图中包含网络节点信息和网络节点上漏洞信息的顶点称为实质漏洞顶点;
漏洞关联评估模块,用于采用随机游走策略,在点线变换图上随机游走,获得每一个实质漏洞顶点的稳态利用概率,并将稳态利用概率作为相应实质漏洞顶点的关联危害性评估结果;
结果展示模块,用于根据稳态利用概率,按照从大到小方式对实质漏洞顶点进行排序,并输出排序结果。
一种处理设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序;
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现前述的方法。
一种可读存储介质,存储有计算机程序,当计算机程序被处理器执行时实现前述的方法。
由上述本发明提供的技术方案可以看出:(1)改善了传统的漏洞关联评估过程在利用传统攻击图生成算法和漏洞关联规则生成漏洞关联图过程中引入更多误差和资源浪费问题。(2)利用知识图谱统一组织管理漏洞扫描信息、网络拓扑结构信息、现有数据集,得到漏洞和网络节点的关联关系、网络节点之间的关联关系、漏洞之间的关联关系等,利用知识图谱的可视化能力提高关联评估过程的可解释性。(3)引入图论的线图理论,对漏洞知识图谱进行点边变换,解决关联评估过程中相同漏洞在不同网络节点上的问题,能够准确的对实质漏洞顶点进行关联评估。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例提供的一种基于知识图谱和随机游走策略的漏洞关联评估方法的流程图;
图2为本发明实施例提供的漏洞知识图谱本体模型的示意图;
图3为本发明实施例提供的漏洞知识图谱的示意图;
图4为本发明实施例提供的图的点边变换的示意图;
图5为本发明实施例提供的点边变换的流程图;
图6为本发明实施例提供的一种基于知识图谱和随机游走策略的漏洞关联评估系统的示意图;
图7为本发明实施例提供的一种处理设备的示意图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
首先对本文中可能使用的术语进行如下说明:
术语“包括”、“包含”、“含有”、“具有”或其它类似语义的描述,应被解释为非排它性的包括。例如:包括某技术特征要素(如原料、组分、成分、载体、剂型、材料、尺寸、零件、部件、机构、装置、步骤、工序、方法、反应条件、加工条件、参数、算法、信号、数据、产品或制品等),应被解释为不仅包括明确列出的某技术特征要素,还可以包括未明确列出的本领域公知的其它技术特征要素。
下面对本发明所提供的一种基于知识图谱和随机游走策略的漏洞关联评估方案进行详细描述。本发明实施例中未作详细描述的内容属于本领域专业技术人员公知的现有技术。本发明实施例中未注明具体条件者,按照本领域常规条件或制造商建议的条件进行。本发明实施例中所用试剂或仪器未注明生产厂商者,均为可以通过市售购买获得的常规产品。
实施例一
本发明实施例提供一种基于知识图谱和随机游走策略的漏洞关联评估方法,如图1所示,其主要包括如下步骤:
1、构建漏洞知识图谱。
本发明实施例中,根据实际网络的漏洞扫描信息和网络节点拓扑关系生成包含漏洞和网络节点及它们的属性信息和关系的知识图谱,再结合外部数据集包含的漏洞、弱点、攻击模式、漏洞与弱点的关系、以及弱点与攻击模式,生成漏洞知识图谱。
本发明实施例中,所述漏洞知识图谱中的实体包括:漏洞、网络节点、弱点以及攻击模式,每一实体各自包含对应的属性信息;实体之间的关系包括:不同网络节点之间的关系、网络节点与漏洞之间的关系、网络节点与攻击模式之间的关系、漏洞与弱点之间的关系、弱点与攻击模式之间的关系、以及不同攻击模式之间的关系;漏洞知识图谱中的实体均作为漏洞知识图谱中的顶点,存在关系的顶点之间使用边连接。
本发明实施例中,所述外部数据集可以包括:NVD数据集、中国国家信息安全漏洞共享平台(CNVD)数据集、CAPEC数据集等,利用外部数据集提供的结构化知识来扩充知识图谱,得到漏洞知识图谱,且漏洞知识图谱与实际网络一一对应,即:知识图谱中的网络节点和漏洞以及网络节点和漏洞、网络节点和网络节点之间的关系和实际网络中存在的网络节点、节点上的漏洞对应的。
2、图的点边变换。
本发明实施例中,基于图论的线图(Line Graph)理论对所述漏洞知识图谱进行点边变换,获得点线变换图,将所述点线变换图中包含网络节点信息和网络节点上漏洞信息的顶点,称为实质漏洞顶点。不同网络节点可能存在相同的漏洞,而漏洞在网络拓扑结构中的位置不同,漏洞的关联关系也不同,对这类漏洞应该结合网络节点分别评估该漏洞在不同网络节点上的危害性。通过点边变换得到的实质漏洞顶点结合了网络节点和漏洞信息,可以解决此问题。后续对实质漏洞顶点进行关联危害性排序。
本发明实施例中,所述漏洞知识图谱为全连通图或是由多个互不连通的连通子图组成的非全连通图;对所述漏洞知识图谱进行点边变换时,通过查询得到所有的连通子图,如果所述漏洞知识图谱为全连通图,则查询到的连通子图数目为1,查询到的连通子图等同于所述全连通图,如果所述漏洞知识图谱是由多个互不连通的连通子图组成的非全连通图,则查询到的连通子图数目大于1;基于图论的线图理论,对每个连通子图都进行点边变换操作,步骤包括:将当前连通子图记为G,将当前连通子图G中的边转换为变换后的线图L的顶点,若线图L中两个顶点在当前连通子图G中存在公共顶点,则在线图L两个顶点之间生成一条边,实现当前连通子图G至线图L的变换;如果连通子图数目为1,则所述线图L即为点线变换图,如果连通子图数目大于1,则将所有连通子图变换得到的线图L拼接,获得点线变换图。
3、漏洞关联评估。
本发明实施例中,采用随机游走策略,在点线变换图上随机游走,可获得每一个实质漏洞顶点的稳态利用概率,并将稳态利用概率作为相应实质漏洞顶点的关联危害性评估结果。
本发明实施例中,将漏洞关联评估时的方法流程称为关联评估算法(vulRank),具体来说:
关联评估算法输入:含有N个顶点(其中包括M个实质漏洞顶点)的点线变换图,M<N,M与N均为正整数,相邻顶点之间的转移概率矩阵T a ,顶点之间的随机转移概率矩阵T r ,阻尼因子d,N个顶点的初始利用概率R 0 ,最大迭代次数t,稳态条件f。
关联评估算法输出:点线变换图中N个顶点的稳态利用概率R。
稳态利用概率R计算过程:
步骤(1):令当前迭代次数i=1。
步骤(3):判断是否满足迭代停止条件:i=t,或者计算得到的N个顶点的稳态利用概率与第i-1次迭代时计算出的N个顶点利用概率的差值总和的绝对值r≤f;满足迭代停止条件时,停止迭代,N个顶点的稳态利用概率。
步骤(4):不满足迭代停止条件时,当前迭代次数i=i+1,执行步骤(2)。
通过上述计算获得N个顶点的稳态利用概率R后,从中筛选出每一实质漏洞顶点的稳态利用概率,并作为相应实质漏洞顶点的关联危害性评估结果。
其中,顶点之间转移的方式有两种:相邻顶点之间的转移、顶点之间的随机转移。相邻顶点之间的转移只能发生于顶点通过链出边转移到相邻顶点。相邻顶点之间的转移概率矩阵T a 体现了当前顶点选择以相邻顶点之间的转移方式进行转移时,对于当前顶点而言它选择通过每一条链出边向相邻顶点转移的概率。顶点之间的随机转移可以发生于任意顶点之间,包括:不存在有向边的顶点之间,也可以发生于存在有向边的相邻顶点之间,甚至可以顶点自身发生转移。顶点之间的随机转移概率矩阵T r 体现了当前顶点选择以顶点之间的随机转移方式进行转移时,对于当前顶点而言它选择任一顶点转移的概率;当然,由于本发明希望随机游走步更多的落在实质漏洞顶点,因此,可以设置顶点之间的随机转移只能转移到M个实质漏洞顶点。阻尼因子d即反应了这两种转移方式发生的概率:当前顶点以概率d选择相邻顶点之间的转移方式,以概率1-d选择所有顶点之间的随机转移方式。阻尼因子d和所有顶点之间的随机转移方式能有效防止随机游走过程陷入回路的死循环状态。
点线变换图中有四类边:漏洞边、网络节点边、弱点边、攻击模式边,四类边由相应类别的实体变换得到。不同的网络节点、漏洞受到攻击后可能造成的损失是不同的,不同的攻击模式被攻击者采用的可能性也不同,在关联评估时需要重点关注那些被攻击后可能造成更大损失的网络节点和漏洞以及那些更可能被利用的攻击模式。所以相邻顶点之间的转移概率矩阵T a 在计算相邻顶点通过链出边转移的转移概率时有四类计算方式:漏洞边的转移概率由漏洞实体的属性信息计算得到,网络节点边转移概率由反映网络节点实体重要性的属性信息计算得到,弱点边转移概率取相同常值,攻击模式边转移概率由攻击模式的属性信息计算得到。最后单独对每个顶点的所有链出边的转移概率做归一化处理。这样做不仅充分利用了已知漏洞、网络节点和攻击模式信息,而且在关联评估时还考虑了网络节点和漏洞受到攻击后产生的影响。
4、结果展示。
实质漏洞顶点的稳态利用概率反映了漏洞的关联攻击可能性以及攻击可能造成的损失,利用稳态利用概率进行排序,即可得到实质漏洞顶点的关联危害性排序,具体的,可以根据稳态利用概率按照从大到小方式对实质漏洞顶点进行排序,并输出排序结果,以辅助使用者制定漏洞修复方案。
为了更加清晰地展现出本发明所提供的技术方案及所产生的技术效果,下面以具体实施例对本发明实施例所提供的上述方法进行详细描述。
如图2所示,展示了漏洞知识图谱本体模型,本体是一类实体的抽象概念,实体是具体的信息,其中本体包括:网络节点(host)、漏洞(vul)、弱点(cwe)、攻击模式(capec)四大类。关系包括:connect(节点关联),表示两个网络节点之间存在关联关系;happen(发生),表示某网络节点有可能发生的攻击;affect(影响),表示某网络节点存在漏洞;relate(包含),表示某漏洞与某弱点相关;utilize(利用),表示某攻击模式利用某弱点;ChildOf(父子),表示多步攻击中攻击上一步指向攻击下一步;PeerOf(同级),表示攻击指向同等级攻击。网络节点的属性信息包括;price(网络节点的价格)、role(网络节点在网络中扮演的角色,例如客户端或服务器)、exposure(网络节点暴露面,例如内网或外网等)、ip(网络之间互连的协议地址),前三个属性在一定程度上反映了网络节点的重要性。漏洞的属性包括:ref source(漏洞参考源)、description(漏洞描述)、CVE_ID(漏洞编号)、privilegesRequired(特权要求)、confidentiality(机密性影响)、integrity(漏洞的CVSS评估特征)、availability(可用性影响)、scope(作用域)、attack Vector(攻击路径)、userInteraction(用户交互)、attack Complexity(攻击复杂度)、base Score(漏洞基础危害性得分,该得分未考虑关联关系))、published Date(漏洞公开日期)、补丁(漏洞目前是否已发布官方补丁)。弱点的属性包括:CWE_ID(弱点编号)。攻击模式的属性包括:CAPEC_ID(攻击模式编号)、Likelihood Of Attack(攻击者通过该攻击模式发起攻击的可能性)。
当选择使用图数据库Neo4j(它是一种构建并存储知识图谱的数据库)时,构建漏洞知识图谱模块的知识图谱构建算法可调用Python(计算机编程语言)提供的Py2neo库(它是一种用来对接Neo4j的Python库)操作Neo4j,构建并存储如图3所示漏洞知识图谱。
图的点边变换示例如图4所示,点边变换的流程如图5所示。首先可基于宽度优先搜索算法(BFS)搜索漏洞知识图谱,得到所有的连通子图,python提供的networkx包已实现BFS算法,可利用networkx包的connected_components()方法得到所有的连通子图;然后基于图论的线图理论搜索连通子图G(假设图3为一个漏洞知识图谱的连通子图),将连通子图G中的边转换为变换后的线图L的顶点,若线图L中的两个顶点(即连通子图G中的两个边)在连通子图G中存在公共顶点,则在线图L的这两个顶点之间生成边,实现对连通子图的点线变换;最后拼接所有点线变换后的子图,得到整个漏洞知识图谱的点线变换图。图4所示点边变换示例中,每一个顶点都包含了多类信息,以(漏洞,网络节点)顶点为例,它包含网络节点信息和网络节点上漏洞信息。
漏洞关联评估时,生成VulRank算法,对(漏洞,网络节点)顶点(即前文定义的实质漏洞顶点)排序。在点线变换图中,需要的是顶点之间的网络关系,顶点的类型不重要,可将点线变换图看做同构图处理。
顶点的利用概率用N*1列向量表示,且列向量中前M行依次为实质漏洞顶点。本发明希望随机游走步更多的落在待排序的实质漏洞顶点,初始游走步随机落在M个实质漏洞顶点中的一个,因此初始利用概率R 0 :
其中,T为转置符号。
相邻顶点之间的转移概率矩阵T a 是一个N*N的矩阵,每一行代表一个顶点,该行的每一列代表1个顶点由其链出边(简称为:边)转移到该行代表的顶点的概率(没有链出边则转移概率为0)。其中四类边的转移概率计算方法如下:漏洞边的转移概率可由CVSS给出的单个漏洞评分结果base Score表示,也可由使用者自己计算得到的单个漏洞评估得分表示;网络节点边的转移概率可由(price/5000)*exposure计算得到;弱点边的转移概率可以统一赋值1;攻击模式边的转移概率可以攻击模式的Likelihood Of Attack属性量化得到,如High(高):3,Medium(中):2,Low(低):1;最后单独对每个顶点的链出边的转移概率归一化处理。
顶点之间的随机转移概率矩阵T r 是一个N*N的矩阵,每一行代表一个顶点,该行的每一列代表1个顶点随机转移到该行代表的顶点的概率。由于我们主要是对实质漏洞顶点进行关联评估,计算他们的稳态利用概率,因此我们希望随机游走步更多的落在实质漏洞顶点。类似R 0 ,设置顶点之间的随机转移只能转移到M个实质漏洞顶点。顶点之间的随机转移概率矩阵T r :
其中,上述顶点之间的随机转移概率矩阵T r 的前M行均分别对应一个实质漏洞顶点。
本发明实施例提供的以上方案的主要优点包括:
1、改善了传统的漏洞关联评估过程在利用传统攻击图生成算法和漏洞关联规则生成漏洞关联图过程中引入更多误差和资源浪费问题。
2、利用知识图谱统一组织管理漏洞扫描信息、网络拓扑结构信息、现有漏洞数据集NVD和攻击数据集CAPEC,得到漏洞和主机的关联关系、主机之间的关联关系、漏洞之间的关联关系,利用知识图谱的可视化能力提高关联评估过程的可解释性。
3、引入图论的线图理论,对漏洞知识图谱进行点边变换,解决关联评估过程中相同漏洞在不同主机上的问题,对实质漏洞顶点进行关联评估。
实施例二
本发明还提供一种基于知识图谱和随机游走策略的漏洞关联评估系统,其主要基于前述实施例提供的方法实现,如图6所示,该系统主要包括:
漏洞知识图谱构建模块,用于根据实际网络的漏洞扫描信息和网络节点拓扑关系生成包含漏洞和网络节点及它们的属性信息和关系的知识图谱,再结合外部数据集包含的漏洞、弱点、攻击模式、漏洞与弱点的关系、以及弱点与攻击模式,生成漏洞知识图谱,漏洞知识图谱中的实体均作为漏洞知识图谱中的点,存在关系的顶点之间使用边连接;
图的点边变换模块,用于基于图论的线图理论对所述漏洞知识图谱进行点边变换,获得点线变换图,将所述点线变换图中包含网络节点信息和网络节点上漏洞信息的顶点称为实质漏洞顶点;
漏洞关联评估模块,用于采用随机游走策略,在点线变换图上随机游走,获得每一个实质漏洞顶点的稳态利用概率,并将稳态利用概率作为相应实质漏洞顶点的关联危害性评估结果;
结果展示模块,用于根据稳态利用概率按照从大到小方式对实质漏洞顶点进行排序,并输出排序结果。
本发明实施例中,所述漏洞知识图谱中的实体包括:漏洞、网络节点、弱点以及攻击模式,每一实体各自包含对应的属性信息;实体之间的关系包括:不同网络节点之间的关系、网络节点与漏洞之间的关系、网络节点与攻击模式之间的关系、漏洞与弱点之间的关系、弱点与攻击模式之间的关系、不同攻击模式之间的关系。
由于上述系统所涉及的各项技术细节已经在前述实施例一中做了详细的介绍,故不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将系统的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
实施例三
本发明还提供一种处理设备,如图7所示,其主要包括:一个或多个处理器;存储器,用于存储一个或多个程序;其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现前述实施例提供的方法。
进一步的,所述处理设备还包括至少一个输入设备与至少一个输出设备;在所述处理设备中,处理器、存储器、输入设备、输出设备之间通过总线连接。
本发明实施例中,所述存储器、输入设备与输出设备的具体类型不做限定;例如:
输入设备可以为触摸屏、图像采集设备、物理按键或者鼠标等;
输出设备可以为显示终端;
存储器可以为随机存取存储器(Random Access Memory,RAM),也可为非不稳定的存储器(non-volatile memory),例如磁盘存储器。
实施例四
本发明还提供一种可读存储介质,存储有计算机程序,当计算机程序被处理器执行时实现前述实施例提供的方法。
本发明实施例中可读存储介质作为计算机可读存储介质,可以设置于前述处理设备中,例如,作为处理设备中的存储器。此外,所述可读存储介质也可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (10)
1.一种基于知识图谱和随机游走策略的漏洞关联评估方法,其特征在于,包括:
根据实际网络的漏洞扫描信息和网络节点拓扑关系生成包含漏洞和网络节点及它们的属性信息和关系的知识图谱,再结合外部数据集包含的漏洞、弱点、攻击模式、漏洞与弱点的关系、以及弱点与攻击模式,生成漏洞知识图谱;
基于图论的线图理论对所述漏洞知识图谱进行点边变换,获得点线变换图,将所述点线变换图中包含网络节点信息和网络节点上漏洞信息的顶点称为实质漏洞顶点;
采用随机游走策略,在点线变换图上随机游走,获得每一个实质漏洞顶点的稳态利用概率,并将稳态利用概率作为相应实质漏洞顶点的关联危害性评估结果。
2.根据权利要求1所述的一种基于知识图谱和随机游走策略的漏洞关联评估方法,其特征在于,漏洞知识图谱中的实体包括:漏洞、网络节点、弱点以及攻击模式,每一实体各自包含对应的属性信息;实体之间的关系包括:不同网络节点之间的关系、网络节点与漏洞之间的关系、网络节点与攻击模式之间的关系、漏洞与弱点之间的关系、弱点与攻击模式之间的关系、以及不同攻击模式之间的关系;漏洞知识图谱中的实体均作为漏洞知识图谱中的顶点,存在关系的顶点之间使用边连接。
3.根据权利要求1所述的一种基于知识图谱和随机游走策略的漏洞关联评估方法,其特征在于,所述基于图论的线图理论对所述漏洞知识图谱进行点边变换,获得点线变换图包括:
所述漏洞知识图谱为全连通图或是由多个互不连通的连通子图组成的非全连通图;
对所述漏洞知识图谱进行点边变换时,通过查询得到所有的连通子图,如果所述漏洞知识图谱为全连通图,则查询到的连通子图数目为1,查询到的连通子图等同于所述全连通图,如果所述漏洞知识图谱是由多个互不连通的连通子图组成的非全连通图,则查询到的连通子图数目大于1;基于图论的线图理论,对每个连通子图都进行点边变换操作,步骤包括:将当前连通子图记为G,将当前连通子图G中的边转换为变换后的线图L的顶点,若线图L中两个顶点在当前连通子图G中存在公共顶点,则在线图L两个顶点之间生成一条边,实现当前连通子图G至线图L的变换;
如果连通子图数目为1,则所述线图L即为点线变换图,如果连通子图数目大于1,则将所有连通子图变换得到的线图拼接,获得点线变换图。
4.根据权利要求1所述的一种基于知识图谱和随机游走策略的漏洞关联评估方法,其特征在于,所述采用随机游走策略,在点线变换图上随机游走,获得每一个实质漏洞顶点的稳态利用概率包括:
设置:点线变换图中的顶点数目为N,其中实质漏洞顶点的数目为M,M<N,M与N均为正整数;相邻顶点之间的转移概率矩阵为T a ,顶点之间的随机转移概率矩阵为T r ,将阻尼因子记为d,N个顶点的初始利用概率为R 0 ,最大迭代次数为t,稳态条件为f;并执行如下步骤:
步骤(1):令当前迭代次数i=1;
步骤(2):计算N个顶点的稳态利用概率:;其中,表示第i-1次迭代时计算出的N个顶点的稳态利用概率,i=1时,;阻尼因子d反应了相邻顶点之间的转移以及顶点之间的随机转移发生的概率:顶点以概率d选择相邻顶点之间的转移方式,以概率1-d选择所有顶点之间的随机转移方式,相邻顶点之间的转移是指顶点通过链出边转移到相邻顶点,顶点之间的随机转移发生于任意顶点之间,或者设置顶点之间的随机转移只能转移到M个实质漏洞顶点;
步骤(3):判断是否满足迭代停止条件:i=t,或者计算得到的N个顶点的稳态利用概率与第i-1次迭代时计算出的N个顶点利用概率的差值总和的绝对值r≤f;满足迭代停止条件时,停止迭代,N个顶点的稳态利用概率;
步骤(4):不满足迭代停止条件时,当前迭代次数i=i+1,执行步骤(2)。
5.根据权利要求4所述的一种基于知识图谱和随机游走策略的漏洞关联评估方法,其特征在于,所述相邻顶点之间的转移概率矩阵T a 为N*N的矩阵,每一行代表一个顶点,当前行的每一列代表1个顶点由其链出边转移到当前行代表的顶点的概率,没有链出边则转移概率为0,并单独对每个顶点的所有链出边的转移概率做归一化处理;
链出边的类型包括:漏洞边、网络节点边、弱点边、攻击模式边,每一类链出边表示由相应类别的实体变换得到;每一类链出边对应的转移概率通过下述方式计算:漏洞边的转移概率由漏洞实体的属性信息计算得到,网络节点边转移概率由反映网络节点实体重要性的属性信息计算得到,弱点边转移概率取相同常值,攻击模式边转移概率由攻击模式的属性信息计算得到。
7.根据权利要求1所述的一种基于知识图谱和随机游走策略的漏洞关联评估方法,其特征在于,该方法还包括:根据稳态利用概率,按照从大到小方式对实质漏洞顶点进行排序,并输出排序结果。
8.一种基于知识图谱和随机游走策略的漏洞关联评估系统,基于权利要求1~7任一项所述的方法实现,该系统包括:
漏洞知识图谱构建模块,用于根据实际网络的漏洞扫描信息和网络节点拓扑关系生成包含漏洞和网络节点及它们的属性信息和关系的知识图谱,再结合外部数据集包含的漏洞、弱点、攻击模式、漏洞与弱点的关系、以及弱点与攻击模式,生成漏洞知识图谱;
图的点边变换模块,用于基于图论的线图理论对所述漏洞知识图谱进行点边变换,获得点线变换图,将所述点线变换图中包含网络节点信息和网络节点上漏洞信息的顶点称为实质漏洞顶点;
漏洞关联评估模块,用于采用随机游走策略,在点线变换图上随机游走,获得每一个实质漏洞顶点的稳态利用概率,并将稳态利用概率作为相应实质漏洞顶点的关联危害性评估结果;
结果展示模块,用于根据稳态利用概率,按照从大到小方式对实质漏洞顶点进行排序,并输出排序结果。
9.一种处理设备,其特征在于,包括:一个或多个处理器;存储器,用于存储一个或多个程序;
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1~7任一项所述的方法。
10.一种可读存储介质,存储有计算机程序,其特征在于,当计算机程序被处理器执行时实现如权利要求1~7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211035105.1A CN115102796B (zh) | 2022-08-26 | 2022-08-26 | 基于知识图谱和随机游走策略的漏洞关联评估方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211035105.1A CN115102796B (zh) | 2022-08-26 | 2022-08-26 | 基于知识图谱和随机游走策略的漏洞关联评估方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115102796A CN115102796A (zh) | 2022-09-23 |
CN115102796B true CN115102796B (zh) | 2022-12-30 |
Family
ID=83300451
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211035105.1A Active CN115102796B (zh) | 2022-08-26 | 2022-08-26 | 基于知识图谱和随机游走策略的漏洞关联评估方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115102796B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117610027B (zh) * | 2024-01-23 | 2024-03-29 | 上海齐同信息科技有限公司 | 一种私有协议漏洞检测方法及系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120123981A1 (en) * | 2010-08-04 | 2012-05-17 | Graves Spencer B | Software to facilitate design, data flow management, data analysis and decision support in structural health monitoring systems |
US20210021616A1 (en) * | 2018-03-14 | 2021-01-21 | Intelici - Cyber Defense System Ltd. | Method and system for classifying data objects based on their network footprint |
CN111444317B (zh) * | 2020-03-17 | 2021-11-30 | 杭州电子科技大学 | 一种语义敏感的知识图谱随机游走采样方法 |
CN112104677B (zh) * | 2020-11-23 | 2021-03-02 | 北京金睛云华科技有限公司 | 一种基于知识图谱的受控主机检测方法和装置 |
CN112671716B (zh) * | 2020-12-03 | 2022-07-05 | 中国电子科技网络信息安全有限公司 | 基于图谱的漏洞知识挖掘方法及系统 |
CN114357189A (zh) * | 2021-12-29 | 2022-04-15 | 广州大学 | 一种漏洞利用关系确定方法、装置、设备及存储介质 |
-
2022
- 2022-08-26 CN CN202211035105.1A patent/CN115102796B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115102796A (zh) | 2022-09-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chen et al. | Understanding ethereum via graph analysis | |
CN108933793B (zh) | 基于知识图谱的攻击图生成方法及其装置 | |
Bai et al. | Formal modeling and verification of smart contracts | |
CN105991521B (zh) | 网络风险评估方法和装置 | |
EP4010814A1 (en) | Graph-manipulation based domain-specific execution environment | |
CN112131882A (zh) | 一种多源异构网络安全知识图谱构建方法及装置 | |
Norvill et al. | Automated labeling of unknown contracts in ethereum | |
CN109218304B (zh) | 一种基于攻击图和协同进化的网络风险阻断方法 | |
CN115102796B (zh) | 基于知识图谱和随机游走策略的漏洞关联评估方法及系统 | |
CN114091034A (zh) | 一种安全渗透测试方法、装置、电子设备及存储介质 | |
CN113961923A (zh) | 一种威胁情报获取方法、装置、设备及存储介质 | |
Iyer et al. | Active learning of relationship-based access control policies | |
Wu et al. | TRacer: Scalable graph-based transaction tracing for account-based blockchain trading systems | |
US20230222223A1 (en) | Computer-implemented method for testing the cybersecurity of a target environment | |
Musman et al. | Steps toward a principled approach to automating cyber responses | |
Wideł et al. | The meta attack language-a formal description | |
CN112767155A (zh) | 智能合约安全交易序列生成方法、装置、介质和设备 | |
CN113518086B (zh) | 网络攻击预测的方法、装置及存储介质 | |
Abu-Saleem | Retractions and homomorphisms on some operations of graphs | |
CN114500347A (zh) | 一种对安全互联协议进行形式化验证的方法和系统 | |
Lyu et al. | Analyzing Ethereum Smart Contract Vulnerabilities at Scale Based on Inter-Contract Dependency. | |
US20060167664A1 (en) | Automatically deriving logical, arithmetic and timing dependencies | |
Ponsard et al. | Towards Quantitative Trade-off Analysis in Goal Models with Multiple Obstacles using Constraint Programming. | |
CN111882415A (zh) | 一种质量检测模型的训练方法和相关装置 | |
CN115225338B (zh) | 一种基于知识图谱的漏洞关联图生成方法及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |