攻击图路径类指标的优化计算

Extending Attack Graph-Based Security Metrics and Aggregating Their Application


一、摘要

攻击图是一种基于模型的网络安全评估技术。它从攻击者的角度出发,在综合分析多种网络配置和脆弱性信息的基础上,找出所有可能的攻击路径,并提供了一种表示攻击过程场景的可视化方法,从而帮助网络安全管理人员直观地理解目标网络内各个脆弱性之间的关系、脆弱性与网络安全配置之间的关系以及由此产生的潜在威胁。基于攻击图模型的网络安全评估技术是在攻击图的基础上进行深入的安全评估建模和分析,给出安全评估的建议。
本文评价了攻击图传统指标中的不足,提出了新的评估指标:Normalized Mean of Path Lengths Metric(归一化攻击路径长度)、Standard Deviation of Path Lengths Metric(攻击路径长度标准差)、Mode of Path Lengths Metric(攻击路径长度的众数)、Median of Path Lengths Metric(攻击路径长度的中位数)。

二、相关工作

(一)攻击图

在这里插入图片描述

有三台主机,编号123。host1的用户不应该在host3上获得root权限或者可以执行任意代码。PwAuth代表通过PwAuth程序进行身份认证,XdmLog代表X Window Display Manager(XDM)登录攻击,WUFTPD表示对FTP服务器软件上的WuarchiveFTPD的攻击。攻击者有两个起点:PwAuth(1,2)或exec(1),。从PwAuth(1,2)中,攻击者可以利用WUFTPD(1,2)漏洞来获得主机2(即exec(2))上的EXEC特权。另外,从exec(1)的初始状态中,攻击者可以使用XdmLog(1,2)漏洞到达exec(2)。从exec(2)中,攻击者可以使用WUFTPD(2,3)漏洞达到目标状态(即su(3)或exec(3))

(二)传统指标存在的问题

我们往往会定义一些指标来衡量这个网络的安全性。传统的一些评估指标有攻击路径数量,最短攻击路径长度,攻击路径平均长度。最短攻击路径越短的网络越危险,因为攻击者攻占需要的步骤少;攻击路径数量越大的网络越危险,因为攻击者可以选择的攻击方式更多,更有可能找到一个不被发现的攻击路径;攻击路径平均长度越大的越安全,这表示攻击者需要的平均攻击步骤更多。

下面分别进行说明:
首先声明攻击路径的长度计算可以单纯计算漏洞数量,可以单纯计算主机数量,也可以二者兼顾,本文按照漏洞数量计算路径长度!!!

最短攻击路径长度初衷是反映攻击者攻占主机最少可以花费的步骤。它仅仅关注于最短路径的长度,并没有关注其他路径的相关信息。此外,最短路径长度也仅仅关注的一个长度值,在这条攻击路径上的漏洞是否容易被触发也没有考虑到,下面举例说明:
给定两个网络Gi和Gj
在这里插入图片描述
在这里插入图片描述
对于Gi中最短攻击路径长度无疑是1,而且7条路径全都是1;对于Gj中最短的攻击路径也是1(s->V1->g),但是明显可以发现Gj中的其他攻击路径长度大于1。从指标上来看,二者最短路径长度相同。但是很明显二者的安全性不同,Gj看起来要比Gi安全一些。
小结:最短攻击路径指标没有达到预期的比较效果,当出现两个网络最短攻击路径长度相等的时候无法继续判断;另外当管理员修复了除开最短路径的其他路径上的漏洞时,最短路径长度不变,这也表示这个指标不够敏感,不能实时表示安全程度。

攻击路径数量表示攻击者有多少种攻击方法可以选择,攻击路径数量越多,表示攻击者越有可能绕开安全检测,然而这个指标存在的问题是忽视了每一条攻击路径的长度。还是拿Gi和Gj来说明,二者的攻击路径条数都是7,但是明显Gj要比Gi更长一些,所以得出的结论应该是Gj更安全一些。

平均攻击路径长度表示的攻击者预期的攻击代价。在现实情况中,攻击者往往不会选择最短路径攻击,因为最短路径往往会被重点监控。这一指标存在的问题是对网络状态的更新不够友好。举例说明:Gi修复了V14和V15漏洞,很明显修复漏洞之后,网络一定是更安全的,但是修复前后平均路径长度不变;另外当网络中扫描出新的漏洞,更新到攻击图中时,可能会导致攻击路径条数增加。平均攻击路径长度的计算是用攻击路径长度之和/攻击路径条数。当网络中添加了新的漏洞,计算式的分子和分母会同时改变,最后变化趋势不好说。

三、实验

(一)本实验用到的指标

结合第二章中传统攻击图指标存在的问题,本文提出了新的评估指标:归一化的路径平均长度(Normalized Mean of Path Lengths Metric)、路径长度标准差(Standard Deviation of Path Lengths Metric)、攻击路径长度中的众数(Mode of Path Lengths Metric)、路径长度的中位数(Median of Path Lengths Metric),除了路径类的指标,本文后边还结合了论文中提出的其他指标,包括网络中被控制利用主机比例(The Network Compromise Percentage Metric )、最弱敌手(The Weakest Adversary Metric),下面将依次介绍这些指标的定义和计算方法。
归一化路径平均长度(NMPL)
前面路径均值指标没有考虑到路径数量,所以用算出来的路径均值/路径数量得到新的指标NMPL,计算公式如下:

