基于弱点相关性的网络安全性分析方法探讨
2013-10-19王永乐葛红央许昌职业技术学院河南许昌461000
王永乐 葛红央(许昌职业技术学院,河南 许昌 461000)
随着科技的不断发展,网络攻击者们已经不再满足于利用单个弱点来攻击网络了,他们对不同主机的多个弱点进行组合式攻击,给网络安全带来了极大的威胁。人们为了对特定网络系统的安全性进行评估,开始对其安全性进行深入的、全面的安全分析。而在分析方法上,目前有很多人在使用关于综合性多弱点与多主机的安全评估分析方法。而本文则主要是从实用的角度入手,对网络的安全性进行分析,介绍了如何通过弱电相关图片识别安全漏洞,以及对网络系统的安全性进行改善的方法。
1 弱点相关性的定义及相关矩阵的研究
1.1 弱点相关性的定义
攻击者可以在特定的网络系统中,通过对某个节点的弱点来获取一些特定权限,并以此为基础通过另一个弱点继续攻击,并通过重复这一过程达到最终的攻击目的。这种攻击方法说明了弱点间是具有关联性的,这些弱点可以存在于不同网络节点上,也可以是存在于同一主机的不同软件上。所以,我们可以利用弱点间的相关性,全面的考虑多个弱点对网络产生的影响,对网络系统的安全性做出更准确的评估并找出更为合适的漏洞修补方法。
1.2 弱点相关矩阵
两个弱点间的相关性通过函数 c(ν1,ν2)来表示,函数的取值为 1或0, ν1,ν2∈V,若弱点v1的利用是弱点v2攻击的前提条件,就有 c(ν1,ν2)=1,反之,则有 c(ν1,ν2)=0。 通过如今已知的弱点,我们可以分析出它的攻击结果与利用条件,并得出两个弱点间的相关性。将所有的相关性组合起来,就能形成一个以1与0元素为基础元素的矩阵。
定义②:仍将所有已知弱点的集合设为V,N为弱点的总数,弱点的相关矩阵为 CN×N=[Cj,j],Cj,j=c(νi,νj),这里的 νi,νj∈V,1≦i≦N,1≦j≦N。
弱点 vi的相关度 Rvi=Σ(ci,j+cj,i)-ci,i。该相关度能够在一定程度上将该弱点被利用的可能性反应出来。弱点被利用的可能性会随着相关度的增大而增大。
2 安全性分析方法
本文所使用的安全性分析方法是以单调性假设为基础的,攻击图是能够通过正、反向搜索而生成的。正向搜索生产是以攻击者为主,模拟出攻击者将会实施的攻击行为并生产攻击图。而反向搜索生成则是从攻击目标入手,回退找寻有关攻击行为,一直追溯到网络初始状态时,攻击者所发动的攻击为止。在弱点相关矩阵的帮助下,弱点相关图能够利用正、反向搜索来生成。
攻击者在攻击网络时,会从自身主机出发,随机对一台其能到达的主机的某个弱点展开攻击,再通过弱点相关性,继续攻击该主机的或与其相连的其他主机的漏洞,直至攻击者完成最终攻击目的为止。在网络中,被攻击的弱点序列组成了这个网络系统的VCG,以此为基础,其深度优先的、正向的弱点相关图具体生成算法如下:
第一步,攻击者进入在初始状态能够达到的一台网络主机h。
第二步,从h中选出和前一个弱点有相关性但没被使用过的弱点νi;若对ν1的利用攻击结果就是攻击者的最终目的,那么在VCG上就会记录νi在这个网络系统的攻击链中。反之,则会按照νi的相关性,通过h能够到达的网络中找到一台未经使用的主机h1,或继续在主机h上进行操作,而主机h1至少应该有一个弱点(νj)是以为 νi前提的,若 h1≠h,就必须有 νj≠νi;若 h1符合要求,则在 h1上重复第二步,若不符合要求,就在h上另找一个弱点继续重复第二步,直至h上所有弱点都用完为止。
第三步,从攻击者在初始状态下能够到达的网络主机中,另选一台主机h2,重复第二步,直至遍历攻击者于初始状态下能够到达的全部网络主机。
假设在网络中有主机X台,具有主机标示的弱点集中的元素最多不超过M个,则以弱点相关矩阵为基础的VCGA搜索的深度最大即为X,因为VCGA在分析攻击链时一直是在向前搜索,每一个弱点的行惯性只能出现一个状态,所以,VCG的节点最多为Σc(νj,νi)≤M2个,其中的 νi,νj取的是 Vx 中的最弱点。由此可以看出,VCG分析方法是可以避免,利用原有模型检测攻击形成网络攻击图中,因冗余信息而导致的指数级状态爆炸的现象。除此之外,正向搜索能够确保因VCGA而生产的VCG是非常完善的。
3 安全性分析实例
这个网络系统中利用VCGA生产VCG。所用的网络结构图如图1。
图1
在这个网络环境内,其内部的局域网主机有两台,分别为H1、H2,在H1上运行的是SSH与FTP服务,在H2上运行的是FTP及数据库服务;另在网络外部设有主机H0,H0和H1、H2由路由器进行连接并通过防火墙进行隔离。H0是攻击者的主机,其目标是获得H2上的root权限。H1与H2中的几种弱点如表1。
表1 H1与H2中的弱点分析
从弱点相关矩阵中取出与本例中几种弱点相关的部分,组成矩阵 CP4X4=[cpi,j],而 cpi,j=c(νi,νj),并且 1≤i≤4,1≤j≤4,同时有
通过VCGA,由H0出发,遍历H1与H2,生成这个网络系统的VCG,如图2。
图2
其中H0是攻击者的主机,H2是目标主机,括号中的各个弱点的执行顺序是自左至右的。我们可以看出在通过VCGA生成的VCG中,到达攻击目标的攻击链一共有三条。本文VCGA所产生的状态空间一共有49个,而随着网络主机的增多,本文介绍的方法所产生的状态数将会有更明显的减少。
从上图中我们能够看出,H2上的ν2、ν3、ν4这三个弱点在三条攻击链上是都会被利用到的,所以系统管理员在进行修补时应该优先考虑这三个。由于在每一条攻击链上这三个弱点都是串联的,所以只要将其中一个弱点修补好,攻击者就无法在H2上实现获得root权限的目标,其对提高这个网络系统的安全性的效果是非常好的。
4 总结
本文对文献[3]中关于弱点相关性方面的内容进行了拓展,并以此为基础,给出了以正向深度优先及单调性假设为基础的,VCG生成算法,并通过相关实例对VCG生成算法修补网络系统弱点的作用进行了说明。同其他方法相比,VCG生成算法的节点最多不会超过M2个,所以不会出现指数级状态爆炸的现象,同时它对网络系统关键弱点的判断也非常有帮助。
[1]王炜.基于弱电相关性的网络安全性分析方法[J].价值工程,2013(18)
[2]谢朝海,陶然,李志勇,李继勇.基于弱电相关性的网络安全性分析方法[C].全国网络与信息安全技术研讨会论文集,2007(01)
[3]陈臻.从弱点相关性论网络安全性分析措施[J].无线互联科技,2012(15)
[4]王益忠.论基于弱点相关性的网络安全性分析[J].计算机光盘软件与应用,2012(01)