王永樂 葛紅央(許昌職業(yè)技術(shù)學(xué)院,河南 許昌 461000)
隨著科技的不斷發(fā)展,網(wǎng)絡(luò)攻擊者們已經(jīng)不再滿足于利用單個弱點來攻擊網(wǎng)絡(luò)了,他們對不同主機的多個弱點進行組合式攻擊,給網(wǎng)絡(luò)安全帶來了極大的威脅。人們?yōu)榱藢μ囟ňW(wǎng)絡(luò)系統(tǒng)的安全性進行評估,開始對其安全性進行深入的、全面的安全分析。而在分析方法上,目前有很多人在使用關(guān)于綜合性多弱點與多主機的安全評估分析方法。而本文則主要是從實用的角度入手,對網(wǎng)絡(luò)的安全性進行分析,介紹了如何通過弱電相關(guān)圖片識別安全漏洞,以及對網(wǎng)絡(luò)系統(tǒng)的安全性進行改善的方法。
攻擊者可以在特定的網(wǎng)絡(luò)系統(tǒng)中,通過對某個節(jié)點的弱點來獲取一些特定權(quán)限,并以此為基礎(chǔ)通過另一個弱點繼續(xù)攻擊,并通過重復(fù)這一過程達到最終的攻擊目的。這種攻擊方法說明了弱點間是具有關(guān)聯(lián)性的,這些弱點可以存在于不同網(wǎng)絡(luò)節(jié)點上,也可以是存在于同一主機的不同軟件上。所以,我們可以利用弱點間的相關(guān)性,全面的考慮多個弱點對網(wǎng)絡(luò)產(chǎn)生的影響,對網(wǎng)絡(luò)系統(tǒng)的安全性做出更準(zhǔn)確的評估并找出更為合適的漏洞修補方法。
兩個弱點間的相關(guān)性通過函數(shù) c(ν1,ν2)來表示,函數(shù)的取值為 1或0, ν1,ν2∈V,若弱點v1的利用是弱點v2攻擊的前提條件,就有 c(ν1,ν2)=1,反之,則有 c(ν1,ν2)=0。 通過如今已知的弱點,我們可以分析出它的攻擊結(jié)果與利用條件,并得出兩個弱點間的相關(guān)性。將所有的相關(guān)性組合起來,就能形成一個以1與0元素為基礎(chǔ)元素的矩陣。
定義②:仍將所有已知弱點的集合設(shè)為V,N為弱點的總數(shù),弱點的相關(guān)矩陣為 CN×N=[Cj,j],Cj,j=c(νi,νj),這里的 νi,νj∈V,1≦i≦N,1≦j≦N。
弱點 vi的相關(guān)度 Rvi=Σ(ci,j+cj,i)-ci,i。該相關(guān)度能夠在一定程度上將該弱點被利用的可能性反應(yīng)出來。弱點被利用的可能性會隨著相關(guān)度的增大而增大。
本文所使用的安全性分析方法是以單調(diào)性假設(shè)為基礎(chǔ)的,攻擊圖是能夠通過正、反向搜索而生成的。正向搜索生產(chǎn)是以攻擊者為主,模擬出攻擊者將會實施的攻擊行為并生產(chǎn)攻擊圖。而反向搜索生成則是從攻擊目標(biāo)入手,回退找尋有關(guān)攻擊行為,一直追溯到網(wǎng)絡(luò)初始狀態(tài)時,攻擊者所發(fā)動的攻擊為止。在弱點相關(guān)矩陣的幫助下,弱點相關(guān)圖能夠利用正、反向搜索來生成。
攻擊者在攻擊網(wǎng)絡(luò)時,會從自身主機出發(fā),隨機對一臺其能到達的主機的某個弱點展開攻擊,再通過弱點相關(guān)性,繼續(xù)攻擊該主機的或與其相連的其他主機的漏洞,直至攻擊者完成最終攻擊目的為止。在網(wǎng)絡(luò)中,被攻擊的弱點序列組成了這個網(wǎng)絡(luò)系統(tǒng)的VCG,以此為基礎(chǔ),其深度優(yōu)先的、正向的弱點相關(guān)圖具體生成算法如下:
第一步,攻擊者進入在初始狀態(tài)能夠達到的一臺網(wǎng)絡(luò)主機h。
第二步,從h中選出和前一個弱點有相關(guān)性但沒被使用過的弱點νi;若對ν1的利用攻擊結(jié)果就是攻擊者的最終目的,那么在VCG上就會記錄νi在這個網(wǎng)絡(luò)系統(tǒng)的攻擊鏈中。反之,則會按照νi的相關(guān)性,通過h能夠到達的網(wǎng)絡(luò)中找到一臺未經(jīng)使用的主機h1,或繼續(xù)在主機h上進行操作,而主機h1至少應(yīng)該有一個弱點(νj)是以為 νi前提的,若 h1≠h,就必須有 νj≠νi;若 h1符合要求,則在 h1上重復(fù)第二步,若不符合要求,就在h上另找一個弱點繼續(xù)重復(fù)第二步,直至h上所有弱點都用完為止。
第三步,從攻擊者在初始狀態(tài)下能夠到達的網(wǎng)絡(luò)主機中,另選一臺主機h2,重復(fù)第二步,直至遍歷攻擊者于初始狀態(tài)下能夠到達的全部網(wǎng)絡(luò)主機。
假設(shè)在網(wǎng)絡(luò)中有主機X臺,具有主機標(biāo)示的弱點集中的元素最多不超過M個,則以弱點相關(guān)矩陣為基礎(chǔ)的VCGA搜索的深度最大即為X,因為VCGA在分析攻擊鏈時一直是在向前搜索,每一個弱點的行慣性只能出現(xiàn)一個狀態(tài),所以,VCG的節(jié)點最多為Σc(νj,νi)≤M2個,其中的 νi,νj取的是 Vx 中的最弱點。由此可以看出,VCG分析方法是可以避免,利用原有模型檢測攻擊形成網(wǎng)絡(luò)攻擊圖中,因冗余信息而導(dǎo)致的指數(shù)級狀態(tài)爆炸的現(xiàn)象。除此之外,正向搜索能夠確保因VCGA而生產(chǎn)的VCG是非常完善的。
這個網(wǎng)絡(luò)系統(tǒng)中利用VCGA生產(chǎn)VCG。所用的網(wǎng)絡(luò)結(jié)構(gòu)圖如圖1。

