亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種求解k最大概率攻擊圖的網(wǎng)絡(luò)安全分析方法

文檔序號(hào):7854988閱讀:133來源:國(guó)知局
專利名稱:一種求解k最大概率攻擊圖的網(wǎng)絡(luò)安全分析方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種網(wǎng)絡(luò)安全分析方法,特別涉及一種求解K最大概率攻擊圖的網(wǎng)絡(luò)安全分析方法。
背景技術(shù)
網(wǎng)絡(luò)安全是提供網(wǎng)絡(luò)服務(wù)的公司所關(guān)注重點(diǎn)問題之一,黑客入侵事件呈上升趨勢(shì),由于黑客攻擊而引起的服務(wù)中斷或數(shù)據(jù)泄露給企業(yè)和個(gè)人用戶都帶來了不可估量的損失。當(dāng)前,單機(jī)安全性掃描技術(shù),和網(wǎng)絡(luò)安全性掃描技術(shù)已經(jīng)比較成熟,能夠發(fā)現(xiàn)給定計(jì)算機(jī)上的安全漏洞,并能夠提供漏洞修復(fù)補(bǔ)丁,但是這些安全掃描工具缺乏對(duì)系統(tǒng)內(nèi)部各漏 洞間安全性關(guān)聯(lián)關(guān)系的分析,而當(dāng)前黑客的攻擊手段,已經(jīng)從利用單個(gè)系統(tǒng)漏洞的單步攻擊,發(fā)展成逐步利用多個(gè)系統(tǒng)漏洞不斷提升自己非法權(quán)限的多步級(jí)聯(lián)攻擊。在多步級(jí)聯(lián)攻擊模式下,黑客可能在A計(jì)算機(jī)的內(nèi)部連續(xù)利用多個(gè)不同的軟件漏洞逐步提升自己的非法權(quán)限,也可能利用B計(jì)算機(jī)上的遠(yuǎn)程漏洞,從A計(jì)算機(jī)向B計(jì)算機(jī)發(fā)起攻擊,從而在B計(jì)算機(jī)上獲取非法訪問權(quán)限或者導(dǎo)致B計(jì)算機(jī)服務(wù)崩潰等嚴(yán)重后果。因此,有效分析給定網(wǎng)絡(luò)中存在的多步級(jí)聯(lián)攻擊,對(duì)分析給定網(wǎng)絡(luò)的安全性有重要指導(dǎo)意義,同時(shí)也為網(wǎng)絡(luò)安全防護(hù)和安全漏洞的修補(bǔ)提供有價(jià)值的參考?,F(xiàn)有技術(shù)中,如P. Ammann, D. Wi jesekera, S. Kaushik 等人在《Proceedingsof the 9th ACM Conference on Computer and Communications Security》2002,217 - 224 頁(yè)上發(fā)表了 “Scalable, Graph-Based Network Vulnerability Analysis”(《第九屆美國(guó)計(jì)算機(jī)協(xié)會(huì)計(jì)算機(jī)通信和安全大會(huì)論文集》,可擴(kuò)展的、基于圖的網(wǎng)絡(luò)脆弱性分析);該文基于C. Phillips和L. P. Swiler在1998年發(fā)表在《Proceedings of the1998workshop on New security paradigms》71-79 頁(yè)上的論文 “A graph-based systemfor network-vulnerability analysis”(《1998年新型安全問題專題討論論文集》,一種基于圖的網(wǎng)絡(luò)脆弱性分析系統(tǒng)),提出了“單調(diào)性”假設(shè),指出黑客攻擊行為通常是逐步獲取更多的權(quán)限,也就是說黑客具備的攻擊能力是逐步提升的,該理論極大的降低了攻擊圖狀態(tài)空間的大小,并且仍然具有描述絕大多數(shù)系統(tǒng)安全性狀態(tài)的能力,而且把計(jì)算攻擊圖的復(fù)雜度從指數(shù)量級(jí)變?yōu)槎囗?xiàng)式量級(jí),使攻擊圖算法能夠分析更大規(guī)模的網(wǎng)絡(luò)。使用該方法能夠計(jì)算得出網(wǎng)絡(luò)中存在的多步級(jí)聯(lián)攻擊,但是該方法存在一定的問題I、該方法構(gòu)建的攻擊圖包含了網(wǎng)絡(luò)中存在的所有多步級(jí)聯(lián)攻擊路徑,在網(wǎng)絡(luò)中主機(jī)、服務(wù)器、路由器等網(wǎng)絡(luò)結(jié)點(diǎn)數(shù)目較多時(shí),生成的攻擊圖中包含的攻擊路徑的數(shù)量較大,一方面使攻擊圖變得復(fù)雜,難以理解;另一方面,增加了攻擊圖生成的計(jì)算量;2、該方法生成的攻擊圖未考慮攻擊各漏洞的難易程度,該方法能夠給出攻擊各網(wǎng)絡(luò)結(jié)點(diǎn)的攻擊步驟,但是不能直接計(jì)算出攻擊各結(jié)點(diǎn)的成功概率值?,F(xiàn)有技術(shù)中,如Li Kai 等人在《Proceedings of the 9th InternationalConference for Young Computer Scientists》2008,1538-1544 頁(yè)上發(fā)表了 “NetworkSecurity Evaluation Algorithm Based on Access Level Vectors,,(《第九屆青年計(jì)算機(jī)科學(xué)會(huì)議論文集》,基于訪問等級(jí)向量的網(wǎng)絡(luò)安全評(píng)估算法),考慮系統(tǒng)中各漏洞可用性概率值的不同,利用概率乘積單調(diào)不增的特點(diǎn),提出了一種能夠計(jì)算到達(dá)網(wǎng)絡(luò)中各結(jié)點(diǎn)的最大概率攻擊路徑方法,使用該方法不需要生成完整的攻擊圖,便能夠計(jì)算出對(duì)于各結(jié)點(diǎn)的最大概率攻擊路徑,但是該方法仍然存在一定的問題該方法只能生成攻擊各網(wǎng)絡(luò)結(jié)點(diǎn)的最大概率攻擊路徑,而網(wǎng)絡(luò)安全管理員通常需要了解攻擊各網(wǎng)絡(luò)結(jié)點(diǎn)的概率最大的前K條攻擊路徑(K是一個(gè)正整型變量,可由管理員根據(jù)需要自定義,K=I時(shí),即為最大概率攻擊路徑),通過K最大概率攻擊路 徑的求解,能夠更好的理解和分析系統(tǒng)中存在的安全漏洞,評(píng)估系統(tǒng)的安全性態(tài)勢(shì),為系統(tǒng)漏洞修復(fù)提供參考。

