周余陽,程光,郭春生
?
基于貝葉斯攻擊圖的網絡攻擊面風險評估方法
周余陽1,2,3,程光1,2,3,郭春生1,2,3
(1. 東南大學網絡空間安全學院,江蘇 南京 211189;2. 東南大學計算機科學與工程學院,江蘇 南京 211189; 3. 教育部計算機網絡和信息集成重點實驗室(東南大學),江蘇 南京 211189)
針對移動目標防御中網絡攻擊面缺少客觀風險評估的不足,為了有效地實現網絡系統的安全風險評估,實現對潛在的攻擊路徑進行推算,提出一種基于貝葉斯攻擊圖的網絡攻擊面風險評估方法。通過對網絡系統中資源、脆弱性漏洞及其依賴關系建立貝葉斯攻擊圖,考量節點之間的依賴關系、資源利用之間的相關性以及攻擊行為對攻擊路徑的影響,推斷攻擊者到達各個狀態的概率以及最大概率的攻擊路徑。實驗結果表明了所提網絡攻擊面風險評估方法的可行性和有效性,能夠為攻擊面動態防御措施的選擇提供很好的支撐。
移動目標防御;安全風險評估;貝葉斯攻擊圖;攻擊面;攻擊路徑
隨著信息技術的飛速發展,互聯網開始在社會的各行各業有所應用,國家電力、交通、金融、能源等領域的有效運作都離不開互聯網的支撐,人們的生產生活方式也與互聯網息息相關?;ヂ摼W一方面給人們帶來了諸多的便利和好處,而另一方面,互聯網存在著巨大的安全隱患。社會對互聯網的依賴性越強,網絡攻擊帶來的危害就越嚴重,因此,網絡空間的安全尤為重要。
有研究表明,互聯網安全的最大問題在于整體態勢的易攻難守[1]。攻擊者具備足夠的時間進行攻擊準備并組織進攻,能夠長期針對攻擊目標(網絡設備、通信鏈路、基礎協議等)的固有脆弱性進行反復的漏洞分析和滲透測試,直至達成最終目標[2]。移動目標防御(MTD, moving target defense)是美國提出的“改變游戲規則”防御研究方向,通過不斷、持續地轉移攻擊面,減少系統的靜態性、同構性和確定性,迷惑或誤導攻擊者,增加攻擊者實施攻擊的成本和難度,以此挫敗攻擊者的攻擊。
而作為移動目標防御中的重要一環,網絡攻擊面的動態轉移一直是研究者持續關注的研究重點。傳統的網絡防御通常采用防火墻、入侵檢測系統、用戶認證、數據加密和解密、漏洞掃描、防病毒軟件等,但單一的安全防護技術已經不能確保網絡和系統的安全,而且大部分安全防御技術是被動、滯后的。由于網絡架構和配置的靜態性,這些方法在檢測攻擊時依賴先驗知識,通過靜態特征對攻擊進行匹配,而攻擊者可以持續地收集和分析網絡和系統的信息,使其有充分的時間找到目標中存在的缺陷和漏洞,從而對目標發動攻擊。基于網絡攻擊面動態轉移的移動目標防御方法,主要目的是切斷攻擊者實施網絡偵查和探測目標漏洞這一環節,迫使攻擊者不斷追逐攻擊目標,阻止攻擊者連接到目標系統或引導攻擊者連接到虛假、錯誤的目標,從而消除攻擊者攻擊時間、空間上的優勢。
然而,現有網絡攻擊面的動態轉移大多為基于時間驅動的網絡資源隨機轉移或基于簡單事件的動態轉移方式,由于沒有對安全狀態的整體認知,故其并不具有廣泛的針對性和目的性;同時,對于網絡攻擊面動態轉移前后的安全狀況以及風險狀況,目前還不存在客觀的風險評估分析方法。在目前眾多網攻擊的模型描述方法中,最常見的就是攻擊樹和攻擊圖方法,其通過模擬不同節點之間的因果依賴關系,研究復雜的多步攻擊行為。攻擊樹具有直觀性、可視化等特點,能夠很好地用圖形化語言描述網絡攻擊。但由于樹狀模型存在擴展性不強的缺陷,因此,攻擊樹在描述復雜的網絡攻擊時,效果將大打折扣,同時,復雜網絡系統建模時的復雜度和工作量也在很大程度上制約了攻擊樹方法的使用[3-4]。而相比于攻擊樹,攻擊圖方法由于基于單調性假設,具有良好的可擴展性,能夠很好地對復雜的網絡攻擊進行描述[5-6]。
Poolsappasit等[7]于2012年提出了基于貝葉斯攻擊圖的動態安全風險管理方法,評估安全管控方法的收益與開銷,奠定了基于攻擊圖的安全評估與管控的研究方向;Miehling等[8]在攻防雙方信息部分可見的博弈情況下,基于貝葉斯攻擊圖利用開銷函數制定最優的防御策略;類似地,Nguyen等[9]在貝葉斯攻擊圖的基礎上提出一種多階攻擊圖,定量對比與評估不同防御策略的開銷;Bopche等[10]在動態網絡中構建貝葉斯攻擊圖,基于圖相似性理論在時域上定量測量攻擊面的轉移,從而實現網絡安全風險的評估。
在國內的研究中,陳小軍等[11]利用概率攻擊圖,結合節點置信概率,對內部攻擊者的攻擊意圖和攻擊路徑進行推算;高妮等[12]采用攻擊圖描述攻擊間因果關系,結合通用漏洞評分和局部條件概率分布,推理并動態更新單步攻擊的后驗概率;劉威歆等[13]針對現有攻擊圖方法存在冗余路徑誤報的問題,提出基于攻擊圖的多源告警關聯分析方法,結合圖關系與閾值進行聯動預測,借此提升關聯分析的有效性;雷程等[14]提出的移動目標防御效能評估方法中,以攻擊圖為基礎建立分層網絡資源圖,結合圖中變點檢測與標準化度量方法,對移動目標防御的成本與收益進行了動態度量。
在上述研究的基礎上,本文提出一種基于貝葉斯攻擊圖的網絡攻擊面風險評估方法,通過動態構建貝葉斯攻擊圖,綜合考量節點之間的依賴關系、相關性與可達概率分布情況,能夠有效地評估網絡系統的安全風險情況,并對潛在的攻擊路徑進行推算,能夠為攻擊面動態防御措施的選擇提供很好的支撐。
目前,學術界對攻擊面尚無一個明確的、統一的定義。Howard等[15]最早將攻擊面描述為系統的承受攻擊能力,其中包含攻擊目標與促成因素、通道與協議、訪問權限3個維度;Manadhata等[16]正式提出了系統攻擊面的概念,其針對大量攻擊案例分析后,總結歸納出攻擊者可以利用系統函數、通道和系統環境中的數據項對系統進行攻擊,并據此將系統攻擊面定義為系統函數、通道和數據三元組的子集;Peng等[17]在云服務安全的研究中,將虛擬機實例的攻擊面歸結為所有外部可訪問資源的總和;而在網絡攻擊面的相關研究[18-20]中,研究者將網絡攻擊面定義為暴露在攻擊者面前的網絡資源(端口、IP地址等)以及已被攻破、可利用的脆弱性漏洞。
結合上述研究可以發現,攻擊面實質上屬于系統資源,是系統的重要組成部分。然而,并不是全部的系統資源都可以稱為攻擊面,只有攻擊者能夠利用某種資源攻擊系統時,該資源才成為攻擊面的一部分。于是,本文將攻擊面歸結為系統中可被利用、遭受攻擊的資源集合,攻擊者可通過攻擊面實施攻擊,達到竊取系統資源、破壞系統的目的。
雖然現有的移動目標防御研究已經廣泛使用了攻擊面的概念,但目前在攻擊面定義及其外延概念的表述上還存在精確性與通俗性的不足。因此,為了進一步對攻擊面的特性進行刻畫以及后續闡述網絡攻擊的建模方法,本文在此基礎上給出了以下若干定義。
定義1 (資源)對于系統,將可訪問、可接入的系統組成統稱為系統資源,并定義為全體系統資源的全集。對任意資源?,其可配置參數集為C;對任意可配置參數?C,其取值集合為
定義2 (攻擊面)對于系統,定義系統的攻擊面為攻擊者當前可用于發動攻擊的系統資源的集合。若攻擊者當前時刻能夠利用種資源1,2,…,res實施攻擊,則1,2,…,res構成攻擊面,即={1,2,…,res},并滿足是全體系統資源的子集,即í。
定義3 (攻擊面轉移)對于攻擊面,若攻擊面上資源數量發生變化或資源可配置參數取值發生變化,則表示攻擊面發生了轉移。即1時刻1={1,2,…,res},C1={1,2,…,c};2時刻2={1,2,…,res},C={1,2,…,c}。若1或C11C2,表明攻擊面112,則稱該系統從1時刻到2時刻發生了攻擊面轉移。
定義4 (風險系數)對于系統資源,若攻擊者成功攻陷該資源的概率為,則稱為資源的風險系數。
攻擊圖將網絡資源形式化,反映了網絡內可能存在的攻擊路徑,并能根據圖中所示情況對攻擊者攻擊時更有可能采用的路徑進行評估與判斷。作為一種非常有效的概率推理模型,貝葉斯網絡由Pearl[21]于1988年率先提出。在貝葉斯網絡中,初始節點將會賦予初始概率值,而有向邊則反映了節點之間的因果關系,從而可以根據初始節點概率以及節點間的因果關系,對后續所有節點的條件概率進行相應推導。
因此,目前的學者也大多基于貝葉斯網絡進行網絡資源上攻擊路徑發生概率和節點被攻陷概率計算的研究。通常,會將基于貝葉斯網絡的攻擊圖稱作貝葉斯攻擊圖。類似于Poolsappasit等[7]提出的方法,本文假定貝葉斯攻擊圖中各個節點采用伯努利隨機變量表示當前的屬性狀態,屬性主要包含以下4種實例:系統漏洞、系統特性、網絡特性和訪問權限。
定義5 (節點屬性狀態)對任意節點的屬性,其包含=1/True與=0/False這2個狀態。=1/True時,表示屬性當前已被攻擊者攻破,節點到達該狀態;相應地,=0/False時表示屬性當前尚未被攻擊者攻破。
攻擊圖中代表攻擊者攻擊行為的最小單位稱為原子攻擊。根據攻擊圖的種類和應用場景的不同,原子攻擊可以是一次漏洞利用、一次社會工程攻擊或一次未授權的登錄行為,或僅表示網絡狀態發生了改變而沒有呈現出具體攻擊行為的細節。在貝葉斯攻擊圖中,原子攻擊以有向邊表示,根據初始狀態,有向邊以及節點間的依賴關系和狀態概率形成的四元組集合構成了貝葉斯攻擊圖,其具體定義如下。