在这里插入图片描述
在这里插入图片描述
之前平均路径长度在处理Gi图中删除两个漏洞结点的问题上表现不佳,删除前后,平均路径长度(MPL)不变。本小节提出的归一化平均路径长度在删除前后,数值上从1/7变成了1/5。不难推断,归一化平均路径长度越大,系统越安全。

路径长度标准差(MPL)
MPL计算了一个标准差,标准差的意义在于看看数据分布的情况。计算公式如下:
在这里插入图片描述
(后面会结合具体场景计算)

攻击路径长度众数(MoPL)
攻击者完成攻占,需要选择一条攻击路径。而管理员在无法得知攻击者的攻击偏好的情况下,会将所有攻击路径概率均分。该指标目的在于计算出现频繁的路径长度,也就是找到攻击路径长度中的众数。这个指标能表现出攻击者的偏好选择,它并不能像攻击路径长度均值一样动态变化,但是在处理异常的边界值的时候很不错。计算公式如下:
在这里插入图片描述

攻击路径长度中位数(MePL)
该指标是找出攻击路径长度的中位数,管理员可以重点关注路径长度小于等于中位数的那些路径。计算公式如下:
在这里插入图片描述
公式也比较容易理解,找中位数需要分奇偶情况简单讨论一下。

被利用主机比例(NCP)
在这里插入图片描述

公式中C表示总的主机数量,H表示攻击者可以利用的主机,v表示一台主机的资产价值。 这一指标的适用范围是攻击者没有明确说就要攻占某一台主机,而是想尽可能攻占多的主机,获得尽可能多的资产。
我认为存在的问题:公司资产肯定不是说平均每一台机器都相近,一定是会将重要资产集中在一片或者几片。而这个指标对这个并没有描述,如果攻击者攻占了资产价值较低的主机,可能这个指标变化就很不明显,或者就没有变化。

最弱敌手(WA)
和最短路径指标类似,想用最弱部分表示网络的安全性(和木桶装水类似)。这个最弱部分和网络的初始配置有关
在这里插入图片描述
公式中A表示导致攻击成功的一组初始条件。γ是管理员需要定义的。

结合Gi和Gj两张攻击图,计算前面提到的指标,结果如下:
在这里插入图片描述
在处理攻击图问题的时候,可以定义一个数组,数组的大小对应路径数,数组中的每个元素对应攻击路径长度。这样就可以把一个二维图问题转换为一维问题。Gi得到的数组为[1,1,1,1,1,1,1],Gj得到的数组为[1,2,2,2,3,3,5]。
SP指标需要找出这两个数组中的最小值,Gi和Gj的最小值都是1
NP指标对于数组中元素个数,Gi和Gj中包含的攻击路径都是7条
MPL指标表示攻击路径平均长度。  MPL(Gi)=(1+1+1+1+1+1+1)/7=1     MPL(Gj)=(1+2+2+2+3+3+5)/7=2.57142
NMPL表示归一化平均路径长度。   NMPL(Gi)=1/7=0.1428     NMPL(Gj)=2.5/7=0.35714(好像有点不规范,应该用18/49的)。
SDPL指标表示攻击路径标准差。
在这里插入图片描述
在这里插入图片描述
MoPL指标表示众数,Gi的众数是1,Gj的众数是2
MePL指标表示中位数,Gi的中位数是1,Gj的中位数是2
结合上述信息,图Gj应该重点关注长度小于中位数长度的路径。根据标准差的意义能大概知道Gj中,路径长度大约在1-3。

(二)实验相关细节

实验的目的是通过计算上面提到的评估指标,判断网络的安全程度。通过前面的例子可以发现,通过单个指标得到的结果太过单薄也不够准确。因此需要多个指标共同起作用,这也就需要定义好每个指标的权重和优先级。规定如下:
在这里插入图片描述
把指标分成两大类:关键性指标(Decisive)和辅助性指标(Assistive)。在比较两个网络的安全程度时,先比较关键性指标,如果关键性指标无法区分开两个网络,就接着用辅助性指标判断。需要注意:关键性指标中先看SP,NP,NMPL,当这三个指标相同时,接着比较关键性指标中的NCP和WA。

结合前面计算的指标值,可以得到如下表:
在这里插入图片描述
右侧表示哪一个网络更安全。会发现这样一个结果,SP和NP的值相同导致无法分辨出Gi和Gj的安全程度哪个高。需要接着看后面的指标值分析。后面的指标值都选择了Gj。综上,Gj要比Gi安全一些。

除了Gi和Gj外,还进行了随机网络状态模拟验证实验。网络的攻击路径是1到2000的一个随机数,每一条攻击路径长度是1到50的一个随机数。模拟的结果如下:
在这里插入图片描述
表中的DMs:表示决定性指标;AMs:表示辅助性指标;Overall:是DM和AM可以共同决定的比例;Strictly by DMs:表示所有使用的DM指标在比较时都认为某一张图安全的比例(所有的DM指标都给出一致的答案);Majority by DMs:表示DM中的大多数指标认为某一张图安全的比例;Equal by DMs:可能想表达的是用DM无法判断安全性的比例;Strictly with AMs、Majority with AMs和Equal by AMs定义类比DM。

四、总结

本文分析了传统攻击图路径指标存在的一些问题,针对这些问题提出新的指标度量。并通过实验对度量值的有效性进行了验证,实验结果表明,多数情况下,多个度量值组合判断能确定两张攻击图中哪一个更安全。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值