發(fā)明內(nèi)容
為了克服上述現(xiàn)有技術(shù)存在的缺陷,本發(fā)明提供一種求解K最大概率攻擊圖的網(wǎng)絡(luò)安全分析方法,該方法對(duì)于系統(tǒng)中的任意結(jié)點(diǎn),能夠求解攻擊該結(jié)點(diǎn)的概率最大的前K條路徑,該參數(shù)K的值可由網(wǎng)絡(luò)安全管理員自定義。為了實(shí)現(xiàn)上述目的,本發(fā)明的技術(shù)方案如下本發(fā)明的具體方法是步驟(I).錄入系統(tǒng)信息;將系統(tǒng)中各結(jié)點(diǎn)存在的漏洞信息、攻擊模板知識(shí)庫(kù)信息、系統(tǒng)中各結(jié)點(diǎn)間的連接關(guān)系以及參數(shù)K的具體值作為該方法的輸入數(shù)據(jù);系統(tǒng)中各結(jié)點(diǎn)的漏洞信息通過現(xiàn)有技術(shù)中的單機(jī)安全性掃描軟件對(duì)系統(tǒng)結(jié)點(diǎn)進(jìn)行掃描而構(gòu)建,攻擊模板知識(shí)庫(kù)通過查詢現(xiàn)有技術(shù)中的軟件漏洞數(shù)據(jù)庫(kù)(例如著名的CVE庫(kù)、BugTraq庫(kù)、X-Force庫(kù)等)構(gòu)建,各漏洞的可用性概率值通過查詢當(dāng)前已公布的通用漏洞評(píng)估知識(shí)庫(kù)構(gòu)建;參數(shù)K的值說明需要針對(duì)每個(gè)結(jié)點(diǎn)生成概率最大的前K條攻擊路徑,若攻擊某結(jié)點(diǎn)的攻擊路徑大于K條,則只保留攻擊成功概率最大的前K條路徑;若攻擊某結(jié)點(diǎn)的攻擊路徑小于K條,則所有攻擊路徑全部保留,此時(shí)不要求必須生成K條攻擊路徑。所述單機(jī)安全性掃描軟件為360安全套件。所述軟件漏洞數(shù)據(jù)庫(kù)為CVE庫(kù)、BugTraq庫(kù)以及Χ-Force庫(kù)中的一種。步驟(2).系統(tǒng)初始化;初始化各結(jié)點(diǎn)保存的攻擊路徑信息集合為空集,設(shè)定攻擊者的初始位置。步驟(3).從攻擊者所處的位置開始,查詢攻擊者能夠直接訪問的結(jié)點(diǎn)上存在的安全漏洞,查詢攻擊模板知識(shí)庫(kù),獲取相關(guān)漏洞的描述信息;若漏洞可用性前提滿足,則將該漏洞信息放入可用漏洞表;從攻擊者開始的漏洞可用性累積概率值的計(jì)算方法為將從攻擊者開始的漏洞利用路徑上各漏洞的可用性概率值相乘得出;可用漏洞表為一個(gè)以漏洞可用性累積概率值為關(guān)鍵字的最大優(yōu)先隊(duì)列,即累積概率值最大的漏洞位于優(yōu)先隊(duì)列的最前端。步驟(4).若可用漏洞表已經(jīng)為空,則轉(zhuǎn)步驟(5);否則,取出可用漏洞表中累積概率值最大的漏洞信息,并將該漏洞信息從可用漏洞表中移除,判斷該漏洞所在結(jié)點(diǎn)上已存在的攻擊路徑的條目數(shù)是否已經(jīng)達(dá)到K條,若已經(jīng)達(dá)到K條,則該次漏洞利用的信息不需要保留,轉(zhuǎn)步驟(4)起始處執(zhí)行;若該漏洞所在結(jié)點(diǎn)上已存在的攻擊路徑的條目數(shù)小于K條,則取出該漏洞的利用后果信息,并將該次漏洞利用的信息寫入該結(jié)點(diǎn)的攻擊路徑信息集合,然后根據(jù)漏洞的利用后果,更新攻擊者在該結(jié)點(diǎn)上的訪問權(quán)限,最后,將該結(jié)點(diǎn)作為攻擊者當(dāng)前所處的位置,轉(zhuǎn)步驟(3)執(zhí)行。每條的所述攻擊路徑為一個(gè)五元組,該一個(gè)五元組包括漏洞編號(hào)、漏洞所在的結(jié)點(diǎn)、從攻擊者開始的漏洞利用路徑、從攻擊者開始的漏洞可用性累積概率值、漏洞的利用后果息。步驟(5).可用漏洞表已經(jīng)為空,輸出計(jì)算結(jié)果;攻擊各個(gè)結(jié)點(diǎn)的前K條攻擊路徑已經(jīng)寫入各結(jié)點(diǎn)的攻擊路徑信息集合,所以,可以直接輸出。進(jìn)一步地,所述步驟(I)需要輸入?yún)?shù)K的值,參數(shù)K的值說明需要針對(duì)每個(gè)結(jié)點(diǎn)生成概率最大的前K條攻擊路徑,若攻擊某結(jié)點(diǎn)的攻擊路徑大于K條,則只保留攻擊成功概率最大的前K條路徑;若攻擊某結(jié)點(diǎn)的攻擊路徑小于K條,則所有攻擊路徑全部保留,此時(shí)不要求必須生成K條攻擊路徑。進(jìn)一步地,所述步驟(I)需要錄入系統(tǒng)中各漏洞的可用性概率值。 進(jìn)一步地,步驟(3)中所述相關(guān)漏洞的描述信息包括漏洞可用性前提條件、漏洞可用性概率值以及漏洞利用后果信息;所述漏洞信息為一個(gè)四元組,該四元組包括漏洞編號(hào)、漏洞所在的結(jié)點(diǎn)、從攻擊者開始的漏洞利用路徑、從攻擊者開始的漏洞可用性累積概率值。進(jìn)一步地,所述步驟(3)使用以漏洞可用性累積概率值為關(guān)鍵字的最大優(yōu)先隊(duì)列數(shù)據(jù)結(jié)構(gòu)存放可用漏洞表。進(jìn)一步地,所述步驟(4)為從可用漏洞表中取出累積概率值最大的漏洞信息,進(jìn)行漏洞利用。進(jìn)一步地,所述步驟(4)在進(jìn)行漏洞利用時(shí),會(huì)判斷該漏洞所在結(jié)點(diǎn)上已存在的攻擊路徑的條目數(shù)是否已經(jīng)達(dá)到K條,若已經(jīng)達(dá)到K條,則該次漏洞利用的信息不會(huì)保留;若該漏洞所在結(jié)點(diǎn)上已存在的攻擊路徑的條目數(shù)小于K條,則取出該漏洞的利用后果信息,并將該次漏洞利用的信息寫入該結(jié)點(diǎn)的攻擊路徑信息集合,每條攻擊路徑是一個(gè)五元組,該一個(gè)五元組包括漏洞編號(hào)、漏洞所在的結(jié)點(diǎn)、從攻擊者開始的漏洞利用路徑、從攻擊者開始的漏洞可用性累積概率值、漏洞的利用后果信息。采用上述技術(shù)方案的求解K最大概率攻擊圖的網(wǎng)絡(luò)安全分析方法,通過在各結(jié)點(diǎn)存儲(chǔ)累積概率最大的前K條攻擊路徑,實(shí)現(xiàn)了攻擊各結(jié)點(diǎn)的概率最大的前K條攻擊路徑問題的求解,從而實(shí)現(xiàn)了求解K最大概率攻擊圖;參數(shù)K的值可以自定義;考慮攻擊成功的概率值能夠更準(zhǔn)確的區(qū)分各種多步級(jí)聯(lián)攻擊路徑的危險(xiǎn)性程度,相比于單條最大概率攻擊路徑,求出攻擊各結(jié)點(diǎn)的概率最大的前K條攻擊路徑將為網(wǎng)絡(luò)安全管理員提供更豐富的指導(dǎo)信息。無需先構(gòu)建完整的系統(tǒng)攻擊圖,再根據(jù)各漏洞的可用性概率值在完整的系統(tǒng)攻擊圖上求解概率最大的前K條路徑,在動(dòng)態(tài)構(gòu)建攻擊圖的過程中逐步求出攻擊系統(tǒng)內(nèi)部各結(jié)點(diǎn)的概率最大的如K條路徑。