圖1
在這個網(wǎng)絡(luò)環(huán)境內(nèi),其內(nèi)部的局域網(wǎng)主機有兩臺,分別為H1、H2,在H1上運行的是SSH與FTP服務(wù),在H2上運行的是FTP及數(shù)據(jù)庫服務(wù);另在網(wǎng)絡(luò)外部設(shè)有主機H0,H0和H1、H2由路由器進行連接并通過防火墻進行隔離。H0是攻擊者的主機,其目標(biāo)是獲得H2上的root權(quán)限。H1與H2中的幾種弱點如表1。

表1 H1與H2中的弱點分析
從弱點相關(guān)矩陣中取出與本例中幾種弱點相關(guān)的部分,組成矩陣 CP4X4=[cpi,j],而 cpi,j=c(νi,νj),并且 1≤i≤4,1≤j≤4,同時有

通過VCGA,由H0出發(fā),遍歷H1與H2,生成這個網(wǎng)絡(luò)系統(tǒng)的VCG,如圖2。

圖2
其中H0是攻擊者的主機,H2是目標(biāo)主機,括號中的各個弱點的執(zhí)行順序是自左至右的。我們可以看出在通過VCGA生成的VCG中,到達攻擊目標(biāo)的攻擊鏈一共有三條。本文VCGA所產(chǎn)生的狀態(tài)空間一共有49個,而隨著網(wǎng)絡(luò)主機的增多,本文介紹的方法所產(chǎn)生的狀態(tài)數(shù)將會有更明顯的減少。
從上圖中我們能夠看出,H2上的ν2、ν3、ν4這三個弱點在三條攻擊鏈上是都會被利用到的,所以系統(tǒng)管理員在進行修補時應(yīng)該優(yōu)先考慮這三個。由于在每一條攻擊鏈上這三個弱點都是串聯(lián)的,所以只要將其中一個弱點修補好,攻擊者就無法在H2上實現(xiàn)獲得root權(quán)限的目標(biāo),其對提高這個網(wǎng)絡(luò)系統(tǒng)的安全性的效果是非常好的。
本文對文獻[3]中關(guān)于弱點相關(guān)性方面的內(nèi)容進行了拓展,并以此為基礎(chǔ),給出了以正向深度優(yōu)先及單調(diào)性假設(shè)為基礎(chǔ)的,VCG生成算法,并通過相關(guān)實例對VCG生成算法修補網(wǎng)絡(luò)系統(tǒng)弱點的作用進行了說明。同其他方法相比,VCG生成算法的節(jié)點最多不會超過M2個,所以不會出現(xiàn)指數(shù)級狀態(tài)爆炸的現(xiàn)象,同時它對網(wǎng)絡(luò)系統(tǒng)關(guān)鍵弱點的判斷也非常有幫助。
[1]王煒.基于弱電相關(guān)性的網(wǎng)絡(luò)安全性分析方法[J].價值工程,2013(18)
[2]謝朝海,陶然,李志勇,李繼勇.基于弱電相關(guān)性的網(wǎng)絡(luò)安全性分析方法[C].全國網(wǎng)絡(luò)與信息安全技術(shù)研討會論文集,2007(01)
[3]陳臻.從弱點相關(guān)性論網(wǎng)絡(luò)安全性分析措施[J].無線互聯(lián)科技,2012(15)
[4]王益忠.論基于弱點相關(guān)性的網(wǎng)絡(luò)安全性分析[J].計算機光盤軟件與應(yīng)用,2012(01)