首先,為了生成貝葉斯攻擊圖,需要分別輸入個初始節點的初始狀態ini以及其直接后續的有向邊集合0、依賴關系集合0和概率集合P0,應用貝葉斯攻擊圖生成算法,遍歷完整的節點狀態以及攻擊路徑,實現攻擊圖的構建,如算法1所示。
算法1 貝葉斯攻擊圖生成(Bayesian attack graph generate)算法
輸入 初始狀態序列ini={ini1,ini2,…,inin}及對應的后續有向邊集合0、依賴關系集合0和概率集合0
輸出 攻擊圖(,,,)
1)(,,,)?(ini,0,0,0)
2)?0
3) WHILES1finDO //判斷是否到達最終態
4) FOR EACHA,,PrIN(,,,)
5) CalculateS1//計算下一階段節點狀態
6)?+1
7) InferA,,Pr//推斷
8) IFA,,Pr不為空 THEN
9) Add (S, A,,Pr) to
//更新后續一階段攻擊圖
10) ELSE
11) Add(S,0,0, 0) to//到達最終態
12) END WHILE
13) RETURN(,,,)
其次,由于單調性假設,攻擊者在攻擊過程中不斷地提高自己的能力且不會失去已有的能力,那么攻擊者重復索取已擁有的權限將不滿足利益最大的原則。同樣地,由于貝葉斯攻擊圖屬于有向無環圖,所以需要對攻擊圖中出現的環路即含圈攻擊路徑進行剔除。將算法1生成的攻擊圖作為輸入,遍歷全圖,剔除環路后,生成新圖,如算法2所示。
算法2 環路剔除(loop remove)算法
輸入 原始攻擊圖
輸出 新攻擊圖
1) (,,,)?Traversal() //遍歷攻擊圖
2)?Stage()
3) FOR EACHS?,a?,?,Pr?
4) FOR EACHS?,a?,?,Pr?
5) IF EXISTS=(a) INWITHPr
ANDS=(a) INWITHPrTHEN
//判斷是否屬于環路
6) IF 7) Remove(a,,Pr)FROM(,,,) 8) ELSE 9) Remove(a,,Pr)FROM(,,,) 10)?Update (,,,) //更新攻擊圖 11) RETURN 為了能夠計量各個節點的條件概率分布情況,需要首先評估攻擊者成功利用漏洞,攻破某個資源的成功概率。因此,本文引入了通用脆弱性評分系統[22](CVSS, common vulnerability scoring system),CVSS能夠提供完整的評分參數,開放評分框架,使評分者直接了解總體評分的由來;采用相同框架對全體脆弱性進行評分,評分標準規范統一;采用動態評估與脆弱性所在資源之間依賴關系相結合的方式,量化資源脆弱性利用的難易程度。 本文參照Zangeneh等[23]提出的方法,基于攻擊途徑(access vector)、攻擊復雜度(access complexity)、身份認證(authentication instances)這3個測度,對漏洞利用的成功率進行測算。在一次原子攻擊過程中,節點狀態由S轉移到S,假定其中某一脆弱性漏洞與該狀態轉移過程相關,將其記作e,那么該漏洞的成功利用率為 由于父節點與子節點之間存在“與”關系和“或”關系,即?{AND,OR},故在此分以下2種情況進行討論。 1) 當=AND,表示任意父節點的狀態均為1時,子節點才有概率可達;否則,子節點不可達。 2) 當=OR,表示僅存在一個父節點的狀態為1時,該子節點便有概率可到達;而當任意父節點狀態均為0時,則表示該子節點必定不可到達。 在設計風險評估框架時,需考慮到網絡風險的三要素,即資源、脆弱性、威脅。本文基于此建立了如圖1所示的風險評估框架。 首先,需要對系統資源、系統脆弱性以及系統所受威脅有一個整體認知,鑒于貝葉斯攻擊圖的組成元素包含資源節點狀態以及節點之間的因果關系,本文所構建框架將通過網絡系統的資源信息及專家知識對網絡系統中所存在資源的狀態屬性進行識別,對資源之間的狀態轉換以及依賴關系進行確認。 其次,在貝葉斯攻擊圖的構建過程中,節點在狀態轉移過程中需要條件概率的測算才能對后續狀態進行推導,故圖1框架中引入了脆弱性檢測組件,從而檢測出整個網絡系統的脆弱性漏洞,并結合文獻[7]提出的方法引入對脆弱性漏洞的可利用率進行度量的測算,此外還額外結合父子節點之間存在的依賴關系對計算到達后續狀態的條件概率進行完善,使攻擊圖更加精確和有效地反映網絡系統各資源的實際狀態轉移情況。 最后,在構建的貝葉斯攻擊圖基礎之上,為了進一步細化風險評估,使評估結果更加簡潔、直觀,本框架參照文獻[14,23]所提出的方法,對脆弱性可利用率進行定量度量,并根據本文提出的狀態可達概率的概念,獲取各個節點狀態的可達情況,實現對每個節點狀態總體可達概率的測算,并基于此由最終狀態對前向狀態進行反向查找,從而推導得出最大概率的攻擊路徑。 該風險評估框架綜合考慮了系統資源屬性與脆弱性漏洞利用之間的關系,以狀態節點和有向轉移概率的形式構成了貝葉斯攻擊圖。既考慮了節點之間的依賴關系,又引入測量標準對脆弱性漏洞利用率進行數學計算。同時,為了直觀清晰地描述系統當前的威脅情況,通過脆弱性可利用率、狀態可達概率以及最大概率攻擊路徑的形式表示整體的安全風險狀況,能夠為防御者后續的攻擊面動態轉移策略的制訂與執行提供基礎與支撐。 為了更精確地有效評估網絡系統的安全風險,本文在前述CVSS的基礎上,考量資源相互之間的關系對資源脆弱性的影響因素,以保證評估數據的有效性。資源之間的相互關系主要體現在資源脆弱性的依賴關系和關聯性對攻擊者實施攻擊的影響,即不同類型資源間的依賴關系和相同類型資源間的關聯關系對攻擊者實施攻擊、漏洞利用的影響。其中,不同類型資源之間的依賴關系對攻擊實施的影響已經在2.4節條件概率計算中進行了討論,故本節重點討論相同類型資源之間的相關性。 圖1 風險評估框架 由于不同網絡資源節點之間可能存在相同的資源類型,如不同網絡資源可能都采用了TCP,如果攻擊者在某一節點上成功通過TCP的某個脆弱性漏洞將該節點攻破,那么攻擊者在后續的攻擊路徑上需要再次利用該類資源脆弱性時,將很大程度上提高脆弱性利用的成功率。可以認為,對于相同類型的資源脆弱性,雖然在不同網絡資源中的配置參數可能并不完全一致,但是其脆弱性具有相似的屬性,存在一定的相關性。因此,攻擊者一旦成功利用了某類資源的脆弱性,那么在其后續的攻擊行為中,利用同類資源脆弱性的成功率將提高。為此,本文參照雷程等[14]提出的方法,對同類資源的相關性進行了定義,其形式化描述如下。 定義7 (相關性)給定系統,對于"1,2?,若1,2屬于相同類型的資源,該類型可配置參數集為C,那么定義1,2的相關性為(1,2): C′C?[0,1]。 當為0時,表示1,2完全不相關,屬于兩類資源,此時(e2| e1) =(e2);而當為1時,表示1,2完全相同,屬于同一資源,那么攻擊者在已能成功利用1的前提下必然能攻破2。由此,可以衍生出相同類型資源脆弱性漏洞利用的條件概率為 攻擊圖的生成和分析主要服務于準確地預測攻擊以及推測攻擊者的后續攻擊行為。于是,能否推斷出攻擊者的攻擊意圖以及攻擊路徑成了攻擊圖技術是否具有現實意義的重要評估內容。近年來,如何根據攻擊圖高效地對攻擊路徑進行推測,并及時采取相應的安全防護措施,減少因網絡攻擊造成的危害,也已成為網絡安全防護領域的一項研究熱點。 因此,本文首先定義了總體可達概率,其次給出了全節點概率推導算法,最后給出了最大概率攻擊路徑推導算法。 3.3.1 總體可達概率 在給定攻擊圖以及脆弱性可利用概率的前提下,將狀態的總體可達概率定義為發生一系列攻擊行為到達當前節點狀態的總體可能性。其具體定義如下。 定義8 (總體可達概率)給定貝葉斯攻擊圖以及脆弱性漏洞可利用概率集合{(1),(2),…,(e)},總體可達概率()定義如下。 1) 初始狀態必然可達,即(ini)=1。 3.3.2 全節點概率推導算法 根據3.3.1節中關于總體可達概率的定義,給出如下全節點概率推導算法,實現了對攻擊圖整體全部節點的可達概率評估,較為全面地評估攻擊者的攻擊意圖,為后續攻擊路徑的推導提供數據基礎。 算法3 全節點概率推導(whole node probability derivation)算法 輸入 攻擊圖(,,,) 輸出 攻擊圖上各個節點的總體可達概率 1) InitQueue() //初始化隊列 2)PushQueue(,S) //壓入初始節點 3) WHILE (EmptyQueue()) DO 4)= PopQueue() 5) FOR EACHS? 6) IF?[S] THEN //判斷是否父節點 7) PushQueue(,S) //壓入其子節點 8) IF NOT EXIST[] THEN 9)()=1 10) ELSE 11)()=() 12) END WHILE 13) RETURN 各個節點的總體可達概率 3.3.3 最大概率攻擊路徑推導算法 根據3.3.2節中全節點概率推導算法上,以最終狀態為起點,反向查找,尋找總體可達概率最大的節點,依次將其添加至攻擊路徑上,直到尋找到初始節點,則能推導出一條最大概率的攻擊路徑,具體算法如下。 算法4 最大概率攻擊路徑推導(maximum probability attack path derivation)算法 輸入 攻擊圖(,,,);各個節點的總體可達概率集合 輸出 最大概率攻擊路徑 1) InitQueue() //初始化隊列 2)=argmax((S)) //在最終狀態中查找總體可達概率最大的節點 3)Addto//加入攻擊路徑 4) PushQueue(,) 5) WHILE (EmptyQueue()) DO 6)= PopQueue() 7) IF NOT EXIST[] THEN //是否初始節點 8) Addto 9) ELSE IF([],)?AND THEN 10) PushQueue(,[]) //將的全部父節點壓入隊列 11) Add[]to 12) ELSE IF([],)?OR THEN 13)=argmax(([])) //查找父節點中總體可達概率最大節點 14) PushQueue(,) 15) Addto 16) END WHILE 17) RETURN 為了驗證基于貝葉斯攻擊圖的網絡攻擊面風險評估方法的可行性與有效性,本節首先利用如圖2所示的網絡拓撲,構建了小型的實驗網絡環境,并對此網絡環境中的安全漏洞和潛在攻擊手段進行了檢測。然后利用第2節介紹的網絡攻擊建模方法實現攻擊圖的構建和對應的有向邊之間的條件概率表。最后通過第3節介紹的安全風險評估方法,實現風險的前后關聯,相應調整對應資源的可利用率,從而計算出全節點的總體可達概率,最終實現最大概率攻擊路徑的推測。 在圖2所示的實驗網絡拓撲中,網絡被劃分為2個部分:外網部分和內部工作網絡。外網與內網之間用防火墻進行邏輯隔離,在內部工作網絡中有3臺主機1、2、3,其中,1為一臺互聯網信息服務(IIS, Internet information services)服務器,2為一臺文件服務器,3為一臺數據服務器,具體的配置信息如表1所示。 圖2 實驗網絡拓撲示意圖 表1 主機節點配 表2 防火墻策略 同時,防火墻將整體實驗網絡環境劃分為3個網段,其中,外網為網段0,1屬于網段1,2、3同屬于網段2,防火墻具體實施策略如表2所示,對于同網段主機之間的訪問遵循該網段所開放端口的訪問,而對于不在防火墻策略中的其他訪問則視為非法訪問,一律禁止。 首先,在實驗網絡環境中運用Nessus對實驗網絡中的主機進行脆弱性檢測,再對檢測到的節點資源脆弱性信息進行匯總,同時結合表2防火墻的配置規則,提取出可能被攻擊者利用的脆弱性資源,如表3所示。由于本文主要考察資源脆弱性對網絡服務造成的影響,所以對掃描得到的脆弱性所對應的網絡服務資產,按照如表3所示的CVSS基本度量組指標分值,結合如表4所示的節點資源脆弱性的信息列表,再通過式(1)對攻擊途徑、攻擊復雜度、身份認證進行測算,可得出相應的脆弱性成功利用率,其結果如表5所示。 表3 CVSS基本度量指標分值 表4 節點資源脆弱性信息 根據實驗網絡環境的拓撲結構、利用Nessus掃描獲得的節點脆弱性結果,得到如圖3所示的貝葉斯攻擊圖。其中,橢圓形標記代表節點狀態,數字代表主機標號,而無圈文字代表攻擊,需要特別說明的是,在攻擊圖中僅有攻擊LICQ_ remote_to_user(1,3)與攻擊LICQ_remote_to_user(2,3)指向狀態User(3)的兩條有向邊屬于“或”關系,其余的有向邊指向同一狀態的依賴關系均屬于“與”關系。 根據2.4節中的相關定義以及表5中脆弱性利用成功率的情況,可以得出各個狀態之間的條件概率分布情況;再根據3.2節中風險相關性的定義以及3.3節中關于總體可達概率的定義,最終得出了如表6所示的總體可達概率分布情況。值得說明的是,對于圖3中的通信交互狀態,如ftp(1,2)、ssh(1,2)等,由于其屬于表2防火墻策略中所允許的正常訪問,故將其狀態可達概率認定為1,即表明其必定可達;而對于脆弱性狀態,如CVE-2009-1012、CVE-2011-4800等,由于已在表5中詳細說明了其可利用成功率,故也不在總體可達概率情況表中額外說明。此外,對于攻擊圖中的攻擊squid_port_scan(1,3)與squid_port_scan(2,3),LICQ_remote_to_user (1, 3)與LICQ_remote_to_user (2, 3),發動攻擊的資源與狀態存在相關性,于是根據3.2節中相關內容對其后狀態可達概率進行相應修正。 表5 脆弱性成功利用率 表6 總體可達概率情況 圖3 實驗網絡構建的貝葉斯攻擊圖 根據前述的貝葉斯攻擊圖以及總體可達概率分布情況,計算得到的攻擊路徑以及其可到達率如表7所示。 根據表7,可以發現路徑3的可到達率顯著高于路徑1與路徑2,說明攻擊者的狀態可到達率隨著攻擊路徑的增長、脆弱性數量的增加而降低。但是,值得注意的是,路徑3的最終狀態僅僅到達User(2),并不是一條成功的攻擊路徑。同時,當對攻擊路徑2進行拆解后,可以發現攻擊User(1)?A?Root(1)?D?Root(2)的可到達率為0.017,也從側面說明Root權限獲取的攻擊難度明顯高于User權限。 上述的攻擊路徑以及可到達率結果建立在實驗環境中無觀測的情況下,可發現最終的可到達率均相對較低,而在實驗中為了實現安全風險的監控,部署了Snort進行各類脆弱性利用攻擊行為或網絡異常行為事件的捕獲,根據不同的監測結果對最大概率攻擊路徑以及其成功率進行相應修正和調整,即監測到某一脆弱性被利用后,表示該脆弱性利用后的狀態必定可達,具體情況如表8所示。 表7 攻擊路徑及其可到達率 根據表8,同樣可以發現,由于路徑3的最終狀態并沒有到達Root(3),所以即使監測到該路徑上發生了脆弱性利用,也可以認為攻擊者實行了無效攻擊,導致攻擊成功率為0;而對于相同的攻擊路徑,觀測到的脆弱性利用越接近最終狀態,其攻擊的成功率越高,尤其當監測到編號G的脆弱性利用時,表明攻擊者已經成功利用Local-setuid-bof對3實施攻擊,那么攻擊者已經順利獲取Root(3)的權限,表明攻擊成功。 表8 最大概率攻擊路徑及其成功率 為驗證本文風險評估方法的準確性與先進性,同樣依據圖3所示實驗網絡的貝葉斯攻擊圖,采用文獻[23]提出的風險評估方法得出了總體可達概率與不同攻擊路徑的可到達率。同時,為了更直觀地顯示本文方法的準確性,繪制出了圖4與圖5的總體可達概率對比圖與攻擊路徑可到達率對比圖。 由圖4與圖5可以看出,本文提出的風險評估方法,節點狀態LICQ_port(1,3)、LICQ_port(2,3)、User(3)與Root(3)的總體可達概率顯著高于文獻[23]所提方法,這是由于3.2節中對風險的相關性進行了較深入的討論與分析,認為攻擊者一旦成功利用了某類資源的脆弱性,那么在其后續的攻擊行為中,利用同類資源脆弱性的成功率將會提高。因此,在上述節點狀態時,由于其受到攻擊時所利用的脆弱性漏洞之間存在相關性,那么總體可達概率也將會相應升高;相應地,由于總體可達概率的提升,導致本文方法中這些狀態所在的攻擊路徑1與攻擊路徑2的可到達率也高于文獻[23]方法所得結果。由此可以看出,本文的風險評估方法能夠更加精確地對網絡系統的整體風險情況進行有效評估,能夠更加可靠地為網絡攻擊面的轉移提供有力的依據。 圖4 總體可達概率對比 圖5 攻擊路徑可到達率對比 除此以外,圖6還對2種風險評估方法中攻擊路徑的推導效率進行了對比,從圖中可以看出,本文方法攻擊路徑的推導時間明顯少于文獻[23]的推導時間,這是由于本文3.3.3節中提出的最大概率攻擊路徑推導算法中利用反向查找的方式,優先從最終狀態入手,可以有效地避開冗余路徑和無效路徑(如攻擊路徑3),能夠很大程度地提升攻擊路徑的推導效率。 圖6 攻擊路徑推導時間對比 為了有效地評估網絡系統的安全風險情況,并能夠對潛在的攻擊路徑進行推算,本文提出一種基于貝葉斯攻擊圖的網絡攻擊面風險評估方法,通過對網絡系統中資源、脆弱性漏洞及其依賴關系建立貝葉斯攻擊圖,進行安全風險的評估,推斷攻擊者到達各個狀態的概率以及最大概率的攻擊路徑。本文提出的模型和算法考慮了節點之間的依賴關系、資源利用之間的相關性以及攻擊行為對攻擊路徑的影響,提高了風險評估的準確性。實驗結果表明,本文的工作可以有效地推導出各個狀態的可達概率,并給出了不同情況下攻擊者的最大概率攻擊路徑,能夠為防御者實施攻擊面的動態轉移提供很好的支撐。 對于未來可開展的工作,一方面目前的建模工作主要還是基于小型的實驗網絡,在大規模網絡中推廣時還存在問題,如何實現大規模的自動攻擊圖構建將是后續研究的一個方向;另一方面,本文的風險評估基于脆弱性利用率、資源可被攻破概率以及攻擊者攻擊成功率,而在實際的攻擊中,攻擊者也會根據系統防護情況、攻擊開銷等其他因素進行攻擊選擇,而防御者在進行攻擊面轉移方案的選擇時,也會考慮防御性能與防御開銷的權衡,這些都將成為未來的研究重點。 [1] JAJODIA S, GHOSH A K, SWARUP V, et al. Moving target defense: creating asymmetric uncertainty for cyber threats[J]. Springer Ebooks, 2011: 54. [2] 蔡桂林, 王寶生, 王天佐, 等. 移動目標防御技術研究進展[J]. 計算機研究與發展, 2016, 53(5): 968-987. CAI G L, WANG B S, WANG T Z, et al. Research and development of moving target defense technology[J]. Journal of Computer Research and Development, 2016, 53(5): 968-987. [3] WHITLEY J N, PHAN R C W, WANG J, et al. Attribution of attack trees[J]. Computers & Electrical Engineering, 2011, 37(4): 624-628. [4] DALTON II G C, EDGE K S, MILLS R F, et al. Analysing security risks in computer and radio frequency identification (RFID) networks using attack and protection trees[J]. International Journal of Security and Networks, 2010, 5(2/3): 87-95. [5] AMMANN P, PAMULA J, RITCHEY R, et al. A host-based approach to network attack chaining analysis[C]// Computer Security Applications Conference. 2005: 72-84. [6] 葉子維, 郭淵博, 王宸東, 等. 攻擊圖技術應用研究綜述[J]. 通信學報, 2017, 38(11): 121-132. YE Z W, GUO Y B, WANG C D, et al. Survey on application of attack graph technology[J]. Journal on Communications, 2017, 38(11): 121-132. [7] POOLSAPPASIT N, DEWRI R, RAY I. Dynamic security risk management using Bayesian attack graphs[J]. IEEE Transactions on Dependable and Secure Computing, 2012, 9(1): 61-74. [8] MIEHLING E, RASOULI M, TENEKETZIS D. Optimal defense policies for partially observable spreading processes on bayesian attack graphs[C]// ACM Workshop on Moving Target Defense. 2015: 67-76. [9] NGUYEN T H, WRIGHT M, WELLMAN M P, et al. Multi-stage attack graph security games: heuristic strategies, with empirical game-theoretic analysis[C]//ACM Workshop on Moving Target Defense. 2017: 87-97. [10] BOPCHE G S, MEHTRE B M. Graph similarity metrics for assessing temporal changes in attack surface of dynamic networks[J]. Computers & Security, 2017, 64: 16-43. [11] 陳小軍, 方濱興, 譚慶豐, 等. 基于概率攻擊圖的內部攻擊意圖推斷算法研究[J]. 計算機學報, 2014, 37(1): 62-72. CHEN X J, FANG B X, TAN Q F, et al. Inferring attack intent of malicious insider based on probabilistic attack graph model[J]. Chinese Journal of Computers, 2014, 37(1): 62-72. [12] 高妮, 高嶺, 賀毅岳, 等. 基于貝葉斯攻擊圖的動態安全風險評估模型[J]. 四川大學學報(工程科學版), 2016, 48(1): 111-118. GAO N, GAO L, HE Y Y, et al. Dynamic security risk assessment model based on Bayesian attack graph[J]. Journal of Sichuan University(Engineering Science Editon), 2016, 48(1): 111-118. [13] 劉威歆, 鄭康鋒, 武斌, 等. 基于攻擊圖的多源告警關聯分析方法[J]. 通信學報, 2017, 36(9): 135-144. LIU W X, ZHENG K F, WU B, et al. Alert processing based on attack graph and multi-source analyzing[J]. Journal on Communications, 2017, 36(9): 135-144. [14] 雷程, 馬多賀, 張紅旗, 等. 基于變點檢測的網絡移動目標防御效能評估方法[J]. 通信學報, 2017, 38(1): 126-140. LEI C, MA D H, ZHANG H Q, et al. Performance assessment approach based on change-point detection for network moving target defense[J]. Journal on Communications, 2017, 38(1): 126-140. [15] HOWARD M, PINCUS J, WING J M. Measuring relative attack surfaces[J]. Computer Security in the 21st Century, 2003: 109-137. [16] MANADHATA P K, WING J M. An attack surface metric[J]. IEEE Transactions on Software Engineering, 2011, 37(3): 371-386. [17] PENG W, LI F, HUANG C T, et al. A moving-target defense strategy for cloud-based services with heterogeneous and dynamic attack surfaces[C]// IEEE International Conference on Communications. 2014: 804-809. [18] SUN K, JAJODIA S. Protecting enterprise networks through attack surface expansion[C]//Workshop on Cyber Security Analytics, Intelligence and Automation. 2014: 29-32. [19] CYBENKO G, JAJODIA S, WELLMAN M P, et al. Adversarial and uncertain reasoning for adaptive cyber defense: building the scientific foundation[C]//International Conference on Information Systems Security. 2014: 1-8. [20] FOREMAN J C, GURUGUBELLI D. Identifying the cyber attack surface of the advanced metering infrastructure[J]. The Electricity Journal, 2015, 28(1): 94-103. [21] PEARL J. Probabilistic reasoning in intelligent system[M]. Morgan Kaufinann: Network of Plausible Inference, 1988: 1-86. [22] MELL P M, KENT K A, ROMANOSKY S. The common vulnerability scoring system (CVSS) and its applicability to federal agency systems[J]. NIST Interagency/Internal Report (NISTIR) - 7435, 2007, 1(1): 119-127. [23] ZANGENEH V, SHAJARI M. A cost-sensitive move selection strategy for moving target defense[J]. Computers & Security, 2018(75): 72-91. Risk assessment method for network attacksurface based on Bayesian attack graph ZHOU Yuyang1,2,3, CHENG Guang1,2,3, GUO Chunsheng1,2,3 1. School of Cyber Science and Technology, Southeast University, Nanjing 211189, China 2. School of Computer Science and Engineering, Southeast University, Nanjing 211189, China 3. Key Laboratory of Computer Network and Information Integration of Ministry of Education (Southeast University), Nanjing 211189, China Aiming at the lack of objective risk assessment for the network attack surface on moving target defense, in order to realize the security risk assessment for the network system, and calculate the potential attack paths, a risk assessment method for network attack surface based on Bayesian attack graph was proposed. The network system resources, vulnerability and dependencies between them were used to establish Bayesian attack graph. Considering dependencies between nodes, the correlation between the resource and the influence of attacks on the attack path, the probability of each state that attackers can reach and the maximum probability attack path can be inferred. The experimental results prove the feasibility and effectiveness of the proposed network attack surface risk assessment method, which can provide a good support for the selection of dynamic defensive measures of attack surface. moving target defense, security risk assessment, Bayesian attack graph, attack surface, attack path The National Natural Science Foundation of China (No.61602114), The National Key R&D Plan Program of China (No.2017YFB0801703) TP393 A 10.11959/j.issn.2096-109x.2018053 2018-05-03; 2018-06-02 程光,gcheng@njnet.edu.cn 國家自然科學基金資助項目(No.61602114);國家重點研發計劃基金資助項目(No. 2017YFB0801703) 周余陽(1994-),男,江蘇泰州人,東南大學博士生,主要研究方向為網絡安全、移動目標防御。 程光(1973-),男,安徽黃山人,博士,東南大學教授、博士生導師,主要研究方向為網絡測量、網絡安全和網絡管理。 郭春生(1994-),男,河南南陽人,東南大學碩士生,主要研究方向為網絡安全。2.4 節點條件概率計算




3 安全風險評估
3.1 風險評估框架
3.2 風險的相關性


3.3 攻擊路徑推斷
4 實驗驗證分析
4.1 實驗網絡環境



4.2 實驗準備工作


4.3 攻擊圖構建與總體可達概率分布



4.4 最大概率攻擊路徑的推導


4.5 實驗分析



5 結束語