圖I為本發(fā)明方法流程圖。圖2為網(wǎng)絡(luò)拓?fù)鋱D。圖3為結(jié)點(diǎn)訪問關(guān)系圖。圖4為各結(jié)點(diǎn)的漏洞信息圖。
圖5為可用漏洞表一。圖6為可用漏洞表二。圖7為可用漏洞表二。圖8為可用漏洞表四。圖9為可用漏洞表五。圖10為可用漏洞表六。圖11為可用漏洞表七。圖12為可用漏洞表八。
圖13為可用漏洞表九。圖14為可用漏洞表十。圖15為可用漏洞表^ 。圖16為可用漏洞表十二。圖17為各結(jié)點(diǎn)的K=2最大概率攻擊路徑輸出匯總表。
具體實(shí)施例方式為了使本發(fā)明的技術(shù)手段、創(chuàng)作特征與達(dá)成目的易于明白理解,以下結(jié)合具體實(shí)施例進(jìn)一步闡述本發(fā)明本發(fā)明的網(wǎng)絡(luò)拓?fù)鋱D如圖2所示,結(jié)點(diǎn)A代表攻擊者,結(jié)點(diǎn)B、結(jié)點(diǎn)C、結(jié)點(diǎn)D、結(jié)點(diǎn)E以及結(jié)點(diǎn)F代表給定計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)中的結(jié)點(diǎn),A可以訪問結(jié)點(diǎn)B、結(jié)點(diǎn)C和結(jié)點(diǎn)D,同樣,結(jié)點(diǎn)B、結(jié)點(diǎn)C、結(jié)點(diǎn)D、結(jié)點(diǎn)E和結(jié)點(diǎn)F之間的連線代表結(jié)點(diǎn)間的連接關(guān)系。本發(fā)明中各結(jié)點(diǎn)間的訪問關(guān)系如圖3所示,從第二行開始,每一行代表一個(gè)結(jié)點(diǎn)能夠訪問到的結(jié)點(diǎn)集合,“ V ”表示可以直接訪問,“X”表示不可以直接訪問,如第二行表示攻擊者可以直接訪問攻擊者本身、結(jié)點(diǎn)B、結(jié)點(diǎn)C和結(jié)點(diǎn)D,但不可以訪問結(jié)點(diǎn)E和結(jié)點(diǎn)F。結(jié)點(diǎn)間的訪問關(guān)系可以是單向的,也可以是雙向的。本發(fā)明中,定義訪問關(guān)系為單向,但在具體實(shí)施中,可以根據(jù)情況定義為單向或雙向。本發(fā)明中各結(jié)點(diǎn)初始時(shí)包含的漏洞信息如圖4所示,每條漏洞信息為一個(gè)五元組,該一個(gè)五元組包括漏洞編號(hào)、漏洞所在的結(jié)點(diǎn)、漏洞訪問前提條件、漏洞利用后果、漏洞的可用性概率值;其中,漏洞訪問前提條件說明利用該漏洞需要具備的前提條件,漏洞利用后果表示成功利用該漏洞能夠得到的結(jié)果,攻擊后果可以是獲取權(quán)限、獲取資料、停止計(jì)算機(jī)服務(wù)、丟失數(shù)據(jù)等,本發(fā)明中,所有漏洞的攻擊后果均定義為攻擊者獲取該結(jié)點(diǎn)的控制權(quán)限。若攻擊者獲取了某結(jié)點(diǎn)的控制權(quán)限,則表明攻擊者可以從該結(jié)點(diǎn)上繼續(xù)攻擊其它結(jié)點(diǎn),從而形成多步級(jí)聯(lián)攻擊。本發(fā)明要解決的主要問題就是在考慮漏洞可用概率的情況下,計(jì)算攻擊各結(jié)點(diǎn)的概率最大的前K條多步級(jí)聯(lián)攻擊路徑的問題。如圖I所示,本發(fā)明的具體方法步驟如下步驟(I).錄入系統(tǒng)信息;將系統(tǒng)中各結(jié)點(diǎn)存在的漏洞信息、攻擊模板知識(shí)庫(kù)信息、系統(tǒng)中各結(jié)點(diǎn)間的連接關(guān)系以及參數(shù)K的具體值作為該方法的輸入數(shù)據(jù)。本發(fā)明中,圖4代表結(jié)點(diǎn)漏洞信息表已經(jīng)包含了攻擊模板知識(shí)庫(kù)信息,參數(shù)K的值設(shè)定為2。步驟(2).系統(tǒng)初始化;初始化各結(jié)點(diǎn)保存的攻擊路徑信息集合為空集,設(shè)定攻擊者的初始位置為系統(tǒng)外部,如圖2中的結(jié)點(diǎn)A所示。
步驟(3).從攻擊者所處的位置開始,查詢攻擊者能夠直接訪問的結(jié)點(diǎn)上存在的安全漏洞。攻擊者的當(dāng)前位置在系統(tǒng)外部,參看圖2與圖3,攻擊者能夠訪問系統(tǒng)中的結(jié)點(diǎn)B、結(jié)點(diǎn)C以及結(jié)點(diǎn)D,參看圖4,攻擊者能夠利用的漏洞信息包括結(jié)點(diǎn)B上的漏洞VI,攻擊成功概率為O. 8 ;結(jié)點(diǎn)C上的漏洞V2,攻擊成功概率為O. 4 ;結(jié)點(diǎn)D上的漏洞V3,攻擊成功概率為O. 9。將可用漏洞信息放入可用漏洞表,漏洞信息是一個(gè)四元組,該一個(gè)四元組包括漏洞編號(hào)、漏洞所在的結(jié)點(diǎn)、從攻擊者開始的漏洞利用路徑、從攻擊者開始的漏洞可用性累積概率值;如圖5所示,可用漏洞表是一個(gè)以漏洞可用性累積概率值為關(guān)鍵字的最大優(yōu)先隊(duì)列,即累積概率值最大的漏洞位于優(yōu)先隊(duì)列的最前端。本發(fā)明中,將可用漏洞表按照累積概率值的降序排列,在實(shí)際應(yīng)用中,綜合考慮查詢、插入和刪除等數(shù)據(jù)操作,使用最大優(yōu)先隊(duì)列數(shù)據(jù)結(jié)構(gòu)。參看圖5,“從攻擊者開始的漏洞利用路徑”的格式是攻擊者,下一個(gè)結(jié)點(diǎn),后面括號(hào)中的漏洞編號(hào)即本次在該結(jié)點(diǎn)所要利用漏洞對(duì)應(yīng)的編號(hào)。參看圖5,第一條記錄如下AD (V3),表示的含義是:A代表攻擊者,下一個(gè)結(jié)點(diǎn)是結(jié)點(diǎn)D,在結(jié)點(diǎn)D上利用的漏洞編號(hào)是V3。
步驟(4).取出可用漏洞表中累積概率值最大的漏洞信息,并將該漏洞信息從可用漏洞表中移除,然后利用該漏洞信息更新可用漏洞表,更新結(jié)點(diǎn)攻擊路徑。由圖5可知,當(dāng)ill可用漏洞表中累積概率值最大的漏洞編號(hào)是V3,相應(yīng)的累積概率值為O. 9ο將V3漏洞的信息從可用漏洞表中取出,該漏洞屬于結(jié)點(diǎn)D,而當(dāng)前結(jié)點(diǎn)D上對(duì)應(yīng)的攻擊路徑記錄數(shù)目為0,小于參數(shù)K的值,該K=2,因此需要對(duì)該漏洞進(jìn)行利用從而生成攻擊路徑。根據(jù)圖4查詢漏洞V3的漏洞利用后果是攻擊者獲取在結(jié)點(diǎn)D上的控制權(quán)限,然后需要做兩件工作(I)、添加結(jié)點(diǎn)D所對(duì)應(yīng)的攻擊路徑記錄,加入攻擊路徑AD(V3),攻擊成功概率是O. 9 ;(2)、設(shè)定攻擊者的當(dāng)前位置為結(jié)點(diǎn)D,表示攻擊者當(dāng)前可以從結(jié)點(diǎn)D發(fā)起新的攻擊。步驟(5).從攻擊者當(dāng)前所處的位置D開始,查詢攻擊者能夠直接訪問的結(jié)點(diǎn)上存在的安全漏洞。結(jié)合圖2和圖3可知,攻擊者能夠訪問系統(tǒng)中的結(jié)點(diǎn)C和結(jié)點(diǎn)F。由圖4可知,攻擊者能夠利用的漏洞信息包括(I)、結(jié)點(diǎn)C上的漏洞V5,攻擊成功概率為O. 4。攻擊者先攻擊結(jié)點(diǎn)D的成功概率為O. 9,然后通過結(jié)點(diǎn)D攻擊結(jié)點(diǎn)C的成功概率為O. 4,所以,攻擊者通過結(jié)點(diǎn)D攻擊結(jié)點(diǎn)C的累積成功概率為O. 9*0. 4=0. 36,即漏洞V5的可用性累積概率值為O. 36 ; (2)、結(jié)點(diǎn)F上的漏洞V9,攻擊成功概率為O. I。攻擊者先攻擊結(jié)點(diǎn)D的成功概率為O. 9,然后通過結(jié)點(diǎn)D攻擊結(jié)點(diǎn)F的成功概率為O. 1,所以,攻擊者通過結(jié)點(diǎn)D攻擊結(jié)點(diǎn)F的累積成功概率為O. 9*0. 1=0. 09,即漏洞V9的可用性累積概率值為O. 09。將上述兩條可用漏洞信息放入可用漏洞表第一條為(V5,C,AD(V3)C(V5),0. 36),其中攻擊路徑“AD (V3)C(V5) ”表示從攻擊者A開始,先利用結(jié)點(diǎn)D上的漏洞V3,獲取結(jié)點(diǎn)D的控制權(quán)限后,再通過結(jié)點(diǎn)D利用結(jié)點(diǎn)C上的漏洞V5攻擊結(jié)點(diǎn)C,漏洞編號(hào)用括號(hào)包裹,從而與結(jié)點(diǎn)編號(hào)區(qū)分,A表示攻擊者的起始位置,因此A后面沒有“(漏洞編號(hào))”信息;第二條為(V9,F(xiàn),AD(V3)F(V9),0.09)。步驟(4)和步驟(5)的執(zhí)行結(jié)果如圖6所示。步驟(6).取出可用漏洞表中累積概率值最大的漏洞信息,并將該漏洞信息從可用漏洞表中移除,然后利用該漏洞信息更新可用漏洞表,更新結(jié)點(diǎn)攻擊路徑。由圖6可知,當(dāng)ill可用漏洞表中累積概率值最大的漏洞編號(hào)是VI,相應(yīng)的累積概率值為O. 8。將Vl漏洞的信息從可用漏洞表中取出,該漏洞屬于結(jié)點(diǎn)B,而當(dāng)前結(jié)點(diǎn)B上對(duì)應(yīng)的攻擊路徑記錄數(shù)目為0,小于參數(shù)K的值,該K=2,因此需要對(duì)該漏洞進(jìn)行利用從而生成攻擊路徑。根據(jù)圖4查詢漏洞Vl的漏洞利用后果是攻擊者獲取在結(jié)點(diǎn)B上的控制權(quán)限,然后需要做兩件工作(I)、添加結(jié)點(diǎn)B所對(duì)應(yīng)的攻擊路徑記錄,加入攻擊路徑AB( VI),攻擊成功概率是O. 8 ;(2)、設(shè)定攻擊者的當(dāng)前位置為結(jié)點(diǎn)B,表示攻擊者當(dāng)前可以從結(jié)點(diǎn)B發(fā)起新的攻擊。步驟(7).從攻擊者當(dāng)前所處的位置B開始,查詢攻擊者能夠直接訪問的結(jié)點(diǎn)上存在的安全漏洞。結(jié)合圖2和圖3可知,攻擊者能夠訪問系統(tǒng)中的結(jié)點(diǎn)C和結(jié)點(diǎn)E。由圖4可知,攻擊者能夠利用的漏洞信息包括(I)、結(jié)點(diǎn)C上的漏洞V4,攻擊成功概率為O. 7。攻擊者先攻擊結(jié)點(diǎn)B的成功概率為O. 8,然后通過結(jié)點(diǎn)B攻擊結(jié)點(diǎn)C的成功概率為O. 7,所以,攻擊者通過結(jié)點(diǎn)B攻擊結(jié)點(diǎn)C的累積成功概率為O. 8*0. 7=0. 56,即漏洞V4的可用性累積概率值為O. 56; (2)、結(jié)點(diǎn)E上的漏洞V6,攻擊成功概率為O. 3。攻擊者先攻擊結(jié)點(diǎn)B的成功概率為O. 8,然后通過結(jié)點(diǎn)B攻擊結(jié)點(diǎn)E的成功概率為O. 3,所以,攻擊者通過結(jié)點(diǎn)B攻擊結(jié)點(diǎn)E的累積成功概率為O. 8*0. 3=0. 24,即漏洞V6的可用性累積概率值為O. 24。將上述兩條可用漏洞信息放入可用漏洞表第一條為(V4,C, AB (Vl) C (V4), O. 56),第二條為(V6,E,AB(V1)E(V6),0. 24)。步驟(6)和步驟(7)的執(zhí)行結(jié)果如圖7所示。
步驟(8).取出可用漏洞表中累積概率值最大的漏洞信息,并將該漏洞信息從可用漏洞表中移除,然后利用該漏洞信息更新可用漏洞表,更新結(jié)點(diǎn)攻擊路徑。由圖7可知,當(dāng)前可用漏洞表中累積概率值最大的漏洞編號(hào)是V4,相應(yīng)的累積概率值為O. 56。將V4漏洞的信息從可用漏洞表中取出,該漏洞屬于結(jié)點(diǎn)C,而當(dāng)前結(jié)點(diǎn)C上對(duì)應(yīng)的攻擊路徑記錄數(shù)目為0,小于參數(shù)K的值,該K=2,因此需要對(duì)該漏洞進(jìn)行利用從而生成攻擊路徑。根據(jù)圖4查詢漏洞V4的漏洞利用后果是攻擊者獲取在結(jié)點(diǎn)C上的控制權(quán)限,然后需要做兩件工作(I )、添加結(jié)點(diǎn)C所對(duì)應(yīng)的攻擊路徑記錄,加入攻擊路徑AB (Vl) C (V4),攻擊成功概率是
O.56 ; (2)、設(shè)定攻擊者的當(dāng)前位置為結(jié)點(diǎn)C,表示攻擊者當(dāng)前可以從結(jié)點(diǎn)C發(fā)起新的攻擊。步驟(9).從攻擊者當(dāng)前所處的位置C開始,查詢攻擊者能夠直接訪問的結(jié)點(diǎn)上存在的安全漏洞。結(jié)合圖2和圖3可知,攻擊者能夠訪問系統(tǒng)中的結(jié)點(diǎn)Ε。由圖4可知,攻擊者能夠利用的漏洞信息包括(1)、結(jié)點(diǎn)E上的漏洞V7,攻擊成功概率為O. 7。攻擊者通過結(jié)點(diǎn)B攻擊結(jié)點(diǎn)C的累積成功概率為O. 56,然后通過結(jié)點(diǎn)C攻擊結(jié)點(diǎn)E的成功概率為O. 7,所以,攻擊者通過結(jié)點(diǎn)B和結(jié)點(diǎn)C攻擊結(jié)點(diǎn)E的累積成功概率為O. 56*0. 7=0. 392,即漏洞V7的可用性累積概率值為O. 392。將上述一條可用漏洞信息(V7,E,AB(V1)C(V4)E(V7),0. 392)放入可用漏洞表。第八步和第九步的執(zhí)行結(jié)果如圖8所示。步驟(10).取出可用漏洞表中累積概率值最大的漏洞信息,并將該漏洞信息從可用漏洞表中移除,然后利用該漏洞信息更新可用漏洞表,更新結(jié)點(diǎn)攻擊路徑。由圖8可知,當(dāng)ill可用漏洞表中累積概率值最大的漏洞編號(hào)是V2,相應(yīng)的累積概率值為0.4。將V2漏洞的信息從可用漏洞表中取出,該漏洞屬于結(jié)點(diǎn)C,而當(dāng)前結(jié)點(diǎn)C上對(duì)應(yīng)的攻擊路徑記錄數(shù)目為1,小于參數(shù)K的值,該K=2,因此需要對(duì)該漏洞進(jìn)行利用從而生成攻擊路徑。根據(jù)圖4查詢漏洞V2的漏洞利用后果是攻擊者獲取在結(jié)點(diǎn)C上的控制權(quán)限,然后需要做兩件工作(I )、添加結(jié)點(diǎn)C所對(duì)應(yīng)的攻擊路徑記錄,加入攻擊路徑AC (V2),攻擊成功概率是O. 4 ; (2)、設(shè)定攻擊者的當(dāng)前位置為結(jié)點(diǎn)C,表示攻擊者當(dāng)前可以從結(jié)點(diǎn)C發(fā)起新的攻擊。步驟(11).從攻擊者當(dāng)前所處的位置C開始,查詢攻擊者能夠直接訪問的結(jié)點(diǎn)上存在的安全漏洞。結(jié)合圖2和圖3可知,攻擊者能夠訪問系統(tǒng)中的結(jié)點(diǎn)Ε。由圖4可知,攻擊者能夠利用的漏洞信息包括(1)、結(jié)點(diǎn)E上的漏洞V7,攻擊成功概率為O. 7。攻擊者直接攻擊結(jié)點(diǎn)C的累積成功概率為O. 4,然后通過結(jié)點(diǎn)C攻擊結(jié)點(diǎn)E的成功概率為O. 7,所以,攻擊者直接通過結(jié)點(diǎn)C攻擊結(jié)點(diǎn)E的累積成功概率為O. 4*0. 7=0. 28,即該條攻擊路徑上漏洞V7的可用性累積概率值為O. 28。將上述一條可用漏洞信息(V7,E,AC(V2)E(V7),0. 28)放入可用漏洞表。步驟(10)和步驟(11)的執(zhí)行結(jié)果如圖9所示。步驟(12).取出可用漏洞表中累積概率值最大的漏洞信息,并將該漏洞信息從可用漏洞表中移除,然后利用該漏洞信息更新可用漏洞表,更新結(jié)點(diǎn)攻擊路徑。由圖9可知,當(dāng)前可用漏洞表中累積概率值最大的漏洞編號(hào)是V7,相應(yīng)的累積概率值為O. 392。將V7漏洞的信息從可用漏洞表中取出,該漏洞屬 于結(jié)點(diǎn)E,而當(dāng)前結(jié)點(diǎn)E上對(duì)應(yīng)的攻擊路徑記錄數(shù)目為0,小于參數(shù)K的值,該K=2,因此需要對(duì)該漏洞進(jìn)行利用從而生成攻擊路徑。根據(jù)圖4查詢漏洞V7的漏洞利用后果是攻擊者獲取在結(jié)點(diǎn)E上的控制權(quán)限,然后需要做兩件工作
(I)、添加結(jié)點(diǎn)E所對(duì)應(yīng)的攻擊路徑記錄,加入攻擊路徑AB (Vl) C (V4) E (V7),攻擊成功概率是O. 392 ; (2)、設(shè)定攻擊者的當(dāng)前位置為結(jié)點(diǎn)Ε,表示攻擊者當(dāng)前可以從結(jié)點(diǎn)E發(fā)起新的攻擊。步驟(13).從攻擊者當(dāng)前所處的位置E開始,查詢攻擊者能夠直接訪問的結(jié)點(diǎn)上存在的安全漏洞。結(jié)合圖2和圖3可知,攻擊者能夠訪問系統(tǒng)中的結(jié)點(diǎn)F。由圖4可知,攻擊者能夠利用的漏洞信息包括(I)、結(jié)點(diǎn)F上的漏洞V8,攻擊成功概率為O. 7。攻擊者通過結(jié)點(diǎn)B和結(jié)點(diǎn)C攻擊結(jié)點(diǎn)E的累積成功概率為O. 392,然后通過結(jié)點(diǎn)E攻擊結(jié)點(diǎn)F的成功概率為O. 7,所以,攻擊者依次通過結(jié)點(diǎn)B、結(jié)點(diǎn)C和結(jié)點(diǎn)E攻擊結(jié)點(diǎn)F的累積成功概率為
O.392*0. 7=0. 2744,即該條攻擊路徑上漏洞V8的可用性累積概率值為O. 2744。將上述一條可用漏洞信息(V8,F(xiàn),AB (Vl) C (V4) E (V7) F(VS),O. 2744)放入可用漏洞表。步驟(12)和步驟(13)的執(zhí)行結(jié)果如圖10所示。步驟(14).取出可用漏洞表中累積概率值最大的漏洞信息,并將該漏洞信息從可用漏洞表中移除,然后利用該漏洞信息更新可用漏洞表,更新結(jié)點(diǎn)攻擊路徑。由圖10可知,當(dāng)前可用漏洞表中累積概率值最大的漏洞編號(hào)是V5,相應(yīng)的累積概率值為O. 36。將V5漏洞的信息從可用漏洞表中取出,該漏洞屬于結(jié)點(diǎn)C,而當(dāng)前結(jié)點(diǎn)C上對(duì)應(yīng)的攻擊路徑記錄數(shù)目為2,等于參數(shù)K的值,該Κ=2,說明針對(duì)結(jié)點(diǎn)C的K條攻擊路徑已經(jīng)生成,而且這K條攻擊路徑的累積成功概率值均大于當(dāng)前攻擊路徑,且根據(jù)圖4查詢漏洞V5的漏洞利用后果是攻擊者獲取在結(jié)點(diǎn)C上的控制權(quán)限,與針對(duì)結(jié)點(diǎn)C已生成的攻擊路徑的攻擊后果相同,所以,該條攻擊路徑不需要保留,也不需要將C標(biāo)記為攻擊者的當(dāng)前位置。第十四步的執(zhí)行結(jié)果如圖11所示。步驟(15).取出可用漏洞表中累積概率值最大的漏洞信息,并將該漏洞信息從可用漏洞表中移除,然后利用該漏洞信息更新可用漏洞表,更新結(jié)點(diǎn)攻擊路徑。由圖11可知,當(dāng)前可用漏洞表中累積概率值最大的漏洞編號(hào)是V7,相應(yīng)的累積概率值為O. 28。將V7漏洞的信息從可用漏洞表中取出,該漏洞屬于結(jié)點(diǎn)Ε,而當(dāng)前結(jié)點(diǎn)E上對(duì)應(yīng)的攻擊路徑記錄數(shù)目為1,小于參數(shù)K的值,該Κ=2,因此需要對(duì)該漏洞進(jìn)行利用從而生成攻擊路徑。根據(jù)圖4查詢漏洞V7的漏洞利用后果是攻擊者獲取在結(jié)點(diǎn)E上的控制權(quán)限,然后需要做兩件工作(I )、添加結(jié)點(diǎn)E所對(duì)應(yīng)的攻擊路徑記錄,加入攻擊路徑AC (V2) E (V7),攻擊成功概率是
O.28 ; (2)、設(shè)定攻擊者的當(dāng)前位置為結(jié)點(diǎn)Ε,表示攻擊者當(dāng)前可以從結(jié)點(diǎn)E發(fā)起新的攻擊。步驟(16).從攻擊者當(dāng)前所處的位置E開始,查詢攻擊者能夠直接訪問的結(jié)點(diǎn)上存在的安全漏洞。結(jié)合圖2和圖3可知,攻擊者能夠訪問系統(tǒng)中的結(jié)點(diǎn)F。由圖4可知,攻擊者能夠利用的漏洞信息包括(1)、結(jié)點(diǎn)F上的漏洞V8,攻擊成功概率為O. 7。攻擊者通過結(jié)點(diǎn)C攻擊結(jié)點(diǎn)E的累積成功概率為O. 28,然后通過結(jié)點(diǎn)E攻擊結(jié)點(diǎn)F的成功概率為O. 7,所以,攻擊者依次通過結(jié)點(diǎn)C和結(jié)點(diǎn)E攻擊結(jié)點(diǎn)F的累積成功概率為O. 28*0. 7=0. 196,即該條攻擊路徑上漏洞V8的可用性累積概率值為O. 196。將上述一條可用漏洞信息(V8,F(xiàn),AC(V2)E(V7)F(V8),0. 196)放入可用漏洞表。步驟(15)和步驟(16)的執(zhí)行結(jié)果如圖12所
/Jn ο步驟(17).取出可用漏洞表中累積概率值最大的漏洞信息,并將該漏洞信息從可用漏洞表中移除,然后利用該漏洞信息更新可用漏洞表,更新結(jié)點(diǎn)攻擊路徑。由圖12可知,當(dāng)前可用漏洞表中累積概率值最大的漏洞編號(hào)是V8,相應(yīng)的累積概率值為O. 2744。將V8漏洞的信息從可用漏洞表中取出,該漏洞屬于結(jié)點(diǎn)F,而當(dāng)前結(jié)點(diǎn)F上對(duì)應(yīng)的攻擊路徑記錄數(shù)目為0,小于參數(shù)K的值,該K=2,因此需要對(duì)該漏洞進(jìn)行利用從而生成攻擊路徑。根據(jù)圖4查詢漏洞V8的漏洞利用后果是攻擊者獲取在結(jié)點(diǎn)F上的控制權(quán)限,然后需要做兩件工作 (I )、添加結(jié)點(diǎn)F所對(duì)應(yīng)的攻擊路徑記錄,加入攻擊路徑AB (Vl) C (V4) E (V7) F (V8),攻擊成功概率是O. 2744 ; (2)、設(shè)定攻擊者的當(dāng)前位置為結(jié)點(diǎn)F,表示攻擊者當(dāng)前可以從結(jié)點(diǎn)F發(fā)起新的攻擊。步驟(18).從攻擊者當(dāng)前所處的位置F開始,查詢攻擊者能夠直接訪問的結(jié)點(diǎn)上存在的安全漏洞。結(jié)合圖2和圖3可知,攻擊者不能夠從結(jié)點(diǎn)F發(fā)起新的攻擊,因此也無需更新可用漏洞表。步驟(17)和步驟(18)的執(zhí)行結(jié)果如圖13所示。步驟(19).取出可用漏洞表中累積概率值最大的漏洞信息,并將該漏洞信息從可用漏洞表中移除,然后利用該漏洞信息更新可用漏洞表,更新結(jié)點(diǎn)攻擊路徑。由圖13可知,當(dāng)前可用漏洞表中累積概率值最大的漏洞編號(hào)是V6,相應(yīng)的累積概率值為O. 24。將V6漏洞的信息從可用漏洞表中取出,該漏洞屬于結(jié)點(diǎn)Ε,而當(dāng)前結(jié)點(diǎn)E上對(duì)應(yīng)的攻擊路徑記錄數(shù)目為2,等于參數(shù)K的值,該Κ=2,說明針對(duì)結(jié)點(diǎn)E的K條攻擊路徑已經(jīng)生成,而且這K條攻擊路徑的累積成功概率值均大于當(dāng)前攻擊路徑,且根據(jù)圖4查詢漏洞V6的漏洞利用后果是攻擊者獲取在結(jié)點(diǎn)E上的控制權(quán)限,與針對(duì)結(jié)點(diǎn)E已生成的攻擊路徑的攻擊后果相同,所以,該條攻擊路徑不需要保留,也不需要將E標(biāo)記為攻擊者的當(dāng)前位置。步驟(19)的執(zhí)行結(jié)果如圖14所示。步驟(20).取出可用漏洞表中累積概率值最大的漏洞信息,并將該漏洞信息從可用漏洞表中移除,然后利用該漏洞信息更新可用漏洞表,更新結(jié)點(diǎn)攻擊路徑。由圖14可知,當(dāng)前可用漏洞表中累積概率值最大的漏洞編號(hào)是V8,相應(yīng)的累積概率值為O. 196。將V8漏洞的信息從可用漏洞表中取出,該漏洞屬于結(jié)點(diǎn)F,而當(dāng)前結(jié)點(diǎn)F上對(duì)應(yīng)的攻擊路徑記錄數(shù)目為1,小于參數(shù)K的值,該Κ=2,因此需要對(duì)該漏洞進(jìn)行利用從而生成攻擊路徑。根據(jù)圖4查詢漏洞V8的漏洞利用后果是攻擊者獲取在結(jié)點(diǎn)F上的控制權(quán)限,然后需要做兩件工作(I )、添加結(jié)點(diǎn)F所對(duì)應(yīng)的攻擊路徑記錄,加入攻擊路徑AC (V2) E (V7) F (V8),攻擊成功概率是O. 196; (2)、設(shè)定攻擊者的當(dāng)前位置為結(jié)點(diǎn)F,表示攻擊者當(dāng)前可以從結(jié)點(diǎn)F發(fā)起新的攻擊。步驟(21).從攻擊者當(dāng)前所處的位置F開始,查詢攻擊者能夠直接訪問的結(jié)點(diǎn)上存在的安全漏洞。結(jié)合圖2和圖3可知,攻擊者不能夠從結(jié)點(diǎn)F發(fā)起新的攻擊,因此也無需更新可用漏洞表。步驟(20)和步驟(21)的執(zhí)行結(jié)果如圖15所示。步驟(22).取出可用漏洞表中累積概率值最大的漏洞信息,并將該漏洞信息從可用漏洞表中移除,然后利用該漏洞信息更新可用漏洞表,更新結(jié)點(diǎn)攻擊路徑。由圖15可知,當(dāng)ill可用漏洞表中累積概率值最大的漏洞編號(hào)是V9,相應(yīng)的累積概率值為O. 09。將V9漏洞的信息從可用漏洞表中取出,該漏洞屬于結(jié)點(diǎn)F,而當(dāng)前結(jié)點(diǎn)F上對(duì)應(yīng)的攻擊路徑記錄數(shù)目為2,等于參數(shù)K的值,該K=2,說明針對(duì)結(jié)點(diǎn)F的K條攻擊路徑已經(jīng)生成,而且這K條攻擊路徑的累積成功概率值均大于當(dāng)前攻擊路徑,且根據(jù)圖4查詢漏洞V9的漏洞利用后果是攻擊者獲取在結(jié)點(diǎn)F上的控制權(quán)限,與針對(duì)結(jié)點(diǎn)F已生成的攻擊路徑的攻擊后果相同,所以,該條攻擊路徑不需要保留,也不需要將F標(biāo)記為攻擊者的當(dāng)前位置。步驟(22)的執(zhí)行結(jié)果如圖16所示。步驟(23).當(dāng)前可用漏洞表已經(jīng)為空,由圖I可知,此時(shí)各結(jié)點(diǎn)的K最大概率攻擊路徑已經(jīng)生成,輸出各結(jié)點(diǎn)的K,該Κ=2最大概率攻擊路徑匯總于圖17。從圖17可以看出,結(jié)點(diǎn)B和結(jié)點(diǎn)D分別各生成了一條攻擊路徑,這是由本實(shí)施案例的輸入決定的,也就是說,對(duì)于求解各結(jié)點(diǎn)的K最大概率攻擊路徑問題,如果攻擊某結(jié)點(diǎn)的實(shí)際路徑條目總數(shù)小于K條,也是正確的;結(jié)點(diǎn)C、結(jié)點(diǎn)E和結(jié)點(diǎn)F分別生成了兩條不同的最大概率攻擊路徑,從前面的步驟可以看出,實(shí)際上能夠攻擊結(jié)點(diǎn)C、結(jié)點(diǎn)E或結(jié)點(diǎn)F的攻擊路徑的總數(shù)目大于兩條,由于輸入?yún)?shù)K的值為2,所以算法保存了概率最大的兩條路徑。步驟(24).算法運(yùn)行結(jié)束。在本發(fā)明中,定義結(jié)點(diǎn)間的訪問關(guān)系為單向,在具體實(shí)施中,可以根據(jù)情況定義為單向或雙向;定義所有漏洞的攻擊后果均為攻擊者獲取該結(jié)點(diǎn)的控制權(quán)限,在具體實(shí)施中,可以根據(jù)情況對(duì)攻擊后果進(jìn)行細(xì)分,如分為獲取可讀權(quán)限、可寫權(quán)限、可執(zhí)行權(quán)限、讀取系統(tǒng)數(shù)據(jù)、停止服務(wù);然后對(duì)每一類細(xì)分的攻擊后果,均可生成相應(yīng)的K條概率最大的攻擊路徑;具體實(shí)施步驟解釋中,將可用漏洞表按照累積概率值的降序排列,在實(shí)際應(yīng)用中,綜合考慮查詢、插入和刪除等數(shù)據(jù)操作,使用最大優(yōu)先隊(duì)列數(shù)據(jù)結(jié)構(gòu),提高算法的運(yùn)行效率。以上顯示和描述了本發(fā)明的基本原理、主要特征和本發(fā)明的優(yōu)點(diǎn)。本行業(yè)的技術(shù)人員應(yīng)該了解,本發(fā)明不受上述實(shí)施例的限制,上述實(shí)施例和說明書中描述的只是說明本發(fā)明的原理,在不脫離本發(fā)明精神和范圍的前提下本發(fā)明還會(huì)有各種變化和改進(jìn),這些變化和改進(jìn)都落入要求保護(hù)的本發(fā)明范圍內(nèi)。本發(fā)明要求保護(hù)范圍由所附的權(quán)利要求書及其等同物界定。
權(quán)利要求
1.一種求解K最大概率攻擊圖的網(wǎng)絡(luò)安全分析方法,其特征在于,該方法的具體方法是: 步驟(I).錄入系統(tǒng)信息;將系統(tǒng)中各結(jié)點(diǎn)存在的漏洞信息、攻擊模板知識(shí)庫(kù)信息、系統(tǒng)中各結(jié)點(diǎn)間的連接關(guān)系以及參數(shù)K的具體值作為該方法的輸入數(shù)據(jù);系統(tǒng)中各結(jié)點(diǎn)的漏洞信息通過現(xiàn)有技術(shù)中的單機(jī)安全性掃描軟件對(duì)系統(tǒng)結(jié)點(diǎn)進(jìn)行掃描而構(gòu)建,攻擊模板知識(shí)庫(kù)通過查詢現(xiàn)有技術(shù)中的軟件漏洞數(shù)據(jù)庫(kù)(例如著名的CVE庫(kù)、BugTraq庫(kù)、X-Force庫(kù)等)構(gòu)建,各漏洞的可用性概率值通過查詢當(dāng)前已公布的通用漏洞評(píng)估知識(shí)庫(kù)構(gòu)建;參數(shù)K的值說明需要針對(duì)每個(gè)結(jié)點(diǎn)生成概率最大的前K條攻擊路徑,若攻擊某結(jié)點(diǎn)的攻擊路徑大于K條,則只保留攻擊成功概率最大的前K條路徑;若攻擊某結(jié)點(diǎn)的攻擊路徑小于K條,則所有攻擊路徑全部保留,此時(shí)不要求必須生成K條攻擊路徑;所述單機(jī)安全性掃描軟件為360安全套件;所述軟件漏洞數(shù)據(jù)庫(kù)為CVE庫(kù)、BugTraq庫(kù)以及X-Force庫(kù)中的一種; 步驟(2).系統(tǒng)初始化;初始化各結(jié)點(diǎn)保存的攻擊路徑信息集合為空集,設(shè)定攻擊者的初始位置; 步驟(3).從攻擊者所處的位置開始,查詢攻擊者能夠直接訪問的結(jié)點(diǎn)上存在的安全漏洞,查詢攻擊模板知識(shí)庫(kù),獲取相關(guān)漏洞的描述信息;若漏洞可用性前提滿足,則將該漏洞信息放入可用漏洞表;從攻擊者開始的漏洞可用性累積概率值的計(jì)算方法為將從攻擊者開始的漏洞利用路徑上各漏洞的可用性概率值相乘得出;可用漏洞表為一個(gè)以漏洞可用性累積概率值為關(guān)鍵字的最大優(yōu)先隊(duì)列,即累積概率值最大的漏洞位于優(yōu)先隊(duì)列的最前端; 步驟(4).若可用漏洞表已經(jīng)為空,則轉(zhuǎn)步驟(5);否則,取出可用漏洞表中累積概率值最大的漏洞信息,并將該漏洞信息從可用漏洞表中移除,判斷該漏洞所在結(jié)點(diǎn)上已存在的攻擊路徑的條目數(shù)是否已經(jīng)達(dá)到K條,若已經(jīng)達(dá)到K條,則該次漏洞利用的信息不需要保留,轉(zhuǎn)步驟(4)起始處執(zhí)行;若該漏洞所在結(jié)點(diǎn)上已存在的攻擊路徑的條目數(shù)小于K條,則取出該漏洞的利用后果信息,并將該次漏洞利用的信息寫入該結(jié)點(diǎn)的攻擊路徑信息集合,然后根據(jù)漏洞的利用后果,更新攻擊者在該結(jié)點(diǎn)上的訪問權(quán)限,最后,將該結(jié)點(diǎn)作為攻擊者當(dāng)前所處的位置,轉(zhuǎn)步驟(3)執(zhí)行; 每條的所述攻擊路徑為一個(gè)五元組,該一個(gè)五元組包括漏洞編號(hào)、漏洞所在的結(jié)點(diǎn)、從攻擊者開始的漏洞利用路徑、從攻擊者開始的漏洞可用性累積概率值、漏洞的利用后果信息; 步驟(5).可用漏洞表已經(jīng)為空,輸出計(jì)算結(jié)果;攻擊各個(gè)結(jié)點(diǎn)的前K條攻擊路徑已經(jīng)寫入各結(jié)點(diǎn)的攻擊路徑信息集合,所以,可以直接輸出。
2.根據(jù)權(quán)利要求I所述的一種求解K最大概率攻擊圖的網(wǎng)絡(luò)安全分析方法,其特征在于所述步驟(I)需要輸入?yún)?shù)K的值,參數(shù)K的值說明需要針對(duì)每個(gè)結(jié)點(diǎn)生成概率最大的前K條攻擊路徑,若攻擊某結(jié)點(diǎn)的攻擊路徑大于K條,則只保留攻擊成功概率最大的前K條路徑;若攻擊某結(jié)點(diǎn)的攻擊路徑小于K條,則所有攻擊路徑全部保留,此時(shí)不要求必須生成K條攻擊路徑。
3.根據(jù)權(quán)利要求I所述的一種求解K最大概率攻擊圖的網(wǎng)絡(luò)安全分析方法,其特征在于所述步驟(I)需要錄入系統(tǒng)中各漏洞的可用性概率值。
4.根據(jù)權(quán)利要求I所述的一種求解K最大概率攻擊圖的網(wǎng)絡(luò)安全分析方法,其特征在于步驟(3)中所述相關(guān)漏洞的描述信息包括漏洞可用性前提條件、漏洞可用性概率值以及漏洞利用后果信息;所述漏洞信息為一個(gè)四元組,該四元組包括漏洞編號(hào)、漏洞所在的結(jié)點(diǎn)、從攻擊者開始的漏洞利用路徑、從攻擊者開始的漏洞可用性累積概率值。
5.根據(jù)權(quán)利要求I所述的一種求解K最大概率攻擊圖的網(wǎng)絡(luò)安全分析方法,其特征在于所述步驟(3)使用以漏洞可用性累積概率值為關(guān)鍵字的最大優(yōu)先隊(duì)列數(shù)據(jù)結(jié)構(gòu)存放可用漏洞表。
6.根據(jù)權(quán)利要求I所述的一種求解K最大概率攻擊圖的網(wǎng)絡(luò)安全分析方法,其特征在于所述步驟(4)為從可用漏洞表中取出累積概率值最大的漏洞信息,進(jìn)行漏洞利用。
7.根據(jù)權(quán)利要求I所述的一種求解K最大概率攻擊圖的網(wǎng)絡(luò)安全分析方法,其特征在于所述步驟(4)在進(jìn)行漏洞利用時(shí),會(huì)判斷該漏洞所在結(jié)點(diǎn)上已存在的攻擊路徑的條目數(shù)是否已經(jīng)達(dá)到K條,若已經(jīng)達(dá)到K條,則該次漏洞利用的信息不會(huì)保留;若該漏洞所在結(jié)點(diǎn)上已存在的攻擊路徑的條目數(shù)小于K條,則取出該漏洞的利用后果信息,并將該次漏洞利用的信息寫入該結(jié)點(diǎn)的攻擊路徑信息集合,每條攻擊路徑是一個(gè)五元組,該一個(gè)五元組包括漏洞編號(hào)、漏洞所在的結(jié)點(diǎn)、從攻擊者開始的漏洞利用路徑、從攻擊者開始的漏洞可用性累積概率值、漏洞的利用后果信息。
全文摘要
本發(fā)明公開了一種求解K最大概率攻擊圖的網(wǎng)絡(luò)安全分析方法,該方法具體是步驟(1).錄入系統(tǒng)信息,輸入?yún)?shù)K的值;步驟(2).對(duì)系統(tǒng)進(jìn)行初始化;步驟(3).計(jì)算當(dāng)前攻擊者可以攻擊的結(jié)點(diǎn);步驟(4).判斷可用漏洞表是否為空,若為空,則轉(zhuǎn)步驟(5),若不為空,則取出可用漏洞表的隊(duì)頭結(jié)點(diǎn)進(jìn)行漏洞利用,判斷該結(jié)點(diǎn)已存在的攻擊路徑的數(shù)目是否小于K,若條件為真,則更新結(jié)點(diǎn)的漏洞利用信息,并更新攻擊者位置,轉(zhuǎn)步驟(3)執(zhí)行,若條件為假,則轉(zhuǎn)到步驟(4)的起始處繼續(xù)執(zhí)行;步驟(5)已經(jīng)生成攻擊各結(jié)點(diǎn)的概率最大的前K條路徑,方法運(yùn)行結(jié)束。本發(fā)明通過在各結(jié)點(diǎn)存儲(chǔ)累積概率最大的前K條攻擊路徑,實(shí)現(xiàn)了攻擊各結(jié)點(diǎn)的概率最大的前K條攻擊路徑問題的求解。
文檔編號(hào)H04L29/06GK102724210SQ20121022453
公開日2012年10月10日 申請(qǐng)日期2012年6月29日 優(yōu)先權(quán)日2012年6月29日
發(fā)明者畢坤, 韓德志 申請(qǐng)人:上海海事大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1