攻击图
定义
攻击图是一种有向图,展示了攻击者可能发动的攻击顺序和攻击效果,由顶点和有向边两部分构成。
在理论上攻击图可以构建完整的网络安全模型,反映网络中各个节点的脆弱性并刻画出攻击者攻陷重要节点的所有途径,弥补了以往技术只能根据漏洞数量和威胁等级评估节点和全网的安全性,而不能根据节点在网络中的位置和功能进行评估的缺陷。
规则 和 推导 是攻击图理论的核心。
攻击图的规则系统由许许多多的规则组成,而攻击图的推导引擎依据规则系统自动完成攻击路径的推导。
攻击路径就是从“初始条件”到“要证目标”的推导过程,将这个推导过程可视化便成了攻击树;由于推导过程可能有多种可能,就有多条攻击树,形成了攻击图。
状态攻击图
在状态攻击图中可以有多个状态顶点表示同一种全局状态。 随着状态的迁移,过于快速的状态增长使状态攻击图难以被应用到大规模网络中,且状态攻击图在视觉上不够直观,因此目前已少有针对状态攻击图的研究。
属性攻击图
概念定义
属性攻击图通常包含2类顶点和2类边:
-
顶点:
-
漏洞:存在漏洞的服务和通过利用该漏洞攻击者可以获取的权限,在图中表示为矩形顶点;
-
条件:攻击者当前所具有的权限,在图中表示为椭圆顶点。
-
-
边:
- 条件->漏洞:漏洞的前置条件;
- 漏洞->条件:漏洞的后置条件。
当漏洞顶点的全部前置条件都满足时该漏洞才被成功利用;任意一个条件顶点,只要是将其作为后置条件的某个漏洞被成功利用,都认为该条件可以被满足。
表示方式
属性攻击图通常可表示为 \(AG=(C,V,E)\) ,其中:
- \(C\) 表示条件集合(包括所有初始条件、前置条件和后置条件);
- \(V\) 表示漏洞集合;
- \(E\) 表示边集合。
条件
\(AG\) 满足以下条件:
对于 \(∨q∈ V\), \(Pre(q)\) 为前置条件集合,\(Post(q)\) 为后置条件集合,则有 \((∧Pre(q)) → (∧Post(q))\) 。
表明满足所有前置条件时可完成漏洞利用,从而满足该漏洞的所有后置条件。
贝叶斯攻击图
概念定义
在贝叶斯网络中,初始节点被赋予概率值,有向边表示了节点之间的因果关系,根据初始节点的概率值和节点间的因果关系可推导出后续所有节点的条件概率。
因此,目前对攻击路径发生概率和节点被攻陷概率的计算研究,大多基于贝叶斯网络进行,通常将基于贝叶斯网络的攻击图称为贝叶斯攻击图。
评估标准
目前计算漏洞被利用概率一般通过 通用漏洞评分系统 (CVSS, common vulnerability scoring system ) 评分计算得到。
CVSS 是安全内容自动化协议(SCAP)的一部分,通常 CVSS 同 CVE 一同由美国国家漏洞库(NVD)发布并保持数据的更新。
CVSS 3.0 的中文说明文档:CVSS 3.0 计算公式及说明 ,目前最新版本为 CVSS 3.1,相关文档可在官网查阅。