亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于因果知識網(wǎng)絡(luò)的攻擊路徑預(yù)測方法

        2016-11-24 08:29:42王碩湯光明寇廣宋海濤
        通信學(xué)報 2016年10期
        關(guān)鍵詞:能力

        王碩,湯光明,寇廣,2,宋海濤

        (1. 解放軍信息工程大學(xué),河南 鄭州 450001;2. 信息保障技術(shù)重點實驗室,北京 100072)

        基于因果知識網(wǎng)絡(luò)的攻擊路徑預(yù)測方法

        王碩1,湯光明1,寇廣1,2,宋海濤1

        (1. 解放軍信息工程大學(xué),河南 鄭州 450001;2. 信息保障技術(shù)重點實驗室,北京 100072)

        針對現(xiàn)有攻擊路徑預(yù)測方法無法準(zhǔn)確反映攻擊者攻擊能力對后續(xù)攻擊路徑的影響,提出了基于因果知識網(wǎng)絡(luò)的攻擊路徑預(yù)測方法。借助因果知識網(wǎng)絡(luò),首先通過告警映射識別已發(fā)生的攻擊行為;然后分析推斷攻擊者能力等級,進(jìn)而根據(jù)攻擊者能力等級動態(tài)調(diào)整概率知識分布;最后利用改進(jìn)的Dijkstra算法計算出最有可能的攻擊路徑。實驗結(jié)果表明,該方法符合網(wǎng)絡(luò)對抗實際環(huán)境,且能提高攻擊路徑預(yù)測的準(zhǔn)確度。

        攻擊路徑預(yù)測;因果知識網(wǎng)絡(luò);攻擊者能力;概率知識分布;Dijkstra算法

        1 引言

        隨著網(wǎng)絡(luò)攻擊技術(shù)的不斷發(fā)展,多步性成為目前網(wǎng)絡(luò)攻擊行為的主要特點之一。攻擊行為的多步性是指攻擊者利用目標(biāo)網(wǎng)絡(luò)中的一些漏洞,通過實施蓄意的多步驟攻擊行為來達(dá)到最終的攻擊目的。具有多步性的攻擊行為簡稱為多步攻擊,它給政府、企業(yè)乃至個人帶來了巨大的威脅,如Zeus僵尸網(wǎng)絡(luò)通過掃描探測、溢出攻擊、感染目標(biāo)主機、病毒傳播和竊取用戶信息這 5個攻擊步驟使數(shù)以萬計的網(wǎng)民遭受了無法挽回的經(jīng)濟(jì)損失[1]。目前,威脅極大的APT攻擊也屬多步攻擊范疇。多步攻擊威脅受到廣泛的關(guān)注,防護(hù)多步攻擊刻不容緩。攻擊路徑預(yù)測旨在通過告警關(guān)聯(lián)技術(shù)分析已發(fā)生的攻擊行為,揭示其中隱藏的相關(guān)邏輯,構(gòu)建攻擊場景,進(jìn)而推測攻擊者后續(xù)的攻擊步驟,為網(wǎng)絡(luò)安全主動防御提供重要依據(jù),成為目前應(yīng)對多步攻擊威脅的重要手段之一。

        攻擊路徑預(yù)測的關(guān)鍵分為2個部分:1) 理解當(dāng)前已發(fā)生的攻擊行為;2) 預(yù)測攻擊者未來可能實施的攻擊步驟。目前,針對第一部分的研究主要是通過關(guān)聯(lián)告警構(gòu)建攻擊場景。具體而言,分為數(shù)據(jù)挖掘、事先構(gòu)建攻擊過程和因果關(guān)聯(lián)。數(shù)據(jù)挖掘的方法主要是通過機器學(xué)習(xí)算法發(fā)現(xiàn)告警中隱藏的攻擊行為模式,形成過濾或關(guān)聯(lián)規(guī)則,在此基礎(chǔ)上進(jìn)行攻擊場景構(gòu)建,如Qin等[2]的時間序列模型和梅海彬等[3]利用告警間相似度函數(shù)來構(gòu)建攻擊活動序列集的方法。此種方法依賴專家知識較少,但是存在準(zhǔn)確度低、結(jié)果難以理解等缺陷。事先構(gòu)建攻擊過程的方法則大多通過專家知識來得到各種攻擊過程模板,然后將新的告警同這些攻擊過程模板相匹配,進(jìn)行實時關(guān)聯(lián)[4]。這種方法的難點是如何獲得用于描述攻擊過程的關(guān)聯(lián)規(guī)則,此外,這種方法無法檢測出未知攻擊行為。因果關(guān)聯(lián)的方法是利用各個攻擊步驟之間的因果邏輯關(guān)系,通過制定因果關(guān)聯(lián)規(guī)則來構(gòu)建攻擊場景。此方法成為目前攻擊場景構(gòu)建的主流方法,具有代表性的是 Jajodia等[5]的攻擊圖模型和Yu等[6]的隱彩色Petri網(wǎng)絡(luò)。前者通過有向圖描述不同攻擊步驟之間依賴關(guān)系,結(jié)合目標(biāo)網(wǎng)絡(luò)進(jìn)行告警關(guān)聯(lián)。而后者將資源狀態(tài)、攻擊行為及攻擊證據(jù)作為彩色 Petri網(wǎng)絡(luò)的不同類型節(jié)點,并將其互相關(guān)聯(lián)以完成攻擊預(yù)測。針對第二部分的研究主要是在第一部分的基礎(chǔ)上,設(shè)計相應(yīng)的推理規(guī)則以實現(xiàn)對后續(xù)攻擊路徑的預(yù)測。Wang等[7]根據(jù)通用漏洞評分系統(tǒng)(CVSS, common vulnerability scoring system)對漏洞復(fù)雜度的評分,賦予攻擊圖以概率屬性,并定義累積概率來計算整個網(wǎng)絡(luò)的安全屬性。然而該方法忽略了漏報、誤報等不確定事件對概率的影響。在Wang等的基礎(chǔ)上,蘇婷婷等[8]將攻擊圖直觀地表示為屬性鄰接矩陣,并通過矩陣算法計算攻擊成功的概率。陳小軍等[9]則利用累積概率計算目標(biāo)攻擊節(jié)點的最大可達(dá)概率,有效推斷攻擊意圖和計算攻擊路徑。呂慧穎等[10]深入分析了網(wǎng)絡(luò)對抗的時空特性,利用威脅狀態(tài)轉(zhuǎn)移圖挖掘威脅事件的時空關(guān)聯(lián)關(guān)系,實時識別威脅狀態(tài)、預(yù)測攻擊路徑。然而,由于網(wǎng)絡(luò)攻防過程的動態(tài)性和不確定性,導(dǎo)致攻擊圖節(jié)點概率不能客觀反映攻防雙方對抗?fàn)顟B(tài),從而影響攻擊路徑預(yù)測的準(zhǔn)確性。針對此問題,Xie等[11]首先深入分析了攻擊圖中的3種不確定性,即攻擊圖結(jié)構(gòu)的不確定性、攻擊行為發(fā)生的不確定性以及觸發(fā)告警的不確定性,并考慮了它們對攻擊路徑預(yù)測的影響。張少俊等[12]提出了一個在滿足觀測事件偏序條件下,利用貝葉斯推理計算攻擊圖節(jié)點的置信度方法,用于提高不確定性處理的準(zhǔn)確度。Abraham等[13]通過引入漏洞生命周期來實現(xiàn)時變的攻擊路徑預(yù)測。Fredj[14]則提出利用攻擊行為的危害大小來區(qū)分不同的攻擊者。馮學(xué)偉等[15]通過構(gòu)建馬爾可夫鏈模型,利用告警流挖掘不同攻擊類型之間的轉(zhuǎn)移概率,一定程度上解決了人工設(shè)定概率帶來的主觀性缺陷。然而,目前的研究通常是靜態(tài)的分析,不能根據(jù)攻擊行為和防御措施及時調(diào)整相關(guān)概率的生成,不能反映攻擊者攻擊能力的不同對后續(xù)攻擊路徑的影響,影響了攻擊路徑預(yù)測的準(zhǔn)確性。

        基于以上分析,本文充分考慮了網(wǎng)絡(luò)攻防實戰(zhàn)環(huán)境,提出了基于因果知識網(wǎng)絡(luò)的攻擊路徑預(yù)測方法。借助因果知識網(wǎng)絡(luò),綜合利用圖關(guān)系進(jìn)行告警映射,實時檢測已發(fā)生的攻擊行為。在此基礎(chǔ)上,推斷攻擊者能力等級,進(jìn)而根據(jù)攻擊者能力等級自適應(yīng)地調(diào)整攻擊行為發(fā)生及成功的概率,最終利用改進(jìn)的Dijkstra算法計算得出攻擊者最有可能的后續(xù)攻擊路徑。

        2 因果知識網(wǎng)絡(luò)模型

        2.1 因果知識網(wǎng)絡(luò)的提出

        定義1因果知識網(wǎng)絡(luò)(CKN, causal knowledge net),CKN=(N,E,Δ)。CKN 為有向無環(huán)圖。

        3)Δ為概率知識分布,。其中,Δ1是依附于有向邊 E1上的概率知識,Δ1(ij)表示在狀態(tài)si下可能發(fā)生后續(xù)攻擊aj的概率。Δ2是依附于有向邊 E2上的概率知識,Δ2(ij)表示在攻擊行為 ai發(fā)生后達(dá)到下一狀態(tài)sj的概率。Δ3是依附于有向邊E3上的概率知識,Δ3(i)表示狀態(tài)型告警 asi出現(xiàn)時能證明狀態(tài) si為 true的概率。Δ4是依附于有向邊E4上的概率知識,Δ4(i)表示事件型告警 aei出現(xiàn)時能證明攻擊行為ai發(fā)生的概率。

        本模型通過概率知識分布來推理實時的攻擊行為和預(yù)測后續(xù)攻擊路徑。對于攻擊行為節(jié)點,Δ4的推理優(yōu)先級高于Δ1,即當(dāng)事件型告警出現(xiàn)時,可以不用考慮其前置條件是否滿足,即可推斷該攻擊行為可能發(fā)生了;否則,通過已經(jīng)滿足的狀態(tài)條件來推斷攻擊行為發(fā)生的可能性。對于狀態(tài)節(jié)點來說,Δ3的推理優(yōu)先級高于Δ2,即狀態(tài)型告警出現(xiàn)時,可以確定該狀態(tài)為true,同時證明相應(yīng)攻擊已經(jīng)發(fā)生且成功;否則,通過攻擊行為發(fā)生和成功的概率來推斷相應(yīng)狀態(tài)為true的可能性。

        2.2 因果知識網(wǎng)絡(luò)的構(gòu)建方法

        因果知識網(wǎng)絡(luò)的構(gòu)建分為2個部分:網(wǎng)絡(luò)基本結(jié)構(gòu)的確定和概率知識分布Δ的生成。本文的網(wǎng)絡(luò)基本結(jié)構(gòu)假定利用專家知識庫確定,而重點研究概率知識分布Δ的生成。

        由 2.1 節(jié)知Δ=(Δ1,Δ2,Δ3,Δ4)。

        1)Δ3為利用狀態(tài)型告警推斷相應(yīng)狀態(tài)為true的概率,由IDS的特性知,此概率常置為1,即狀態(tài)型告警的出現(xiàn)能完全證明相應(yīng)的狀態(tài)為true。

        2)Δ4為利用事件型告警推斷攻擊行為發(fā)生的概率,由于IDS對攻擊行為的檢測存在誤差,此概率分3種情況進(jìn)行修正。

        ①正常情況

        正常情況的形式化描述為:aei∈AET且Pre(ai)=true。由于IDS告警不能完全證明攻擊行為已經(jīng)發(fā)生,為了客觀描述這種不確定性,結(jié)合貝葉斯定理,給出了事件型告警出現(xiàn)時推斷攻擊行為發(fā)生的概率,如式(1)所示。

        其中,o(ai)為IDS設(shè)備對ai的漏報率;d(ai)為IDS設(shè)備對ai的檢測率,m(ai)為IDS設(shè)備對ai的誤報率,一般與IDS的性能有關(guān);P(ai)為攻擊行為ai的先驗概率。

        ②誤報情況

        誤報情況的形式化描述為:aei∈AET且Pre(ai)=false,即攻擊的前置條件不滿足卻檢測到告警。處理方法為直接去除。

        ③漏報情況

        漏報情況的形式化描述為:asi∈AST且 Pre(si)=false,即攻擊行為已經(jīng)發(fā)生且成功,但沒有產(chǎn)生告警。Pre(si)中的元素之間為“或”的關(guān)系,即只要一個攻擊行為節(jié)點為真就使Pre(si)=true。處理方法為根據(jù)因果知識網(wǎng)絡(luò)以一定的概率補全。假如狀態(tài)節(jié)點 si為假,但沒有產(chǎn)生對應(yīng)的事件型告警,以Pre(si)包括 2個攻擊行為節(jié)點為例介紹補全方法。首先添加ai和aj,然后,由貝葉斯定理知

        P(ai|asi)+P(aj|asj)=1,則ai和aj這2個攻擊行為發(fā)生的概率為

        其中,d(ai)和 d(aj)分別為 IDS設(shè)備對攻擊行為 ai和aj的檢測率。

        3)Δ1表示前置條件滿足時后續(xù)攻擊行為發(fā)生的概率,Δ2則是攻擊行為發(fā)生時后續(xù)狀態(tài)為true的概率,即攻擊行為成功的概率。Δ1和Δ2是緊密聯(lián)系的,在攻擊路徑推理中往往是一起考慮的,即用它們的乘積Δ1×Δ2表示攻擊行為發(fā)生且成功的概率,記Δ12=Δ1×Δ2。目前確定Δ12的方法主要是依據(jù)攻擊行為復(fù)雜度來估計。然而在網(wǎng)絡(luò)攻防實戰(zhàn)中,Δ12不僅與攻擊行為復(fù)雜度有關(guān),還與攻擊者能力有關(guān)。具有不同攻擊能力的攻擊者對同一漏洞攻擊成功的可能性必然不同。鑒于此,本文綜合考慮攻擊者能力等級和攻擊行為復(fù)雜度這2個方面,提出一種更加合理的Δ12確定方法,符合網(wǎng)絡(luò)對抗實戰(zhàn)的實際。

        定義3攻擊者能力等級Cap = {low, mid, high},從網(wǎng)絡(luò)對抗實戰(zhàn)中抽象出來用于刻畫不同攻擊者攻擊能力高低的變量。本文將攻擊者能力等級分為低(low)、中(mid)、高(high)3個等級。于是,攻擊行為 ai發(fā)生且成功的概率Δ12(ai)可由式(6)確定。

        其中,Cpx(ai)為ai的攻擊行為復(fù)雜度,Cap(attacker)為攻擊者能力等級。攻擊行為發(fā)生且成功的概率的確定依據(jù)如表1所示。

        表1攻擊行為發(fā)生且成功的概率Δ12(ai)的確定依據(jù)

        3 攻擊路徑預(yù)測

        攻擊路徑預(yù)測是通過分析已發(fā)生的攻擊行為,借助因果知識網(wǎng)絡(luò),利用概率知識進(jìn)行推理預(yù)測的過程。本文首先通過告警映射識別已發(fā)生的攻擊行為,即實時攻擊跡,然后根據(jù)攻擊跡動態(tài)推斷攻擊者能力等級,進(jìn)而自適應(yīng)地調(diào)整概率知識分布,最后利用概率推理確定最有可能的后續(xù)攻擊路徑。

        3.1 實時攻擊跡的生成

        定義4告警跡Alarm=(AS,AE),其中,AS為狀態(tài)型告警集合,AE為事件型告警集合。特別地,T時刻的狀態(tài)型告警集合為 AST={asi|i=1,2,…},T時刻的事件型告警集合為,則T時刻的告警跡表示為

        告警跡是通過融合多源IDS的告警并進(jìn)行漏報誤報處理后的告警集合,攻擊跡則反映了攻擊者已完成的攻擊行為,一方面作為推斷攻擊者能力等級的依據(jù),另一方面是預(yù)測攻擊者后續(xù)攻擊路徑的基礎(chǔ)。實時攻擊跡獲取的本質(zhì)是在 CKN的基礎(chǔ)上建立由實時告警跡AlarmT到實時攻擊跡AttackT的映射,具體如算法1所示。

        算法1實時攻擊跡識別方法

        輸入因果知識網(wǎng)絡(luò) CKN=(N,E,Δ),T時刻告警跡,判定攻擊行為發(fā)生的閾值ε;

        6) end for

        7) for(每一個 aei∈AET)

        10) end for

        11) return AttackT;

        算法1在獲取T時刻的攻擊跡時,為了避免重復(fù)計算,初始化AttackT為AttackT?1,很好地繼承了前一時刻的計算結(jié)果,提高了算法的運算效率。第3)行是通過狀態(tài)型告警生成 ST;第 4)行生成攻擊發(fā)生且成功地攻擊行為集合 A″;第 7)行~第 9)行生成攻擊發(fā)生但失敗的攻擊行為集合 A′。算法復(fù)雜度為O(as_num·ST_num+ae_num·A_num)。

        3.2 攻擊者能力等級實時推斷

        定義6攻擊行為結(jié)果Res∈{Lsuc, Lfail, Msuc, Mfail,Hsuc, Hfail}。其中,Lsuc表示攻擊者成功實施一次攻擊行為復(fù)雜度為low的攻擊,Mfail表示攻擊者失敗實施一次攻擊行為復(fù)雜度為mid的攻擊,以此類推。

        攻擊行為結(jié)果是對實時攻擊跡的抽象,能夠直觀反映攻擊者實際的攻擊狀況,從而為推斷攻擊者能力等級提供依據(jù)。攻擊行為結(jié)果確定方法如式(7)所示。

        由于網(wǎng)絡(luò)攻防的實時動態(tài)變化,攻擊者能力等級與攻防雙方的對抗活動緊密相關(guān),且具有客觀相對性,故攻擊者所處不同能力等級的先驗概率相等。由貝葉斯定理得出以下結(jié)論。

        定理 1由同一攻擊行為結(jié)果推斷出的攻擊者能力等級的概率分布正比于攻擊者實施此攻擊成功或失敗的概率分布。

        證明設(shè)同一攻擊行為結(jié)果Res(ai),則由Res(ai)所推斷的攻擊者能力等級的概率為 P(Cap(attacker)|Res(ai)),攻擊成功的概率為f(Cpx(ai),Cap(attacker)),攻擊失敗的概率為1?f(Cpx(ai),Cap (attacker))。由貝葉斯定理知

        又由于攻擊者所處的不同能力等級的先驗概率P(Cap(attacker)相等,故

        而當(dāng)Res∈{Lsuc, Msuc, Hsuc}時,

        于是,

        同理,當(dāng)Res∈{Lfail, Mfail, Hfail}時,

        又有

        綜上得證。

        由定理1能夠計算得出由不同攻擊行為結(jié)果推斷攻擊者能力等級的概率分布,計算結(jié)果如表2所示。

        表2不同攻擊行為結(jié)果推斷攻擊者能力等級的概率分布

        3.3 攻擊路徑實時預(yù)測

        攻擊路徑實時預(yù)測的形式化表述為:已知因果知識網(wǎng)絡(luò)CKN=(N,E,Δ)、T時刻的攻擊跡AttackT、T時刻的攻擊者能力等級CapT和攻擊目標(biāo)S[y],求攻擊者從目前狀態(tài)到達(dá)目標(biāo)S[y]一條攻擊路徑,使攻擊成功的概率最大。

        為了解決該問題,首先定義概率鄰接矩陣和特殊攻擊行為節(jié)點列表,然后給出攻擊路徑實時預(yù)測算法,求達(dá)目標(biāo)S[y]的最大可能攻擊路徑及其攻擊成功的概率。

        定義7概率鄰接矩陣G。 設(shè)CKN有n個狀態(tài)型節(jié)點,則G是一個n×n的矩陣, gij表示從狀態(tài)型節(jié)點i到狀態(tài)型節(jié)點j的攻擊行為,如果Post(i)∩Pre(j)=?,即表示沒有攻擊行為節(jié)點使?fàn)顟B(tài)由 i轉(zhuǎn)移到j(luò),則gij=0;如果Post(i)∩Pre(j)= aij,即存在攻擊行為aij能使?fàn)顟B(tài)由i轉(zhuǎn)移到j(luò),則gij=Δ12(aij)。在概率鄰接矩陣中忽略特殊攻擊行為節(jié)點。

        定義 8特殊攻擊行為節(jié)點列表 L。對于特殊攻擊行為節(jié)點 ai,用三元組 L(ai)=(Pre(ai),Post(ai),Δ12(ai))表示。其中,Pre(ai)表示其前置條件,即不少于 2個的狀態(tài)節(jié)點;Post(ai)表示其后置條件;Δ12(ai)表示攻擊行為 ai發(fā)生且成功的概率。如圖 1中的 a11為特殊攻擊行為節(jié)點,則其三元組記為(S5∪S6,S9,Δ12(a11))。

        圖1因果知識網(wǎng)絡(luò)結(jié)構(gòu)

        圖1表示一個因果知識網(wǎng)絡(luò)結(jié)構(gòu),其中,圓表示狀態(tài)節(jié)點,正方形表示攻擊行為節(jié)點。設(shè)a1、a3、a6攻擊行為復(fù)雜度為 low;a2、a4、a5、a7、a8、a9、a10、a13攻擊行為復(fù)雜度為 mid;a11、a12攻擊行為復(fù)雜度為high。對于一個攻擊能力等級為mid的攻擊者而言,特殊攻擊行為節(jié)點列表為(S5∪S6,S9,0.3),概率鄰接矩陣如圖2所示。

        圖2概率鄰接矩陣

        經(jīng)典的Dijkstra算法常用于計算有向圖中一個頂點到其他所有頂點的最短路徑。攻擊路徑預(yù)測算法的本質(zhì)同Dijkstra算法類似,只是由于特殊攻擊行為節(jié)點的存在,使常規(guī)的鄰接矩陣無法完整表示攻擊信息,且攻擊路徑預(yù)測算法只需計算目標(biāo)節(jié)點與攻擊跡中集合S的最短攻擊路徑。因此,本文在Dijkstra算法的基礎(chǔ)上,首先利用概率鄰接矩陣求可能的攻擊路徑預(yù)測結(jié)果,然后結(jié)合特殊攻擊行為節(jié)點列表進(jìn)行修正來實現(xiàn)對攻擊路徑的實時預(yù)測。具體算法如下。

        算法2攻擊路徑實時預(yù)測算法

        輸入概率鄰接矩陣G,特殊攻擊行為節(jié)點列表L,攻擊目標(biāo)S[y],T時刻的攻擊跡AttackT;

        輸出最大可能攻擊路徑 Path及攻擊成功的概率MaxProb。

        1) (Path,MaxProb)= ProbPath[S[y]];

        2) if (存在特殊攻擊行為節(jié)點 ai在路徑ProbPath[S[y]].Path中)

        3) Prob(ai)=Δ12(ai) ΠProbPath(S[i].MaxProb)其中,S[i]∈Pre(ai);

        4) if (Prob(ai)>ProbPath[Post(ai)].MaxProb);

        5) Path=(PathPath[L.Post(ai)])∪each Path[S[i]];

        6) MaxProb = MaxProb / ProbPath [Post(ai)].MaxProb·Prob(ai); //更新路徑及概率

        7) return Path and MaxProb;

        求解可能攻擊路徑函數(shù)ProbPath的定義如下。

        1) ProbPath (S[x])

        2) Path=null; MaxProb=0; add S[x]to Path0;

        3) for (int i=x?1; i>0; i??)

        4)float MaxProb0=0; int u=x;

        5)for (int j=1; j<n; ++j)

        6)if(S[j]?Path0amp;amp; Prob[j]>0)

        7)u=j; MaxProb0= Prob[j];

        8)end for

        9)add S[u]to Path0;//將節(jié)點加入路徑中

        10) for (int j=1; j<n; j++)

        11)if (S[j]?Path0amp;amp; G[j][u]>0)

        12)if (Prob[u]G[j][u]>Prob[j])

        13)Prob[j]=Prob[u]G[j][u];

        14)end for

        15)if (S[u]∈AttackT)

        16)Path =Path0; MaxProb =MaxProb0;

        17) end for

        18) return (Path, MaxProb); //返回有效路徑及其攻擊成功的概率

        算法2借鑒了Dijkstra算法在求有向圖中單源最短路徑的有效性,設(shè)計了ProbPath函數(shù)來計算概率鄰接矩陣中源到點集之間的最短路徑。整個算法主要分為2步。

        1) 算法2第1)行調(diào)用ProbPath函數(shù),依據(jù)概率鄰接矩陣求得已知攻擊跡AttackT到攻擊目標(biāo)S[y]的可能路徑,然而由于特殊攻擊行為節(jié)點的存在,使算法2第1)行中獲得的路徑可能并不準(zhǔn)確。

        2) 算法2第2)~7)行根據(jù)特殊攻擊行為節(jié)點列表,判斷第1)行中獲取的攻擊路徑中是否包含特殊攻擊行為節(jié)點,若存在,則將此路徑變換為含有特殊攻擊行為節(jié)點的路徑,并通過比較二者攻擊成功的概率大小進(jìn)行選擇,最終確定最大可能攻擊路徑Path和其攻擊成功的概率MaxProb。

        本算法與Dijkstra算法復(fù)雜度相同,都為O(n2),即為因果知識網(wǎng)絡(luò)中狀態(tài)節(jié)點個數(shù)的平方。

        4 實驗分析

        4.1 實驗環(huán)境

        為了驗證本文方法的有效性,搭建了一個實際網(wǎng)絡(luò)環(huán)境來進(jìn)行測試。實驗環(huán)境拓?fù)淙鐖D3所示。

        外網(wǎng)用戶可通過Internet訪問本網(wǎng)絡(luò)。實驗網(wǎng)絡(luò)分為4個區(qū)域,分別是DMZ區(qū)、子網(wǎng)1、子網(wǎng)2和子網(wǎng)3。DMZ區(qū)包含Web服務(wù)器和E-mail服務(wù)器。子網(wǎng)1由2臺主機構(gòu)成。子網(wǎng)2由一臺工作站和文件服務(wù)器組成。子網(wǎng)3包括一臺工作站和數(shù)據(jù)庫服務(wù)器。各區(qū)域的IDS負(fù)責(zé)檢測各區(qū)域中的異常行為并產(chǎn)生告警。網(wǎng)絡(luò)可達(dá)性設(shè)為:DMZ區(qū)由防火墻1保護(hù)并連接Internet,且只能訪問子網(wǎng)1中的主機1、子網(wǎng)2中的文件服務(wù)器和子網(wǎng)3中的數(shù)據(jù)庫服務(wù)器;子網(wǎng)1中的主機1能夠訪問子網(wǎng)2和3中的所有機器,主機3只能訪問主機1和數(shù)據(jù)庫服務(wù)器,主機2只能訪問主機3;子網(wǎng)2中的工作站1和子網(wǎng)3中的工作站 2能訪問數(shù)據(jù)服務(wù)器和文件服務(wù)器。通過Nessus脆弱點掃描器對網(wǎng)絡(luò)各網(wǎng)絡(luò)段進(jìn)行掃描,得到各主機中漏洞信息如表3所示。依據(jù)漏洞信息和CVSS分析得出的攻擊行為信息如表4所示。

        4.2 實驗結(jié)果及分析

        4.2.1 計算過程及分析

        圖3實驗網(wǎng)絡(luò)拓?fù)?/p>

        根據(jù)圖3和表4,確定因果知識網(wǎng)絡(luò)基本結(jié)構(gòu)。假定攻擊目標(biāo)是獲取主機3的root權(quán)限,設(shè)計了3個實驗進(jìn)行驗證,實驗結(jié)果如表5所示。具體推理過程如圖4所示。圖5則展示了實驗中各個狀態(tài)節(jié)點攻擊成功概率變化情況。

        為了不失一般性,假定實驗1中沒有觀測到任何事件,即AlarmT=null。由算法2知,共有6條攻擊路徑能夠?qū)崿F(xiàn)攻擊目標(biāo),分別為 path1∶ s1→a1→s2→a5→s8→a13→s9、path2∶ s1→a1→s2→a3→s4→a6→s6→a11→s8→a13→s9、 path3∶ s1→a1→s2→a4→s5→a7→s6→a11→s8→a13→s9、 path4∶ s1→a1→s2→a4→s5→a8→s7→a12→s8→a13→s9、 path5∶ s1→a1→s2→a4→s5→a10→s8→a13→s9和 path6∶ s1→a2→s3→a1→s2→a4→s5→a9→s9。對于攻擊能力等級為Low的攻擊者的最有可能攻擊路徑為 path5,攻擊成功率為0.023;對于攻擊能力等級為mid的攻擊者的最有可能攻擊路徑同樣為 path5,但攻擊成功率提高到0.123;對于攻擊能力等級為high的攻擊者最有可能攻擊路徑為path4s,攻擊成功率為0.459。對于實驗2,T時刻觀測到的告警為AlarmT=(as2,ae2, ae5),由算法1得出攻擊者的攻擊跡描述為攻擊者成功發(fā)動攻擊行為 a1使攻擊狀態(tài)達(dá)到 s2,但發(fā)動攻擊 a2時遭遇了失敗,這個概率達(dá)到0.95。由算法2推斷攻擊者的攻擊能力等級為mid,由算法3能得出攻擊者最有可能的后續(xù)攻擊路徑為:s2→a4→s5→ a10→s8→a13→s9,攻擊成功的概率為 0.175。對于實驗 3,T時刻觀測到的告警為AlarmT=(as2,as5,ae1, ae4,ae10),由算法1得出攻擊者的攻擊跡描述為:攻擊者成功實施攻擊行為 a1和 a4使攻擊狀態(tài)達(dá)到 s5,但發(fā)動攻擊 a10時遭遇了失敗,這個概率達(dá)到 0.95。由算法2推斷攻擊者的攻擊能力等級為high,由算法3能得出攻擊者最有可能的后續(xù)攻擊路徑為:s5→a8→s7→a12→s8→ a13→s9,攻擊成功的概率為0.567。對于本文提出的模型而言,隨著時間的不斷推進(jìn),攻擊者暴露的攻擊行為越多,攻擊跡越完整,對攻擊者能力的推斷越合理,后續(xù)攻擊路徑的預(yù)測也就更準(zhǔn)確。

        表3各主機信息及其所含漏洞信息

        表4攻擊行為節(jié)點的信息

        表5實驗結(jié)果

        圖4不同告警跡條件下攻擊路徑推斷過程示意

        圖5實驗中各個狀態(tài)節(jié)點攻擊成功概率

        4.2.2 測試結(jié)果的比較與分析

        利用網(wǎng)絡(luò)安全專業(yè)的 50名學(xué)員作為攻擊者,分別就圖3所示的網(wǎng)絡(luò)進(jìn)行攻擊測試實驗,事先給定攻擊者該網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)、漏洞信息及因果知識網(wǎng)絡(luò)結(jié)構(gòu)。每名攻擊者均嘗試因果知識網(wǎng)絡(luò)中的 6條攻擊路徑,總共形成300個攻擊跡。本文算法計算結(jié)果與攻擊測試實驗統(tǒng)計結(jié)果對比如表6所示。

        表6本文算法計算結(jié)果與攻擊測試實驗統(tǒng)計結(jié)果對比

        依據(jù) 50名攻擊者的攻擊跡,利用本文的攻擊者能力等級推斷算法能夠?qū)⑦@些攻擊者分類3類:攻擊者能力等級為low的學(xué)員9人、攻擊者能力等級為mid的學(xué)員37人和攻擊者能力等級為high的學(xué)員4人。表6每一組結(jié)果由2個數(shù)字構(gòu)成:前者表示利用本文算法得出的不同能力等級的攻擊者利用不同攻擊路徑的攻擊成功概率;后者帶下劃線,表示由攻擊測試實驗統(tǒng)計得出的實際攻擊成功概率,如0表示9名能力等級low的攻擊者中沒有1名能夠攻擊成功表示37名能力等級為mid的攻擊者中有4名攻擊成功,實際攻擊成功概率為。由表6的統(tǒng)計結(jié)果對比分析得出以下結(jié)論。

        1) 不同能力等級的攻擊者之間攻擊成功概率有著較大差別,故本文通過區(qū)分攻擊者能力進(jìn)行細(xì)粒度的攻擊路徑預(yù)測方法有重要意義。

        2) 由于攻擊者數(shù)目等客觀條件約束的影響,本文算法計算的結(jié)果與攻擊測試實驗統(tǒng)計結(jié)果有一定的差異,但本文算法計算結(jié)果能夠較為準(zhǔn)確地反映實際的攻擊成功概率,能夠從攻擊者角度有效預(yù)測攻擊路徑,為網(wǎng)絡(luò)安全漏洞修復(fù)及實時防護(hù)提供依據(jù)。

        此外,本文與文獻(xiàn)[9]和文獻(xiàn)[10]的算法進(jìn)行了比較。一方面利用文獻(xiàn)[9]的方法計算本文因果知識網(wǎng)絡(luò)中最有可能攻擊路徑為 path2,攻擊成功的概率為 0.256,明顯大于實際攻擊成功概率;另一方面依據(jù)文獻(xiàn)[9]的攻擊圖,在沒有任何監(jiān)測事件時,本文算法得出無論攻擊者能力處于哪個等級,最大可能攻擊路徑都為:s0→a10→s7→a8→s8→a9→s9→a5→s5,結(jié)果與文獻(xiàn)[9]的算法一致,然而文獻(xiàn)[9]的算法中所定義的累積概率是指達(dá)到當(dāng)前攻擊狀態(tài)或發(fā)生當(dāng)前攻擊行為的整個可能性,即累加所有可能攻擊路徑的概率之和,這與攻擊者往往選擇一條確定的攻擊路徑這一實際不符,造成最終計算的攻擊成功概率往往偏高,而本文采用的改進(jìn)Dijkstra算法,通過比較每一條可能攻擊路徑的概率確定最有可能攻擊路徑,得到的攻擊成功概率相對準(zhǔn)確合理。

        文獻(xiàn)[10]利用威脅狀態(tài)轉(zhuǎn)移圖進(jìn)行實時威脅狀態(tài)識別時,在推斷出目前的威脅狀態(tài)后,進(jìn)一步推斷6條可能的后續(xù)路徑,而利用本文的算法,根據(jù)攻擊者已完成的威脅,推斷此攻擊者的攻擊能力等級為 high,進(jìn)而推斷最有可能的攻擊路徑為s0→a1→s1→a5→s3→a6→s7→a3→s8→a8→s10和 s0→a1→s1→a5→s3→a6→s7→a7→s8→a8→s10,攻擊成功概率為0.49。橫向比較來看,本文的方法優(yōu)勢在于能夠根據(jù)攻擊者能力等級自適應(yīng)地調(diào)整相關(guān)概率知識,符合網(wǎng)絡(luò)對抗實際,更具合理性。

        5 結(jié)束語

        由于網(wǎng)絡(luò)攻防的動態(tài)性和復(fù)雜性,攻擊路徑預(yù)測具有不確定性。針對現(xiàn)有攻擊路徑預(yù)測方法無法準(zhǔn)確反映攻擊者攻擊能力對后續(xù)攻擊路徑影響這一問題,本文提出一種基于因果知識網(wǎng)絡(luò)的攻擊路徑預(yù)測方法。該方法利用因果知識網(wǎng)絡(luò)模型對攻擊行為建模,網(wǎng)絡(luò)結(jié)構(gòu)定性反映了攻擊步驟之間的因果關(guān)系,概率知識分布則定量反映了因果知識網(wǎng)絡(luò)中的不確定性。首先將告警跡映射到因果知識網(wǎng)絡(luò)以識別攻擊跡;然后通過分析實時攻擊跡推斷攻擊者能力等級,進(jìn)而根據(jù)攻擊者能力等級自適應(yīng)調(diào)整概率知識分布;最后利用概率知識推理攻擊者最有可能的攻擊路徑。實驗結(jié)果表明該方法能夠提高攻擊路徑預(yù)測的準(zhǔn)確度,有效減少告警數(shù)量,為網(wǎng)絡(luò)管理員及時實施防御策略提供了重要依據(jù)。下一步工作包括因果知識網(wǎng)絡(luò)結(jié)構(gòu)的生成研究和實現(xiàn)算法的并行化。

        [1]SHAH C. Zeus crime ware toolkit[EB/OL]. http://blogs.mcafee.com/mcafeelabs/zeus-crimeware-toolkit.

        [2]QIN X, LEE W. Statistical causality of INFOSEC alert data[C]// Recent Advances in Intrusion Detection 2003. Berlin, 2003: 73-93.

        [3]梅海彬, 龔儉, 張明華. 基于警報序列聚類的多步攻擊模式發(fā)現(xiàn)研究[J]. 通信學(xué)報, 2011, 32 (5): 63-69.MEI H B, GONG J, ZHANG M H. Research on discovering multi-step attack patterns based on clustering IDS alert sequences[J].Journal on Communications, 2011, 32(5): 63-69.

        [4]VALEUR F, VIGNA G, KRUEGEL C, et al. A comprehensive approach to intrusion detection alert correlation[J]. IEEE Trans. Dependable and Secure Computing, 2004, 1(3): 146-169.

        [5]JAJODIA S, NOEL S, KALAPA P, et al. Cauldron: mission-centric cyber situational awareness with defense in depth[C]//The Military Communications Conference. Baltimore, 2011: 1339-1344.

        [6]YU D, FRINCKE D. Improving the quality of alerts and predicting intruder’s next goal with hidden colored petri-net[J]. Computer Networks, 2007,51(3): 632-654.

        [7]WANG L, ISLAM T, LONG T, et al. An attack graph-based probabilistic security metric[C]//Data and Applications Security XXII. Berlin Heidelberg, 2008: 283-296.

        [8]蘇婷婷, 潘曉中, 肖海燕. 基于屬性鄰接矩陣的攻擊圖表示方法研究[J]. 電子與信息學(xué)報, 2012, 34(7): 1744-1747.SU T T, PAN X Z, XIAO H Y. Research on attack graph based on at-tributes adjacncy matrix[J]. Journal of Electronics amp; Information Technology, 2012, 34(7): 1744-1747.

        [9]陳小軍, 方濱興, 譚慶豐. 基于概率攻擊圖的內(nèi)部攻擊意圖推斷算法研究[J]. 計算機學(xué)報, 2014, 37(1): 62-72.CHEN X J, FANG B X, TAN Q F. Inferring attack intent of malicious insider based on probabilistic attack graph model[J]. Chinese Journal of Computers, 2014, 37(1): 62-72.

        [10]呂慧穎, 彭武, 王瑞梅. 基于時空關(guān)聯(lián)分析的網(wǎng)絡(luò)實時威脅識別與評估[J]. 計算機研究與發(fā)展, 2014, 51(5): 1039-1049.LV H Y, PENG W, WANG R M. A real-time network threat recognition and assessment method based on association analysis of time and space[J]. Journal of Computer Research and Development, 2014, 51(5):1039-1049.

        [11]XIE P, LI J H, OU X M, et al. Using Bayesian networks for cyber security analysis[C]//The 40th IEEE/IFIP International Conference on Dependable Systems and Networks(DSN). Chicago, 2010: 211-220.

        [12]張少俊, 李建華, 宋珊珊. 貝葉斯推理在攻擊圖節(jié)點置信度計算中的應(yīng)用[J]. 軟件學(xué)報, 2010, 21(9): 2376-2386.ZHANG S J , LI J H, SONG S S. Using Bayesian inference for computing attack graph node beliefs[J]. Journal of Software, 2010, 21(9):2376-2386.

        [13]ABRAHAM S, NAIR S. A predictive framework for cyber security analytics using attack graphs[J]. International Journal of Computer Networks amp; Communications, 2015, 7(1): 1-17.

        [14]FREDJ O B. A realistic graph-based alert correlation system[J]. Security and Communication Network, 2015, 8(15): 2477-2493.

        [15]馮學(xué)偉, 王東霞, 黃敏桓. 一種基于馬爾可夫性質(zhì)的因果知識挖掘方法[J]. 計算機研究與發(fā)展, 2014, 51(11): 2493-2504.FENG X W, WANG D X, HANG M H. A mining approach for causal knowledge in alert correlating based on the Markov property[J]. Journal of Computer Research and Development, 2014, 51(11):2493-2504.

        Attack path prediction method based on causal knowledge net

        WANG Shuo1, TANG Guang-ming1, KOU Guang1,2, SONG Hai-tao1
        (1. PLA Information Engineering University, Zhengzhou 450001, China;
        2. Science and Technology on Information Assurance Laboratory, Beijing 100072, China)

        The existing attack path prediction methods can not accurately reflect the variation of the following attack path caused by the capability of the attacker. Accordingly an attack path prediction method based on causal knowledge net was presented. The proposed method detected the current attack actions by mapping the alarm sets to the causal knowledge net. By analyzing the attack actions, the capability grade of the attacker was inferred, according to which adjust the probability knowledge distribution dynamically. With the improved Dijkstra algorithm, the most possible attack path was computed. The experiments results indicate that the proposed method is suitable for a real network confrontation environment. Besides, the method can enhance the accuracy of attack path prediction.

        attack path prediction, causal knowledge net, attacker capability, probability knowledge distribution, Dijkstra algorithm

        s:The National Natural Science Foundation of China(No.61303074), Foundation of Science and Technology on Information Assurance Laboratory (No.KJ-14-106)

        TP393.8

        A

        10.11959/j.issn.1000-436x.2016210

        2016-02-22;

        2016-08-18

        國家自然科學(xué)基金資助項目(No.61303074);信息保障技術(shù)重點實驗室開放基金資助項目(No.KJ-14-106)

        王碩(1991-),男,河南南陽人,解放軍信息工程大學(xué)碩士生,主要研究方向為網(wǎng)絡(luò)安全。

        湯光明(1963-),女,湖南常德人,解放軍信息工程大學(xué)教授,博士生導(dǎo)師,主要研究方向為網(wǎng)絡(luò)信息安全和體系對抗。

        寇廣(1983-),男,河南許昌人,解放軍信息工程大學(xué)講師,主要研究方向為網(wǎng)絡(luò)安全態(tài)勢感知、大數(shù)據(jù)和云計算安全。

        宋海濤(1990-),男,山東煙臺人,解放軍信息工程大學(xué)博士生,主要研究方向為網(wǎng)絡(luò)安全。

        猜你喜歡
        能力
        消防安全四個能力
        “一元一次不等式組”能力起航
        培養(yǎng)觀察能力
        幽默是一種能力
        加強品讀與表達(dá),提升聽說讀寫能力
        培養(yǎng)觀察能力
        會“吵架”也是一種能力
        大興學(xué)習(xí)之風(fēng) 提升履職能力
        能力提升篇
        你的換位思考能力如何
        无码中文字幕日韩专区| 日本一区二区三区四区在线看| 一区二区三区手机看片日本韩国 | 日韩极品视频免费观看| 99精品人妻无码专区在线视频区| 俺来也俺去啦久久综合网| 国产精品亚洲综合天堂夜夜| 91乱码亚洲精品中文字幕| 大又大又粗又硬又爽少妇毛片| 黑人玩弄漂亮少妇高潮大叫| 国产清品夜色一区二区三区不卡| 日韩精品一区二区三区av| 亚洲gay片在线gv网站| 日日噜狠狠噜天天噜av| 国产一级淫片免费播放电影| 亚洲精品视频一区二区三区四区| 邻居少妇张开腿让我爽了一夜 | 日韩毛片基地一区二区三区| 人妻中文字幕一区二区二区| 日本免费一区二区三区在线播放| av永久天堂一区二区三区| 在线观看免费午夜大片| 无码骚夜夜精品| 中文亚洲爆乳av无码专区| 内射中出后入内射极品女神视频| 制服丝袜一区二区三区| 一本色道久久综合亚洲精品不卡| 免费一级黄色大片久久久| av资源在线免费观看| 极品少妇hdxx麻豆hdxx| 成人欧美一区二区三区a片| 无码国产精品色午夜| 粉嫩的极品女神尤物在线| 精品国产性色无码av网站| AV有码在线免费看| 久久精品网站免费观看| 国产18禁黄网站免费观看| 国产亚洲av无码专区a∨麻豆| 国内自拍偷拍亚洲天堂| 久久久人妻精品一区bav| 中文字幕人妻熟在线影院|