• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于貝葉斯網(wǎng)絡(luò)d-分隔定理的節(jié)點(diǎn)置信度計(jì)算方法

      2016-12-26 08:14:54亢凱航王云峰
      關(guān)鍵詞:置信度攻擊者貝葉斯

      王 輝 亢凱航 王云峰

      (河南理工大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 河南 焦作 454000)

      ?

      基于貝葉斯網(wǎng)絡(luò)d-分隔定理的節(jié)點(diǎn)置信度計(jì)算方法

      王 輝 亢凱航 王云峰

      (河南理工大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 河南 焦作 454000)

      現(xiàn)有的貝葉斯網(wǎng)絡(luò)節(jié)點(diǎn)置信度計(jì)算方法,存在著因條件概率的錯(cuò)誤計(jì)算和節(jié)點(diǎn)的相關(guān)性導(dǎo)致的節(jié)點(diǎn)置信度錯(cuò)誤計(jì)算問題。這些問題降低了節(jié)點(diǎn)置信度的準(zhǔn)確性,影響了網(wǎng)絡(luò)威脅傳播路徑預(yù)測(cè)的有效性。為此,提出基于貝葉斯網(wǎng)絡(luò)d-分隔定理的節(jié)點(diǎn)置信度計(jì)算方法。首先,通過分析攻擊成本和攻擊行為發(fā)生的可能性之間的關(guān)系,提出攻擊行為發(fā)生的條件概率計(jì)算方法,以解決條件概率的錯(cuò)誤計(jì)算問題;其次,通過引入貝葉斯網(wǎng)絡(luò)分隔定理,使存在關(guān)聯(lián)性的節(jié)點(diǎn)在它們共有的d-分隔集合條件下相互獨(dú)立,并提出節(jié)點(diǎn)置信度的計(jì)算方法,以有效地避免相關(guān)性導(dǎo)致的節(jié)點(diǎn)置信度錯(cuò)誤計(jì)算;最后,實(shí)驗(yàn)結(jié)果表明,該方法有效地解決了節(jié)點(diǎn)置信度的錯(cuò)誤計(jì)算問題,提高了節(jié)點(diǎn)置信度的準(zhǔn)確性,實(shí)現(xiàn)了對(duì)網(wǎng)絡(luò)威脅傳播路徑的有效預(yù)測(cè)。

      節(jié)點(diǎn)置信度 條件概率 相關(guān)性 d-分隔 攻擊成本

      0 引 言

      近年來,網(wǎng)絡(luò)系統(tǒng)的安全性日益受到人們的關(guān)注。之所以如此,一個(gè)重要的原因是現(xiàn)有的網(wǎng)絡(luò)安全防御技術(shù)或安全措施未能很好地解決網(wǎng)絡(luò)安全問題[1]。目前成熟的防御技術(shù)如防火墻、IDS等,是一種根據(jù)預(yù)定的解決方案對(duì)那些已知的且被檢測(cè)出的安全威脅進(jìn)行防范的被動(dòng)防御技術(shù)。而對(duì)于一些未知的、能高度規(guī)避檢測(cè)的網(wǎng)絡(luò)攻擊,卻沒有有效的防御辦法。因此,我們需要就目標(biāo)網(wǎng)絡(luò)可能遭受到的未知威脅進(jìn)行主動(dòng)防范,以便管理人員在損失發(fā)生之前控制安全威脅。而防范未知安全威脅的一個(gè)重要途徑就是預(yù)測(cè)網(wǎng)絡(luò)威脅的傳播路徑。

      目前,許多組織和目標(biāo)都致力于通過主動(dòng)防御技術(shù)分析目標(biāo)網(wǎng)絡(luò)的安全威脅。這其中,攻擊圖和貝葉斯網(wǎng)絡(luò)是應(yīng)用最為廣泛的網(wǎng)絡(luò)威脅分析工具。攻擊圖能夠基于系統(tǒng)網(wǎng)絡(luò)配置和脆弱性信息,展示網(wǎng)絡(luò)威脅的傳播路徑[2]。依據(jù)節(jié)點(diǎn)和邊表示的含義的不同,攻擊圖可以分為狀態(tài)攻擊圖和因果關(guān)系圖[3]。因果關(guān)系圖用節(jié)點(diǎn)表示系統(tǒng)條件(屬性)和網(wǎng)絡(luò)攻擊,有向邊表示節(jié)點(diǎn)間的因果關(guān)系。因果關(guān)系圖具有很好的擴(kuò)展性,但并不具備處理不確定性關(guān)系的能力。而貝葉斯網(wǎng)絡(luò)用節(jié)點(diǎn)和有向弧描述攻擊行為和攻擊證據(jù)的依賴關(guān)系,具備處理非確定性關(guān)系的能力[4]。同時(shí),其本身是一種因果攻擊圖[5]??紤]到網(wǎng)絡(luò)威脅的傳播路徑具有不確定性,因而將貝葉斯網(wǎng)絡(luò)作為網(wǎng)絡(luò)威脅分析的有效方法。但是,這種分析方法需要解決節(jié)點(diǎn)概率的量化問題[6]。目前,這種標(biāo)準(zhǔn)化工作的一個(gè)較為成熟的成果是通用脆弱點(diǎn)評(píng)估系統(tǒng)(CVSS)[7,8]。它的一個(gè)主要功能是將與安全威脅有關(guān)的因素量化為節(jié)點(diǎn)概率,為安全威脅概率的計(jì)算提供量化值。

      當(dāng)前,基于貝葉斯網(wǎng)絡(luò)的安全威脅概率計(jì)算,主要基于依賴和條件獨(dú)立假設(shè),即網(wǎng)絡(luò)節(jié)點(diǎn)只與該節(jié)點(diǎn)的父節(jié)點(diǎn)存在相關(guān)性,而與其他節(jié)點(diǎn)相互獨(dú)立。但在實(shí)際的節(jié)點(diǎn)概率計(jì)算中,卻存在著節(jié)點(diǎn)之間的相關(guān)性所導(dǎo)致的概率錯(cuò)誤計(jì)算問題。這種問題會(huì)對(duì)網(wǎng)絡(luò)威脅傳播路徑的預(yù)測(cè)帶來影響。圖1是一個(gè)基于貝葉斯網(wǎng)絡(luò)預(yù)測(cè)網(wǎng)絡(luò)威脅傳播路徑的示例,其中圓形節(jié)點(diǎn)表示目標(biāo)網(wǎng)絡(luò)中的資源狀態(tài)節(jié)點(diǎn),有向弧表示攻擊步驟。攻擊者就是通過改變一系列資源狀態(tài)節(jié)點(diǎn)的狀態(tài)來獲得目的主機(jī)權(quán)限。

      圖1 網(wǎng)絡(luò)威脅傳播路徑示例

      圖1中,v7為目標(biāo)資源狀態(tài)節(jié)點(diǎn)。為了占有v7,攻擊者可以沿著兩條路徑:(1)v1→v4→v5→v7;(2)v1→v4→v6→v7。為了預(yù)測(cè)網(wǎng)絡(luò)威脅的傳播路徑,我們需要計(jì)算各節(jié)點(diǎn)的概率。這其中,節(jié)點(diǎn)v7的概率可以通過計(jì)算節(jié)點(diǎn)v5和v6的概率得到。在條件獨(dú)立假設(shè)下,我們假設(shè)v5和v6是完全獨(dú)立的,那么節(jié)點(diǎn)v7的概率P(v7)為P(v5)+P(v6)-P(v5)·P(v6)。實(shí)際上,在P(v4)未確定情況下,P(v5)和P(v6)將呈現(xiàn)出此消彼長(zhǎng)的規(guī)律,即任一節(jié)點(diǎn)發(fā)生概率的增大都會(huì)相應(yīng)降低另一節(jié)點(diǎn)發(fā)生的概率,同時(shí)也會(huì)影響v7的發(fā)生概率。因此,v5和v6、v4和v7存在一定的相關(guān)性。這種相關(guān)性導(dǎo)致了節(jié)點(diǎn)概率P(v7)、P(v5)和P(v6)的錯(cuò)誤計(jì)算,影響管理人員對(duì)網(wǎng)絡(luò)威脅傳播路徑的預(yù)測(cè)。

      在具體的網(wǎng)絡(luò)威脅傳播路徑場(chǎng)景中,鑒于目標(biāo)節(jié)點(diǎn)的復(fù)雜性及重要性不同,攻擊者所需付出的成本也不同。因此,成本會(huì)成為攻擊者選擇攻擊路徑一項(xiàng)重要決策因素。以圖1中攻擊者以v4為出發(fā)點(diǎn),在節(jié)點(diǎn)v5和v6進(jìn)行抉擇為例。我們假設(shè)攻擊者成功獲得節(jié)點(diǎn)v5和v6的概率P(v5)>P(v6),成本Cost(v5)>Cost(v6),且Cost(v5)遠(yuǎn)大于獲得節(jié)點(diǎn)v5所得收益。此時(shí),攻擊者總是傾向于選擇節(jié)點(diǎn)v6。從成本的角度分析,成本的增加會(huì)降低攻擊者選擇路徑v4→v5的可能性,增大選擇路徑v4→v6的可能性,即減小了條件概率P(v5|v4),增大了條件概率P(v6|v4)。因此,攻擊成本能夠通過影響條件概率,導(dǎo)致節(jié)點(diǎn)置信度的錯(cuò)誤計(jì)算,影響對(duì)網(wǎng)絡(luò)威脅傳播路徑的預(yù)測(cè)。

      針對(duì)上述問題,本文提出一種預(yù)測(cè)網(wǎng)絡(luò)威脅傳播路徑的方法。這種方法通過引入貝葉斯網(wǎng)絡(luò)分隔定理,能夠回避節(jié)點(diǎn)間相關(guān)性的影響。通過分析攻擊成本對(duì)攻擊者實(shí)施攻擊行為的影響,能夠解決攻擊成本導(dǎo)致的節(jié)點(diǎn)置信度錯(cuò)誤計(jì)算問題,從而,有效地提高網(wǎng)絡(luò)威脅傳播路徑預(yù)測(cè)的準(zhǔn)確性。

      1 相關(guān)研究

      網(wǎng)絡(luò)安全威脅主要通過安全漏洞在目標(biāo)網(wǎng)絡(luò)中傳播,傳播路徑具有極大的不確定性。因此,可以通過計(jì)算攻擊行為發(fā)生的可能性和安全漏洞被成功利用的概率預(yù)測(cè)其傳播路徑。基于這一思路,文獻(xiàn)[6]嘗試基于貝葉斯網(wǎng)絡(luò)和CVSS計(jì)算脆弱點(diǎn)被成功利用的概率;Yu等[9]提出了攻擊行為發(fā)生概率的經(jīng)驗(yàn)公式,引入了條件概率分析攻擊圖不同類型節(jié)點(diǎn)之間依賴關(guān)系;石進(jìn)等[10]分析了攻擊者的成本和收益對(duì)節(jié)點(diǎn)概率的影響;Mehta等人[11]則認(rèn)為節(jié)點(diǎn)概率的計(jì)算,必須考慮攻擊圖中各個(gè)節(jié)點(diǎn)具有不同的重要度,并分析了影響重要度的因素。

      在具體的網(wǎng)絡(luò)威脅傳播路徑場(chǎng)景中,節(jié)點(diǎn)間的相關(guān)性,以及目標(biāo)節(jié)點(diǎn)的復(fù)雜性及重要性的不同,都會(huì)導(dǎo)致節(jié)點(diǎn)概率的錯(cuò)誤計(jì)算,影響傳播路徑的預(yù)測(cè),而文獻(xiàn)[8-11]則未考慮這點(diǎn)。Homer等[6]提出了導(dǎo)致節(jié)點(diǎn)概率的計(jì)算出現(xiàn)錯(cuò)誤的原因之一是節(jié)點(diǎn)之間存在相關(guān)性,并基于貝葉斯網(wǎng)絡(luò)的d-分隔定理,給出了解決這一問題的方法。但是,他沒有考慮條件概率對(duì)節(jié)點(diǎn)概率的影響,且增加節(jié)點(diǎn)的方法使得攻擊圖的理解更加復(fù)雜。張少俊等人在文獻(xiàn)[12,13]中提出了利用改進(jìn)的貝葉斯推理似然加權(quán)法計(jì)算攻擊圖節(jié)點(diǎn)置信度的方法。通過引入攻擊證據(jù)間的時(shí)間偏序關(guān)系,簡(jiǎn)化了節(jié)點(diǎn)置信度的計(jì)算,在一定程度上提升了其準(zhǔn)確性。但是,他只是給出了條件概率的假設(shè)值,并未給出計(jì)算方法。文獻(xiàn)[14]提出隱馬爾科夫模型的概率方法消除節(jié)點(diǎn)間關(guān)聯(lián)性的影響。方法討論了成本和收益因素對(duì)不同類型節(jié)點(diǎn)概率的關(guān)聯(lián)性影響,并通過消除一些關(guān)聯(lián)性較低的節(jié)點(diǎn),提高了節(jié)點(diǎn)計(jì)算的準(zhǔn)確性。但是該方法并未考慮到攻擊成本對(duì)攻擊者的選擇策略的影響。吳泓潤(rùn)等人[15]在對(duì)網(wǎng)絡(luò)攻擊進(jìn)行分析時(shí),提出了基于代價(jià)下的攻擊者選擇性攻擊策略,試圖通過攻擊者的主觀選擇消除冗余節(jié)點(diǎn)。但是未能分析攻擊成本和節(jié)點(diǎn)概率的關(guān)聯(lián)性,因而無(wú)法通過攻擊成本對(duì)攻擊路徑進(jìn)行預(yù)測(cè)。Li等人[16]通過生成攻擊圖前合并具有相同特征的主機(jī)來降低攻擊圖的規(guī)模,雖然這種方法可以有效地減少攻擊圖中節(jié)點(diǎn)和邊的數(shù)量,但是它只適用于對(duì)一些特殊的網(wǎng)絡(luò)進(jìn)行脆弱性分析。文獻(xiàn)[17]將攻擊圖轉(zhuǎn)化成Petri網(wǎng)并進(jìn)行擴(kuò)展生成新的攻擊模型,引入系統(tǒng)最大承受攻擊能力概念,將攻擊狀態(tài)的二態(tài)性擴(kuò)展到攻擊成功、攻擊失敗、攻擊被檢測(cè)三個(gè)方面,具有很大的靈活性,但是沒有考慮攻擊之間的關(guān)聯(lián)性對(duì)計(jì)算的影響。

      針對(duì)上述不足,本文提出了一種旨在通過解決節(jié)點(diǎn)置信度的錯(cuò)誤計(jì)算問題,提高預(yù)測(cè)準(zhǔn)確性的方法。為此,本文引入了貝葉斯網(wǎng)絡(luò)分隔定理,提出了節(jié)點(diǎn)置信度以及攻擊行為發(fā)生的條件概率的計(jì)算方法,并給出了ConProb-Computing、InCon Prob-Computing、JoProb-Computing三個(gè)算法。通過量化攻擊成本為攻擊行為實(shí)施的可能性,提出了攻擊行為發(fā)生的條件概率計(jì)算方法,解決了由攻擊成本導(dǎo)致的條件概率錯(cuò)誤計(jì)算問題;通過引入貝葉斯網(wǎng)絡(luò)分隔定理及提出節(jié)點(diǎn)置信度計(jì)算方法,使具有關(guān)聯(lián)性的節(jié)點(diǎn)在它們共有的d-分隔集合條件下相互獨(dú)立,回避節(jié)點(diǎn)間相關(guān)性導(dǎo)致的節(jié)點(diǎn)置信度錯(cuò)誤計(jì)算問題。相比前述文獻(xiàn),攻擊行為發(fā)生的條件概率和節(jié)點(diǎn)置信度的計(jì)算方法以及計(jì)算算法的提出,不但提高了置信度計(jì)算的準(zhǔn)確性和網(wǎng)絡(luò)威脅傳播路徑預(yù)測(cè)的有效性;同時(shí)它們以貝葉斯網(wǎng)絡(luò)為基礎(chǔ),能適用于更加復(fù)雜的網(wǎng)絡(luò),具有很好的擴(kuò)展性。

      2 貝葉斯攻擊圖和安全威脅節(jié)點(diǎn)概率計(jì)算

      網(wǎng)絡(luò)威脅的傳播是一種復(fù)雜的多步驟過程,包含一系列基本資源狀態(tài)的變化?;举Y源狀態(tài)的變化改變了網(wǎng)絡(luò)的狀態(tài),使攻擊者獲得了一定級(jí)別的系統(tǒng)權(quán)限。同時(shí),系統(tǒng)權(quán)限的獲取將使攻擊者進(jìn)一步占有更多的資源。通常,網(wǎng)絡(luò)管理人員可以依據(jù)基本資源狀態(tài)的變化推斷可能的網(wǎng)絡(luò)威脅傳播路徑,并采取應(yīng)對(duì)措施。

      2.1 貝葉斯攻擊圖

      貝葉斯網(wǎng)絡(luò)本質(zhì)上是一種因果關(guān)系圖,描述了系統(tǒng)基本資源狀態(tài)變化的因果關(guān)系。一方面,它包含了網(wǎng)絡(luò)威脅所有可能的傳播路徑。此外,根據(jù)單調(diào)性假設(shè),攻擊者不會(huì)放棄已經(jīng)占有的資源。因此,攻擊者不會(huì)再為占有的資源實(shí)施攻擊,即貝葉斯網(wǎng)絡(luò)中不會(huì)出現(xiàn)循環(huán)攻擊路徑。根據(jù)以上分析,定義如下貝葉斯攻擊圖:

      定義1貝葉斯攻擊圖G={V,E,W,P,Π}為具有一個(gè)或多個(gè)AND-OR節(jié)點(diǎn)的貝葉斯網(wǎng)絡(luò),其中:

      (1) V(G)={V0∪VG}為資源狀態(tài)節(jié)點(diǎn)集合。它是一個(gè)非空有限的AND-OR節(jié)點(diǎn)集合。節(jié)點(diǎn)表示攻擊者攻擊系統(tǒng)時(shí)需要占有的資源。成功改變資源狀態(tài)時(shí),對(duì)應(yīng)節(jié)點(diǎn)的取值為True,否則為False。初始節(jié)點(diǎn)集合V0表示初始狀態(tài)下攻擊者以一定概率占有的資源。目標(biāo)節(jié)點(diǎn)集合VG表示攻擊者成功地改變一系列資源狀態(tài)后,才能達(dá)到的最終目標(biāo)節(jié)點(diǎn)集合。

      (2) E(G)?V×V為關(guān)聯(lián)各節(jié)點(diǎn)的有向邊集合。如果e1,2=∈E表示從節(jié)點(diǎn)v1指向其孩子節(jié)點(diǎn)v2的一條有向邊,則稱v1為v2的前件節(jié)點(diǎn),v2為v1的后件節(jié)點(diǎn)。e表示一個(gè)攻擊步驟,攻擊發(fā)生時(shí),e的取值為True時(shí),否則為False。對(duì)于?e∈E(G),每次攻擊步驟的實(shí)施均需花費(fèi)一定的攻擊成本。一般地,記Pre(v)為節(jié)點(diǎn)v的前件節(jié)點(diǎn)集合,Con(v)為節(jié)點(diǎn)v的后件節(jié)點(diǎn)集合。

      (3) W為攻擊權(quán)集合。?w∈W均與每一節(jié)點(diǎn)關(guān)聯(lián),由二元組(h,m)表示。h表示攻擊節(jié)點(diǎn)vi時(shí),所選攻擊路徑上已花費(fèi)的總攻擊成本。m表示攻擊節(jié)點(diǎn)vi時(shí),所有經(jīng)過節(jié)點(diǎn)vi的攻擊路徑需要花費(fèi)的總攻擊成本。

      (4) P=(P1∪P2)。P1為攻擊行為發(fā)生的條件概率。對(duì)于任意攻擊行為,只有對(duì)應(yīng)的前件節(jié)點(diǎn)滿足條件時(shí)才能發(fā)生,所以P1=(攻擊行為發(fā)生|Pre(vi)滿足條件)={P2:(Pre(vi),vi)}→[0,1]。 P2為攻擊步驟成功的概率。對(duì)于P2,只有攻擊行為發(fā)生,攻擊步驟才能成功,即vi=True。所以P2=(vi=True|攻擊行為發(fā)生)={P2:(攻擊行為發(fā)生,vi=True)}→[0,1]。

      (5) Π(G)={π.V×V→[0,1]}為貝葉斯攻擊圖節(jié)點(diǎn)置信度分布。π(vi)表示攻擊者當(dāng)前已成功占有節(jié)點(diǎn)vi的概率。由于初始狀態(tài)下起始節(jié)點(diǎn)v0已為攻擊者成功占有,所以π(v0)=1.0。

      定義2AND節(jié)點(diǎn)指的是節(jié)點(diǎn)vi的所有前件節(jié)點(diǎn)之間是AND操作,當(dāng)且僅當(dāng)所有前件結(jié)點(diǎn)均成功實(shí)施攻擊行為時(shí),才能將節(jié)點(diǎn)vi的值置為True。

      定義3OR節(jié)點(diǎn)指的是節(jié)點(diǎn)vi的所有前件節(jié)點(diǎn)之間是OR操作,當(dāng)且僅當(dāng)任一前件結(jié)點(diǎn)成功實(shí)施攻擊行為時(shí),都能獨(dú)立地將節(jié)點(diǎn)vi的值置為True。

      根據(jù)以上定義,我們首先利用脆弱點(diǎn)掃描工具(例如X-Scan)對(duì)系統(tǒng)資源存在的安全漏洞進(jìn)行掃描,得到資源狀態(tài)節(jié)點(diǎn);然后分析節(jié)點(diǎn)間的依賴關(guān)系,顯示標(biāo)出各個(gè)有向邊;最后綜合考慮節(jié)點(diǎn)間AND-OR節(jié)點(diǎn)的4種排列組合情況:AND-AND、AND-OR、OR-AND和OR-OR,生成目標(biāo)系統(tǒng)的主干結(jié)構(gòu);并結(jié)合目標(biāo)網(wǎng)絡(luò)的安全狀態(tài),估計(jì)安全威脅的傳播路徑。依照上述方法,本文對(duì)小型局域網(wǎng)進(jìn)行掃描,得到了圖2所示的貝葉斯攻擊圖。

      圖2 貝葉斯攻擊圖

      圖2中,初始狀態(tài)下,攻擊者以概率π(v1)、π(v2)、分別占有資源狀態(tài)節(jié)點(diǎn)v1、v2,其后,攻擊行為遵循條件概率分布P1發(fā)生,相繼占有對(duì)應(yīng)的節(jié)點(diǎn)v3-v10,并最終占有目標(biāo)節(jié)點(diǎn)v11。

      2.2 安全威脅的傳播路徑

      定義4給定貝葉斯攻擊圖,存在一個(gè)始于起始節(jié)點(diǎn)V0,終于目標(biāo)節(jié)點(diǎn)VG的資源狀態(tài)變遷序列Path,Path=V0→V1→…Vi→…Vn→VG,其中0≤i≤n,則稱滿足下述約束條件的變遷序列為安全威脅的傳播路徑:

      (1) 變遷Vi的下一變遷Vi+1必為Vi的后件節(jié)點(diǎn),反之,變遷Vi必為Vi+1的前件節(jié)點(diǎn)。

      (2) 變遷序列Vi+1中的節(jié)點(diǎn)集合與初始節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn)的交集必不為空。

      (3) 變遷序列的長(zhǎng)度是有限的。

      (6)實(shí)行全天候通關(guān)制度。隨著我國(guó)郵輪旅游業(yè)的日益發(fā)展壯大,我國(guó)郵輪旅客通關(guān)量增速明顯,郵輪到達(dá)碼頭的時(shí)間有時(shí)候會(huì)是隨機(jī)的,旅客通關(guān)時(shí)間也是隨機(jī)的,現(xiàn)有的口岸通關(guān)還不能滿足這種隨時(shí)通關(guān)的需求,因此,郵輪口岸提供隨機(jī)性的服務(wù)的也是必不可少的,郵輪口岸建立必要的小時(shí)通關(guān)制度,全天候?yàn)猷]輪乘客提供通關(guān)服務(wù),滿足郵輪乘客便捷通關(guān)的需求。

      對(duì)于圖2,在所有符合定義4的變遷序列中,我們假設(shè)網(wǎng)絡(luò)威脅會(huì)沿如下路徑傳播:

      ① V1→V3→V6→V9→V11

      ② V1→V4→V7→V9→V11

      ③ V8→V5→V8→V10→V13→V11

      根據(jù)圖2,攻擊者相繼占有路徑①、②、③上的各個(gè)節(jié)點(diǎn)后,將會(huì)達(dá)到目標(biāo),此時(shí):

      (1) 若不考慮攻擊成本和節(jié)點(diǎn)間的相關(guān)性,而只是簡(jiǎn)單地將各節(jié)點(diǎn)值置為True,則理論上,攻擊者可以選擇三條路徑中的一條或者多條實(shí)施攻擊,最終占有目標(biāo)節(jié)點(diǎn)。

      (2) 若考慮攻擊成本,則容易發(fā)現(xiàn),當(dāng)攻擊步驟花費(fèi)成本Cost(e6,9)遠(yuǎn)大于Cost(e7,9)時(shí),攻擊者出于成本的考慮,會(huì)傾向于實(shí)施攻擊步驟,即攻擊成本通過影響攻擊行為的發(fā)生的概率,提高了實(shí)施攻擊路徑②的可能性,降低了實(shí)施攻擊路徑①的可能性。

      (3) 若考慮節(jié)點(diǎn)間的相關(guān)性,節(jié)點(diǎn)V6和V7之間,V9和V7、V5之間均存在相關(guān)性。以節(jié)點(diǎn)V6和V7為例,根據(jù)條件獨(dú)立假設(shè),V7和V8獨(dú)立地影響節(jié)點(diǎn)V9的置信度,即沿不同路徑到達(dá)節(jié)點(diǎn)V9是互不影響的??紤]到成本因素,攻擊者只會(huì)選取一條路徑到達(dá)節(jié)點(diǎn)V9。這樣,路徑V7→V9可能性的增加必然會(huì)導(dǎo)致V6→V9可能性降低,反之亦然。因而,節(jié)點(diǎn)V6和V7之間存在相關(guān)性將會(huì)導(dǎo)致節(jié)點(diǎn)置信度的錯(cuò)誤計(jì)算,影響對(duì)攻擊路徑的預(yù)測(cè)。

      根據(jù)以上分析,網(wǎng)絡(luò)威脅的傳播路徑問題可以描述為:

      3 節(jié)點(diǎn)置信度的計(jì)算

      貝葉斯網(wǎng)絡(luò)本質(zhì)上是因果攻擊圖,能夠分析多步驟的網(wǎng)絡(luò)攻擊,展示網(wǎng)絡(luò)安全威脅的傳播路徑。為了預(yù)測(cè)可能的傳播路徑,我們需要計(jì)算貝葉斯攻擊圖的節(jié)點(diǎn)置信度。

      3.1 基礎(chǔ)數(shù)據(jù)的獲取

      貝葉斯攻擊圖G={V,E,W,P,Π}能夠展示網(wǎng)絡(luò)安全威脅的傳播路徑,為了確定貝葉斯攻擊圖的節(jié)點(diǎn)置信度,必須首先獲取攻擊行為發(fā)生的條件概率,即p1和成功發(fā)生的條件概率p2,然后再計(jì)算節(jié)點(diǎn)置信度。

      對(duì)于p2,其取值大小取決于資源狀態(tài)的難易程度。根據(jù)CVSS標(biāo)準(zhǔn),NVD數(shù)據(jù)庫(kù)中的“AccessComplexity”屬性值,它表征安全漏洞被利用的復(fù)雜程度,因而可以作為條件概率p2的概率值。根據(jù)CVSS標(biāo)準(zhǔn),p2取值如表1所示。

      表1 CVSS基本評(píng)價(jià)分值

      對(duì)于p1,由于p1受到成本因素的影響,因此,我們將在下節(jié)對(duì)p1的概率值進(jìn)行計(jì)算。

      3.2 攻擊成本Cost的計(jì)算

      攻擊過程中,資源狀態(tài)的變遷通過一系列命令或操作實(shí)現(xiàn)。這其中,包括一些功能相似,實(shí)施成本不同的命令和操作。為了分析資源狀態(tài)變遷的成本,我們可以依據(jù)功能的相似性,將這一過程中的命令和操作劃分成不同的命令集合,稱為元操作。

      定義6元操作是具有相似功能的一類命令或操作的集合。

      采用元操作的好處在于:

      (1) 命令和操作成本易于統(tǒng)計(jì),方便對(duì)攻擊成本進(jìn)行計(jì)算。

      (2) 命令或操作的選取僅限于元操作,便于優(yōu)化攻擊成本。

      定義7從集合的角度定義了攻擊步驟。貝葉斯攻擊圖中的?e∈E(G),都是一個(gè)攻擊步驟,用來完成一次資源狀態(tài)變遷,是由若干命令或操作依照一定順序組成的集合。圖3顯示了這種映射關(guān)系。

      圖3 攻擊步驟和元操作映射關(guān)系

      圖3顯示了元操作和攻擊步驟的映射關(guān)系。Sub-Mos為元操作集合在攻擊步驟上的映射,每個(gè)Sub-Mos子集與攻擊步驟的一個(gè)功能相對(duì)應(yīng)。因此,攻擊步驟可以看成是由若干個(gè)元操作按照一定順序組成的集合。由圖3可知,同一元操作集合的操作序列不同,由它們所組成的攻擊步驟不同。因此,一個(gè)攻擊步驟的成本應(yīng)包括元操作成本和操作序列成本,是二者的線性和。

      定義8貝葉斯攻擊圖中,對(duì)于?e∈E(G),每個(gè)攻擊步驟需要花費(fèi)的成本為:

      Cost(e)=μ×Cost(Meta-operation)+η×Cost(Sequence)

      (1)

      定義8中,Cost(Meta-operation)為元操作執(zhí)行成本,Cost(Sequence)為操作序列成本,μ、η為對(duì)應(yīng)的參數(shù)。Cost(Meta-operation)的計(jì)算取決于元操作本身和資源的使用情況,因而,是元操作和資源數(shù)目的函數(shù);Cost(Sequence)的計(jì)算取決于不同元操作的排列順序,是操作序列和元操作的函數(shù)。目前,元操作執(zhí)行成本和操作序列成本的計(jì)算還停留在理論階段。因此,本文考慮將各攻擊步驟的Cost值設(shè)為1。

      定義9貝葉斯攻擊圖中,對(duì)于?e∈E(G),攻擊目標(biāo)為節(jié)點(diǎn)d,d的攻擊權(quán)為W(h,m),則攻擊步驟e發(fā)生的條件概率P1(e)為:

      (1) 如果d∈V0,P1(e)=1.0

      (2) 如果d∈V且d?V0,其有s個(gè)前件結(jié)點(diǎn),用節(jié)點(diǎn)數(shù)組l[i]表示,對(duì)應(yīng)的攻擊步驟為e[i](0≤i≤s),則

      1) 如果d既非AND節(jié)點(diǎn),又非OR節(jié)點(diǎn),那么:

      2) 如果d為AND節(jié)點(diǎn),那么:

      P1(e[1])=P1(e[2])=…=P1(e[s])

      3) 如果d為OR節(jié)點(diǎn),且其s個(gè)前件結(jié)點(diǎn)對(duì)應(yīng)的攻擊步驟按照成本m由大到小的順序依次排列為q[1],…,q[j],…,q[s]。那么:

      同樣的,我們可以計(jì)算出其他前件結(jié)點(diǎn)的條件概率P1[q[2]], P1[q[2]],…,P1[q[s]]。

      定義9分析了攻擊成本和攻擊步驟發(fā)生概率之間的關(guān)系。

      (1) 初始節(jié)點(diǎn)。初始狀態(tài)下,引發(fā)初始節(jié)點(diǎn)狀態(tài)改變的攻擊步驟已經(jīng)發(fā)生。因此,P1(e)=1.0。

      (2) 非初始節(jié)點(diǎn)。① d為非AND節(jié)點(diǎn)和非OR節(jié)點(diǎn),即d的前件結(jié)點(diǎn)只有一個(gè)。這種情況下,條件概率P1是已消耗的攻擊成本h(e[i])與沿此路徑占有i結(jié)點(diǎn)需要消耗的總成本m(e[i])的比。它表示攻擊者實(shí)施此攻擊步驟的可能性。攻擊步驟成本Cost占有m(e[i])的比例越小,攻擊者實(shí)施此次攻擊的可能性越小。② AND節(jié)點(diǎn)。對(duì)于AND節(jié)點(diǎn),攻擊者只有同時(shí)實(shí)施攻擊步驟,才能到達(dá)節(jié)點(diǎn)d。因此,攻擊者實(shí)施各攻擊步驟的可能性是相同的,故有P1[e[1]]=P1[e[2]]=…=P1[e[s]]。③ OR節(jié)點(diǎn)。對(duì)于OR節(jié)點(diǎn),我們知道,攻擊者只要沿一個(gè)攻擊步驟實(shí)施攻擊,即可到達(dá)節(jié)點(diǎn)d。由于攻擊成本的增加會(huì)降低攻擊者實(shí)施攻擊行為的可能性,因此,對(duì)于攻擊成本最高的攻擊步驟,其發(fā)生的條件概率越小。P1[q[1]就是賦予攻擊成本最高的攻擊步驟最小的實(shí)施可能性,賦予攻擊成本最低的攻擊步驟最大的實(shí)施可能性。

      3.3 節(jié)點(diǎn)置信度的計(jì)算

      貝葉斯網(wǎng)絡(luò)中,之所以存在著節(jié)點(diǎn)置信度的錯(cuò)誤計(jì)算問題, 根本原因是節(jié)點(diǎn)間存在著相關(guān)性。為了解決這一問題,我們給出如下定理。

      定理1貝葉斯攻擊圖中,假設(shè)存在任意節(jié)點(diǎn)集合D={d1,d2,…,dk}和N={n1,n2,…,nk},其中D,N?V,那么:

      (2)

      證明:對(duì)于任意的D,N?V,由貝葉斯定理:

      定理2貝葉斯攻擊圖中,假設(shè)存在任意節(jié)點(diǎn)集合D={d1,d2,…,dk}和N={n1,n2,…,nk},其中D,N?V,且集合D中所有節(jié)點(diǎn)取值已知情況下,集合V中的節(jié)點(diǎn)相互獨(dú)立,那么:

      (3)

      對(duì)于集合N,組成它的節(jié)點(diǎn)之間總是存在關(guān)聯(lián)性。為了準(zhǔn)確地計(jì)算各節(jié)點(diǎn)的聯(lián)合概率P{n1,n2,…,nk},我們可以首先尋找到集合D,使集合N中各節(jié)點(diǎn)相互獨(dú)立,然后依據(jù)式(2)和式(3),在條件獨(dú)立的情況下計(jì)算其聯(lián)合概率。

      d-分隔是貝葉斯網(wǎng)絡(luò)中,對(duì)于3個(gè)兩兩交空的集合X、Y和Z,判斷X和Y在給定Z時(shí)的條件獨(dú)立性。為了找到使集合N中各節(jié)點(diǎn)相互獨(dú)立的節(jié)點(diǎn)集合D,本文引入了d-分隔。

      定義10貝葉斯攻擊圖中,對(duì)于兩兩交空的節(jié)點(diǎn)集合X和Y,如果存在一些節(jié)點(diǎn)v∈V,使得v是節(jié)點(diǎn)x∈X和節(jié)點(diǎn)y∈Y的分連節(jié)點(diǎn),那么由v、d-分隔v的祖先節(jié)點(diǎn)和d-分隔v的祖先節(jié)點(diǎn)的節(jié)點(diǎn)所組成的集合D(D?V)d-分隔X和Y。

      根據(jù)定義10,如果D中所有節(jié)點(diǎn)的值已知,那么X和Y中所有元素相互獨(dú)立,記為X⊥Y|D。條件概率記為φ({X,Y},D)。為方便敘述,令N=X∪Y,則φ({X,Y},D)=φ(N,D)。

      (4)

      (1) 當(dāng)W=AND時(shí):

      (5)

      (2) 當(dāng)W=OR時(shí):

      (6)

      考慮到節(jié)點(diǎn)之間的關(guān)系為AND或OR,會(huì)對(duì)置信度的計(jì)算結(jié)果產(chǎn)生影響,因此,定義12在定義11的基礎(chǔ)上進(jìn)行了推廣,使之能用于計(jì)算節(jié)點(diǎn)之間的關(guān)系為AND或OR等情況下的節(jié)點(diǎn)置信度。

      3.4 節(jié)點(diǎn)置信度的計(jì)算舉例

      考慮到節(jié)點(diǎn)置信度的計(jì)算需要計(jì)算攻擊步驟發(fā)生的條件概率P1,我們給出圖4所示的貝葉斯攻擊圖。圖4中,我們假設(shè)各攻擊步驟的取值為True,對(duì)應(yīng)的攻擊成本為1。

      圖4 貝葉斯攻擊圖-攻擊成本

      在計(jì)算P1時(shí),我們將從初始節(jié)點(diǎn)開始,采用遞歸的方法,逐層推進(jìn)。具體的計(jì)算方法見定義9,計(jì)算步驟如下(計(jì)算時(shí)我們假設(shè)初始節(jié)點(diǎn)的攻擊權(quán)為W(1,1)):

      (1) 依據(jù)定義9,占有初始節(jié)點(diǎn)v1、v2的攻擊步驟發(fā)生的條件概率均為1.0。

      (2) 結(jié)合攻擊權(quán)定義,我們得到節(jié)點(diǎn)v3、v4、v5攻擊權(quán)為W(v3)=(1,2),W(v4)=(1,2),W(v5)=(1,2),依據(jù)定義9對(duì)非初始節(jié)點(diǎn)條件概率的定義,P1(e1,3)=P1(e1,4)=P1(e2,5)=1/2。

      (3) 分別計(jì)算節(jié)點(diǎn)v6、v7、v8攻擊權(quán)為W(v6)=(4,6),W(v7)=(4,6),W(v8)=(2,3),依據(jù)定義9對(duì)AND和OR節(jié)點(diǎn)的條件概率定義,P1(e3,6)=1/2,P1(e4,6)=1/2,P1(e4,7)=P1(e5,7)=2/3,P1(e5,8)=2/3。

      (4) 計(jì)算節(jié)點(diǎn)v9、v10攻擊權(quán)為W(v9)=(10,12),W(v10)=(3,4),P1(e6,9)=1/2,P1(e7,9)=1/2,P1(e8,10)=3/4。

      (5) 計(jì)算節(jié)點(diǎn)v11攻擊權(quán)為W(v11)=(13,16), P1(e9,11)=11/16,P1(e10,11)=4/16。

      獲得攻擊步驟的條件概率后,我們可以依據(jù)定理1和定理2,以及定義10和定義11計(jì)算各節(jié)點(diǎn)的概率。下面以λ(v6)為例來說明節(jié)點(diǎn)置信度的具體計(jì)算方法。

      圖4中,Z(v6)={v3,v4},Z(v7)={v4,v5},D(v6)={v1∪D(v4)}∩{v1∪D(v3)}={v1},D(v7)={v1∪D(v4)}∩{v2∪D(v5)}=?。因此:

      (定義12)

      (定理2)

      (定理2)

      (1-P1(e4,6)·P2(e4,6)·P1(e1,4)·P2(e1,4))·(P1(e1,3)·

      P2(e1,3)·P1(e1,4)·P2(e1,4)}

      (定義10-12)

      按照上述計(jì)算方法,我們最終得到的各節(jié)點(diǎn)置信度如表2所示。

      表2 貝葉斯攻擊圖節(jié)點(diǎn)置信度

      3.5 節(jié)點(diǎn)置信度的計(jì)算算法

      為了計(jì)算貝葉斯攻擊圖的節(jié)點(diǎn)置信度,本文設(shè)計(jì)了如下的3個(gè)算法。

      算法1是一個(gè)條件概率計(jì)算算法,用來計(jì)算攻擊步驟發(fā)生的條件概率。對(duì)于貝葉斯攻擊圖中的任一節(jié)點(diǎn),該算法都能計(jì)算出欲到達(dá)該節(jié)點(diǎn),所選攻擊路徑上已消耗的總攻擊成本h和需要消耗的總攻擊成本m,并根據(jù)節(jié)點(diǎn)類型,返回對(duì)應(yīng)的比值。這個(gè)比值就是攻擊步驟發(fā)生的條件概率。具體的計(jì)算方法見定義9。

      算法1條件概率計(jì)算算法 ConProb-Computing (G,Cost)

      描述:本算法將依據(jù)貝葉斯攻擊圖G和攻擊步驟實(shí)施成本Cost,計(jì)算攻擊步驟發(fā)生的條件概率P1。

      輸入:貝葉斯攻擊圖G,攻擊步驟成本Cost,攻擊權(quán)W(h,m)。

      輸出:攻擊步驟發(fā)生的條件概率P1。

      1. IF節(jié)點(diǎn)v是初始節(jié)點(diǎn) THEN{W(h,m)=W(1,1)}

      2. RETURN P1(v)=1.0

      //初始節(jié)點(diǎn)攻擊步驟條件概率

      3. END IF

      4. IF節(jié)點(diǎn)v是非初始節(jié)點(diǎn) THEN

      5. h←SUM(節(jié)點(diǎn)v的所有前件結(jié)點(diǎn)對(duì)應(yīng)的h值)

      6. m←h+SUM(節(jié)點(diǎn)v的所有前件結(jié)點(diǎn)對(duì)應(yīng)的Cost值)

      7. END IF

      8. IF節(jié)點(diǎn)v是AND節(jié)點(diǎn) THEN

      9. A對(duì)于?d∈ Pre(v),P1(ed,v) = h/m

      //引發(fā)AND節(jié)點(diǎn)的攻擊步驟具有相同的發(fā)生概率

      10. END IF

      11. IF節(jié)點(diǎn)v是OR節(jié)點(diǎn) THEN

      12. 將所有前件結(jié)點(diǎn)d依據(jù)各節(jié)點(diǎn)h(q(i))+Cost(q(i))值由大到小編入隊(duì)列QUENE(r)

      13. QUENE(r)={r1,r2,…,rn}

      14. 將所有前件結(jié)點(diǎn)d依據(jù)各節(jié)點(diǎn)

      16. 值由到大編入隊(duì)列QUENE(q)

      17. QUENE(q)={q1,q2,…,qn}

      18. IF r1是QUENE(r)中最小值,q1是QUENE(q)中最大值,THEN

      19. QUENE(r)←{r1,r2,…,rn}

      20. QUENE(q)←{q1,q2,…,qn}

      21. RETURN P1= q1

      22. 對(duì)于?d∈ Pre (v),調(diào)用步驟18,

      23. RETURN P1= qi

      24. END IF

      25. ELSE IF節(jié)點(diǎn)v既非OR節(jié)點(diǎn)又非AND節(jié)點(diǎn) THEN

      26. P1=h/m

      27. RETURN P1=h/m

      算法2也是一個(gè)條件概率計(jì)算算法,用來計(jì)算節(jié)點(diǎn)集合D發(fā)生情況下,節(jié)點(diǎn)集合N被成功占有的條件獨(dú)立概率φδ(v,D)。由于φδ(v,D)=P1[e[z]]×P2[e[z]]×φ(z,D)(定義11),因此,本算法在φδ(v,D)時(shí),主要步驟包括:1)單個(gè)節(jié)點(diǎn)n在集合D不同取值情況下的條件概率φ({n},D); 2)依據(jù)集合N中不同節(jié)點(diǎn)的類型,將φδ(v,D)轉(zhuǎn)化為φ(z,D)形式進(jìn)行計(jì)算。(定理2、定義11和定義12); 3)依據(jù)上述步驟,最終返回條件獨(dú)立概率φδ(v,D)。具體的計(jì)算方法見定理2、定義11和定義12。

      算法2條件獨(dú)立概率算法 InConProb-Computing φδ(v,D)

      描述:本算法將依據(jù)貝葉斯攻擊圖G和攻擊步驟發(fā)生的條件概率P1和成功實(shí)施的條件概率P2,計(jì)算節(jié)點(diǎn)集合D發(fā)生情況下,節(jié)點(diǎn)集合N被成功占有的條件獨(dú)立概率φδ(v,D)。

      輸入:貝葉斯攻擊圖G,節(jié)點(diǎn)集合N,d-分隔節(jié)點(diǎn)集合N中所有節(jié)點(diǎn)的集合D,P1,P2。

      輸出:φδ(v,D)。

      1. N←{n0,n1,…,nq}

      2. D←{d0,d1,…,dk}

      3. IF 集合N中元素個(gè)數(shù)大于1 THEN

      7. IF N和D中元素相同THEN

      9. IF D中有元素取值為False THEN

      11. IF集合N中節(jié)點(diǎn)為初始節(jié)點(diǎn) THEN

      12. RETURN φδ(N,D)=1

      13. IF集合N中節(jié)點(diǎn)不全為初始節(jié)點(diǎn) THEN

      14. 遍歷搜索N中各節(jié)點(diǎn)的前件結(jié)點(diǎn)集合Z

      15. IF n為AND節(jié)點(diǎn) THEN

      17. RETURN φδ(v,D)

      18. IF n為OR節(jié)點(diǎn) THEN

      20. RETURN φδ(v,D)

      21. IF 集合Z中只有一個(gè)節(jié)點(diǎn) THEN

      22. φδ(N,D)=P1(ez,n)·P2(ez,n)

      23. RETURN φδ(v,D)

      算法3為節(jié)點(diǎn)聯(lián)合概率計(jì)算算法,用來計(jì)算節(jié)點(diǎn)置信度λ(v)。對(duì)于任意節(jié)點(diǎn),如果為初始節(jié)點(diǎn),那么λ(v)為1.0;如果為非初始節(jié)點(diǎn),那么首先依據(jù)其前件節(jié)點(diǎn)的個(gè)數(shù)分為兩種情況:前件結(jié)點(diǎn)個(gè)數(shù)大于1或者等于1。對(duì)于前件結(jié)點(diǎn)個(gè)數(shù)大于1的節(jié)點(diǎn),再依據(jù)其d-分隔節(jié)點(diǎn)集合是否為空集,分為空集和非空集兩種情況來計(jì)算得到。依據(jù)上述算法最終返回結(jié)果即為各節(jié)點(diǎn)置信度。具體的計(jì)算方法見定義11、定義12和定理1以及定理2。

      算法3節(jié)點(diǎn)聯(lián)合概率計(jì)算算法JoProb-Computingλ(n)

      描述:本算法將依據(jù)貝葉斯攻擊圖G和算法2得到的φδ(v,D)貝葉斯攻擊圖G的節(jié)點(diǎn)置信度λ(n)。

      輸入:貝葉斯攻擊圖G,節(jié)點(diǎn)集合N,d-分隔節(jié)點(diǎn)集合N中所有節(jié)點(diǎn)的集合D,P1,P2,φδ(v,D)。

      輸出:λ(n)。

      1. N←{n0,n1…,nq}

      2. D←{d0,d1…,dk}

      3. IF節(jié)點(diǎn)n為初始節(jié)點(diǎn) THEN

      4. RETURN λ(n)

      5. IF節(jié)點(diǎn)n為非初始節(jié)點(diǎn) THEN

      6. 遍歷搜索N中各節(jié)點(diǎn)的前件結(jié)點(diǎn)集合Z

      7. IF 集合Z中只有一個(gè)節(jié)點(diǎn) THEN

      8. λ(n)=P1(ez,n)·P2(ez,n)·λ(z)

      9. RETURN λ(n)

      10. IF 集合Z中有多個(gè)節(jié)點(diǎn) THEN

      11. 查找d-分隔n的集合D

      12. IF D(Z)=? THEN

      13. IF n為AND節(jié)點(diǎn) THEN

      15. IF n為OR節(jié)點(diǎn) THEN

      17. IF D(Z)不為空集 THEN

      18. IF n為AND節(jié)點(diǎn) THEN

      20. IF n為OR節(jié)點(diǎn) THEN

      4 實(shí)驗(yàn)設(shè)計(jì)與分析

      為了驗(yàn)證節(jié)點(diǎn)置信度計(jì)算方法的有效性,本文設(shè)計(jì)了基于Windows系統(tǒng)的小型局域網(wǎng),并用Java語(yǔ)言實(shí)現(xiàn)了算法1、算法2和算法3。

      4.1 實(shí)驗(yàn)網(wǎng)絡(luò)配置

      圖5為試驗(yàn)用局域網(wǎng)拓?fù)鋱D。實(shí)驗(yàn)網(wǎng)絡(luò)以防火墻為界,將互聯(lián)網(wǎng)與局域網(wǎng)內(nèi)的M1、M2、M3 3個(gè)安全區(qū)域分別隔開。攻擊主機(jī)Attack通過Internet訪問局域網(wǎng)。

      圖5 局域網(wǎng)拓?fù)鋱D

      局域網(wǎng)中,M1區(qū)域設(shè)置有SQL服務(wù)器(Server1)和歷史數(shù)據(jù)服務(wù)器(Server2),并通過Firewall2與其他網(wǎng)絡(luò)相隔離。Server1負(fù)責(zé)對(duì)Server2進(jìn)行數(shù)據(jù)備份,并為M1和M2區(qū)域的各主機(jī)提供FTP、SSH、HTTP、DNS等服務(wù),為Server2提高SSH服務(wù);M2區(qū)域中,Host1開放HTTP和DNS服務(wù);M3區(qū)域中,Host0為存儲(chǔ)有重要數(shù)據(jù)的目標(biāo)主機(jī),開放FTP和SSH服務(wù)。

      4.2 實(shí)驗(yàn)數(shù)據(jù)及分析

      利用Scanner對(duì)實(shí)驗(yàn)網(wǎng)絡(luò)進(jìn)行掃描,得到的各主機(jī)漏洞及漏洞信息如表3所示。各漏洞被利用的難易程度量化值可以通過查詢NVD數(shù)據(jù)庫(kù)中的“AccessComplexity”屬性值獲得,查詢結(jié)果見表4所示。

      表3 各主機(jī)漏洞信息

      表4 各主機(jī)漏洞信息量化

      應(yīng)用前文提出的3個(gè)算法,我們對(duì)圖4所示的貝葉斯攻擊圖節(jié)點(diǎn)置信度進(jìn)行了計(jì)算。首先,我們利用傳統(tǒng)節(jié)點(diǎn)置信度計(jì)算方法(不考慮攻擊成本和節(jié)點(diǎn)間相關(guān)性),對(duì)圖4的節(jié)點(diǎn)置信度進(jìn)行計(jì)算,計(jì)算結(jié)果見表5所示。

      表5 傳統(tǒng)節(jié)點(diǎn)置信度計(jì)算方法計(jì)算結(jié)果

      圖4中,需要明確攻擊路徑的節(jié)點(diǎn)是v3和v4、v6和v7、v9和v10。由于傳統(tǒng)的計(jì)算方法不考慮攻擊成本和節(jié)點(diǎn)間相關(guān)性的影響,因此,我們假設(shè)攻擊者占有資源節(jié)點(diǎn)的條件概率是固定值(固定值分別設(shè)置為1.0、0.5、0.8)。

      對(duì)于v3和v4、v6和v7、v9和v10三對(duì)節(jié)點(diǎn)中,v6和v7、v9和v10兩對(duì)節(jié)點(diǎn)的置信度在條件概率為1.0時(shí),均相等,而在條件概率為0.5和0.8時(shí)則不相等。之所以出現(xiàn)這種結(jié)果,從圖4中我們可以看到,節(jié)點(diǎn)v6和v7除了同時(shí)受到節(jié)點(diǎn)v4的影響,v6還受到了v3的影響,而v7則同時(shí)受到了v5的影響,這在一定程度上相當(dāng)于改變了攻擊者占有資源節(jié)點(diǎn)v6和v7的條件概率。對(duì)于v9和v10,也是如此。因此,符合傳統(tǒng)計(jì)算方法條件的只有v3和v4。

      從表3中可以看出,在不考慮攻擊成本和節(jié)點(diǎn)間相關(guān)性的影響下,v3和v4的節(jié)點(diǎn)置信度總是對(duì)稱相等的。這意味著,我們無(wú)法通過節(jié)點(diǎn)置信度來判斷攻擊者選擇了哪條攻擊路徑。

      而后,我們考慮考慮攻擊成本和節(jié)點(diǎn)間相關(guān)性對(duì)節(jié)點(diǎn)置信度計(jì)算結(jié)果的影響,并利用本文方法做了實(shí)驗(yàn),得到的節(jié)點(diǎn)置信度計(jì)算結(jié)果見表6所示(i表示試驗(yàn)編號(hào),i不同,計(jì)算節(jié)點(diǎn)置信度的攻擊成本或者條件概率也不同)。

      表6 本文節(jié)點(diǎn)置信度計(jì)算方法計(jì)算結(jié)果

      i=1時(shí),我們假設(shè)各攻擊步驟消耗的攻擊成本均為1且P2(e1,3)> P2(e1,4),因而π(ν3)>π(ν4),明確了攻擊路徑。

      i=2時(shí),保持其他節(jié)點(diǎn)條件不變,只改變攻擊步驟e6,9、e7,9成功的條件概率。由于節(jié)點(diǎn)v9和v11與v6和v7相關(guān),因而,表中的節(jié)點(diǎn)v9和v11的置信度亦隨之發(fā)生了變化。與i=1時(shí)相比,解決了節(jié)點(diǎn)相關(guān)性對(duì)節(jié)點(diǎn)置信度計(jì)算結(jié)果的影響。

      i=3時(shí),我們假設(shè)與節(jié)點(diǎn)v4相關(guān)的條件不變,增大Cost(e13)和Cost(e25)?;谶@種假設(shè)得到的π(ν6)小于前兩種假設(shè)。這歸因于節(jié)點(diǎn)v4和v3對(duì)v6的共同影響。在v4和v3間為OR節(jié)點(diǎn),且v4相關(guān)條件不變的情況下,隨著Cost(e13)的增加,v3對(duì)v6的影響必然降低,因而,與i=1和i=2相比,π(ν6)減小。另一方面,基于這種假設(shè)得到的π(ν7)大于前兩種假設(shè)。這是因?yàn)橛绊憊7的節(jié)點(diǎn)v4和v5間為AND關(guān)系,其中一方對(duì)v7影響的增大,必然導(dǎo)致π(ν7)的增大。因而,與i=1和i=2相比,π(ν7)增大。

      所以,本文提出的計(jì)算方法有效地解決了節(jié)點(diǎn)置信度錯(cuò)誤計(jì)算問題,明確了攻擊路徑。

      4.3 攻擊路徑的預(yù)測(cè)

      為了預(yù)測(cè)攻擊路徑,我們引入成本比率參數(shù)C(X),用來分析攻擊成本對(duì)攻擊者所選攻擊路徑的影響。我們以圖2中的v3和v4為例,分析Cost(e13)和Cost(e14)對(duì)e13和e14的影響。這其中,我們?cè)O(shè)定參數(shù)C(X)=Cost(e13)/Cost(e14),它表示攻擊者實(shí)施攻擊步驟e13和e14需要花費(fèi)的成本比值。

      依據(jù)參數(shù)C(X)的設(shè)定,我們對(duì)攻擊者實(shí)施攻擊步驟e13或e14的可能性進(jìn)行預(yù)測(cè),動(dòng)態(tài)生成節(jié)點(diǎn)v6的置信度走勢(shì)圖。圖6顯示了節(jié)點(diǎn)v6隨C(X)變化的置信度走勢(shì)圖。X軸表示成本比率C(X),Y軸表示置信度,紅線表示節(jié)點(diǎn)v6的置信度π(ν6),平行于X軸的黑線為閾值,表示攻擊者想通過實(shí)施攻擊步驟e13成功占有節(jié)點(diǎn)v6,節(jié)點(diǎn)v6的置信度必須達(dá)到的最小值。

      圖6 攻擊路徑預(yù)測(cè)

      圖6中,隨著參數(shù)C(X)的增大,π(ν6)呈現(xiàn)出逐漸減小的趨勢(shì)。其閾值為0.23,表明攻擊者想通過實(shí)施攻擊步驟e13成功占有節(jié)點(diǎn)v6,π(ν6)的最小值必須達(dá)到0.23。此時(shí),對(duì)應(yīng)的C(X)值為0.33。由此我們得出結(jié)論,當(dāng)C(X)值不大于0.33時(shí),攻擊者會(huì)選擇通過路徑e13到達(dá)節(jié)點(diǎn)v6。因此,結(jié)合管理人員設(shè)定的閾值,如本文的0.23,和成本比率預(yù)警值,當(dāng)攻擊者選擇某一路徑的成本比率達(dá)到預(yù)警值時(shí),就能做出預(yù)警,并采取相應(yīng)措施。

      目前,有關(guān)攻擊路徑的預(yù)測(cè)算法大致分為以下兩類:1) 包含攻擊圖模型以及模型內(nèi)部系統(tǒng)風(fēng)險(xiǎn)因素的概率分布的二元組模型;2) 利用系統(tǒng)風(fēng)險(xiǎn)因素之間的關(guān)系,對(duì)系統(tǒng)的可靠性進(jìn)行分析評(píng)估。其中,第一類算法能夠快速地對(duì)模型進(jìn)行構(gòu)建,能準(zhǔn)確地找出系統(tǒng)風(fēng)險(xiǎn)的關(guān)鍵點(diǎn),但在實(shí)際的攻擊路徑傳播中,風(fēng)險(xiǎn)因素間的相關(guān)性,以及目標(biāo)節(jié)點(diǎn)的復(fù)雜性及重要性的不同,都可能導(dǎo)致節(jié)點(diǎn)概率的錯(cuò)誤計(jì)算,影響預(yù)測(cè)的準(zhǔn)確性。第二種算法考慮到以上的問題,并針對(duì)這些問題做出了相應(yīng)地解決辦法,在一定程度上提高了預(yù)測(cè)的準(zhǔn)確性,但是模型的復(fù)雜程度也隨之加大,并不具備良好的擴(kuò)展性。

      本文中基于d-分隔定理的節(jié)點(diǎn)置信度計(jì)算方法通過對(duì)攻擊成本的量化,使其成為攻擊行為實(shí)施的可能性,能更為準(zhǔn)確地計(jì)算出節(jié)點(diǎn)發(fā)生的概率。提出利用貝葉斯網(wǎng)絡(luò)分隔定理的節(jié)點(diǎn)置信度計(jì)算方法,能使節(jié)點(diǎn)間的相關(guān)性對(duì)節(jié)點(diǎn)置信度計(jì)算的影響達(dá)到最小。相比以上的兩類攻擊路徑預(yù)測(cè)算法,本文的算法有以下三個(gè)優(yōu)勢(shì):1)通過對(duì)攻擊行為發(fā)生的條件概率,提高了置信度計(jì)算的準(zhǔn)確性;2)節(jié)點(diǎn)置信度的準(zhǔn)確性的提高,使網(wǎng)絡(luò)威脅傳播路徑預(yù)測(cè)更為有效;3)該算法以貝葉斯網(wǎng)絡(luò)為基礎(chǔ),能適用于更加復(fù)雜的網(wǎng)絡(luò),具有很好的擴(kuò)展性。

      5 結(jié) 語(yǔ)

      為了解決節(jié)點(diǎn)相關(guān)性和條件概率導(dǎo)致的節(jié)點(diǎn)置信度錯(cuò)誤計(jì)算問題,提高網(wǎng)絡(luò)安全威脅傳播路徑預(yù)測(cè)的有效性,本文提出了一種節(jié)點(diǎn)置信度計(jì)算方法。圍繞這一方法,定義了貝葉斯攻擊圖G,引入了d-分隔定理,提出了攻擊行為發(fā)生的條件概率和節(jié)點(diǎn)置信度的計(jì)算公式,并給出了節(jié)點(diǎn)置信度的計(jì)算算法。上述內(nèi)容的提出,不但彌補(bǔ)了Homer[6]文中的不足,考慮了條件概率對(duì)節(jié)點(diǎn)置信度的影響,而且提出了條件概率的計(jì)算公式,這在文獻(xiàn)[12,13]中并未被提出。針對(duì)文獻(xiàn)[14,15]的不足,本文還分析了攻擊成本對(duì)攻擊者選擇策略和節(jié)點(diǎn)概率的影響。最后,通過對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行分析,本文提出的方法能夠很好地提高節(jié)點(diǎn)置信度的計(jì)算準(zhǔn)確性,提升網(wǎng)絡(luò)威脅傳播路徑預(yù)測(cè)的有效性。

      進(jìn)一步研究工作包括深入研究網(wǎng)絡(luò)安全威脅傳播路徑存在的問題以及在更為復(fù)雜的網(wǎng)絡(luò)中驗(yàn)證本文所提方法的有效性。

      [1] 黃家林, 張征帆. 主動(dòng)防御系統(tǒng)及應(yīng)用研究[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用, 2007(3):48-51.

      [2] 陳鋒, 張怡, 蘇金樹,等.攻擊圖的兩種形式化分析[J].軟件學(xué)報(bào),2010,21(4):838-848.

      [3] 吳迪, 連一峰, 陳愷,等. 一種基于攻擊圖的安全分析與識(shí)別方法[J].計(jì)算機(jī)學(xué)報(bào),2012,35(9):1938-1950.

      [4] Changhe Yuan,Brandon Malone. Learning optimal bayesian networks: a shortest path perspective[J]. Journal of Artificial Intelligence Research, 2013,48(1):23-65.

      [5] 陳鋒, 毛捍東, 張維明, 等. 攻擊圖技術(shù)研究進(jìn)展[J]. 計(jì)算機(jī)科學(xué),2011,38(11):12-18.

      [6] Homer J, Ou X M, Schmidt D. A sound and practical approach to quantifying security risk in enterprise networks[R]. Technical report, Kansas State University, 2009.

      [7] Mell P, Scarfone K. A Complete Guide to the Common Vulnerability Scoring System Version 2.0[EB/OL].2007. http://www.first.org/cvss.

      [8] Common Vulnerability Scoring System version2[EB/OL]. 2011. http://www.cvss.org.

      [9] 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.

      [10] 石進(jìn), 郭山清. 一種基于攻擊圖的入侵響應(yīng)方法[J]. 軟件學(xué)報(bào),2008,19(10):2746-2753.

      [11] Mehta V, Bartzis C, Zhu H, et al. Ranking Attack Graphs.[J]. Proceedings of Recent Advances in Intrusion Detection, 2006,4219:127-144.

      [12] 張少俊, 李建華, 宋珊珊,等. 貝葉斯推理在攻擊圖節(jié)點(diǎn)置信度計(jì)算中的應(yīng)用[J]. 軟件學(xué)報(bào), 2010,21(9):2376-2386.

      [13] Publishing S. A Novel Attack Graph Posterior Inference Model Based on Bayesian Network[J].Journal of Information Security,2011,2(1):8-27.

      [14] Wang S, Zhang Z, Kadobayashi Y. Exploring attack graph for cost-benefit security hardening: A probabilistic approach[J]. Computers & Security, 2013, 32(1):158-169.

      [15] 吳泓潤(rùn), 覃俊, 鄭波盡. 基于代價(jià)的復(fù)雜網(wǎng)絡(luò)抗攻擊性研究[J]. 計(jì)算機(jī)科學(xué), 2012,39(8):224-227.

      [16] Li W, Vaughn R B. Cluster Security Research Involving the Modeling of Network Exploitations Using Exploitation Graphs[C]//Proc of the 6th IEEE International Symposium on Cluster Computing and the Grid Workship, 2006:26-37.

      [17] 黃光球,程凱歌. 基于攻擊圖的擴(kuò)充Petri網(wǎng)攻擊模型[J].計(jì)算機(jī)工程,2011,37(10):131-133,136.

      NODE CONFIDENCE CALCULATION METHOD BASED ON D-SEPARATION THEOREM OF BAYESIAN NETWORK

      Wang Hui Kang Kaihang Wang Yunfeng

      (School of Computer Science and Technology, Henan Polytechnic University, Jiaozuo 454000,Henan,China)

      Current node confidence calculation method for Bayesian network has the problem of node confidence miscalculation caused by the miscalculation of conditional probability and the correlation of nodes. This problem reduces the accuracy of node confidence and impacts the effectiveness of prediction on propagation paths of network threats. Therefore, we present a node confidence calculation method which is based on d-separation theorem of Bayesian network. First, by analysing the correlation between attack cost and the occurrence likelihood of attack activity, we propose an approach for calculating the conditional probability of attack activity occurrence so as to solve the problem of miscalculation in conditional probability. Secondly, by introducing separation theorem of Bayesian network, we make the nodes with correlation be independent to each other under the condition of their common d-separation set, and propose the node confidence calculation method so as to effectively avoid the miscalculation of node confidence caused by the correlation. Finally, experimental results show that our method effectively solves the miscalculation problem of node confidence and improves the accuracy of node confidence, consequently it achieves the effective prediction on propagation paths of network threats.

      Node confidence Conditional probability Correlation d-Separation Attack cost

      2015-07-16。國(guó)家自然科學(xué)基金項(xiàng)目(51174263,6130 0216);教育部博士點(diǎn)基金項(xiàng)目(20124116120004);河南省教育廳科學(xué)技術(shù)研究重點(diǎn)項(xiàng)目(13A510325)。王輝,副教授,主研領(lǐng)域:計(jì)算機(jī)網(wǎng)絡(luò)及網(wǎng)絡(luò)安全,無(wú)線傳感器網(wǎng)絡(luò)??簞P航,碩士生。王云峰,碩士生。

      TP393.08

      A

      10.3969/j.issn.1000-386x.2016.11.066

      猜你喜歡
      置信度攻擊者貝葉斯
      硼鋁復(fù)合材料硼含量置信度臨界安全分析研究
      基于微分博弈的追逃問題最優(yōu)策略設(shè)計(jì)
      正負(fù)關(guān)聯(lián)規(guī)則兩級(jí)置信度閾值設(shè)置方法
      正面迎接批判
      愛你(2018年16期)2018-06-21 03:28:44
      貝葉斯公式及其應(yīng)用
      基于貝葉斯估計(jì)的軌道占用識(shí)別方法
      一種基于貝葉斯壓縮感知的說話人識(shí)別方法
      電子器件(2015年5期)2015-12-29 08:43:15
      有限次重復(fù)博弈下的網(wǎng)絡(luò)攻擊行為研究
      置信度條件下軸承壽命的可靠度分析
      軸承(2015年2期)2015-07-25 03:51:04
      IIRCT下負(fù)二項(xiàng)分布參數(shù)多變點(diǎn)的貝葉斯估計(jì)
      嘉义县| 遂昌县| 毕节市| 天柱县| 庐江县| 汉阴县| 丰原市| 青阳县| 拉萨市| 安塞县| 盈江县| 白玉县| 武隆县| 广东省| 普定县| 绥中县| 额尔古纳市| 麟游县| 葫芦岛市| 尉犁县| 科技| 南雄市| 临桂县| 砀山县| 岗巴县| 原平市| 牡丹江市| 长沙市| 青海省| 闵行区| 富宁县| 庆元县| 井研县| 木兰县| 岑巩县| 刚察县| 大厂| 台州市| 灯塔市| 汾阳市| 宝坻区|