張青青,湯紅波,游 偉,普黎明
(中國人民解放軍戰(zhàn)略支援部隊信息工程大學國家數字交換系統工程技術研究中心,鄭州 450002)
針對傳統網絡架構部署周期長、運營成本高、網絡結構僵化等問題,歐洲電信標準化協會(European Telecommunications Standards Institute,ETSI)提出了網絡功能虛擬化(Network Functions Virtualization,NFV)技術[1]。NFV 實現了網絡功能與專有硬件之間的解耦,通過虛擬化技術實現網絡功能的軟件化部署,提高了網絡的靈活性和資源的利用率,降低了運營商的資本支出(Capital Expenditure,CPEX)和運營開銷(Operation Expenses,OPEX)。然而,NFV 資源共享的特點也給網絡帶來了新的安全風險[2]。傳統的被動防御手段面向已知特征的威脅,防御滯后于攻擊,在應對NFV 帶來的新的安全風險時缺乏主動性和對攻擊的預測能力。
應對上述攻防不對等的格局,可基于擬態(tài)防御思想[3]構建NFV 擬態(tài)防御架構,利用網絡系統環(huán)境的動態(tài)性和不確定性獲得防御功能或屬性,其基本原理是:通過為每一個網絡功能構建多個功能等價的異構體,為系統引入多樣性,同時利用動態(tài)調度策略定期或不定期地對線上執(zhí)行體進行替換,為系統引入動態(tài)性與隨機性,使得攻擊者可利用的攻擊面不斷變化,從而增加攻擊者的攻擊難度。此外,利用裁決機制對輸出結果進行多模裁決,提高系統可靠性與防御魯棒性。其中動態(tài)調度策略是實現擬態(tài)防御的關鍵技術之一,設計合理的調度策略可以有效提升系統的安全性和異構體的利用率。在現有針對調度策略的相關研究中:文獻[4]引入了信譽度與相異度2 個指標,提出一種基于信譽度與相異度聯合優(yōu)化的執(zhí)行體選擇算法,在保證執(zhí)行體之間差異性的同時避免了脆弱程度較低的執(zhí)行體;文獻[5]在考慮系統負載因素的情況下,將調度問題轉化為安全與負載的動態(tài)雙目標優(yōu)化問題,兼顧了系統的安全性與計算性能;文獻[6]提出一種隨機種子最小相似度的調度策略,首先隨機確定種子執(zhí)行體,然后根據相似度指標選擇整體相似度最小的調度方案,實現了動態(tài)性和可靠性之間的平衡;文獻[7]提出一種基于優(yōu)先級和時間片的執(zhí)行體調度算法,首先從時空維度對執(zhí)行體的相似性進行定義,然后基于相似性指標進行優(yōu)先級預排序,最后結合時間片策略進行執(zhí)行體調度。
上述調度策略雖然在一定程度上改善了擬態(tài)防御架構的動態(tài)性與隨機性,但都是根據執(zhí)行體自身固有的特點進行調度,沒有進一步利用裁決機制對異常執(zhí)行體的定位感知能力做優(yōu)化調整。擬態(tài)裁決機制可以通過對執(zhí)行體的輸出結果進行對比,發(fā)現輸出異常的執(zhí)行體,并利用態(tài)勢感知技術以及大數據分析對異常執(zhí)行體的系統信息深入研究,從而得到當前環(huán)境下攻擊的類型和分布。各異構體由于其組成結構不同,暴露的攻擊面不同,對不同攻擊的防御能力也不同,因此利用擬態(tài)裁決機制的反饋結果對調度策略進行適應性地優(yōu)化調整,可以提高調度策略的有效性和系統的安全性。
為提升NFV 擬態(tài)防御架構的安全性和調度策略的有效性,本文利用分析器對裁決器的裁決信息進行分析,得到關于攻擊狀態(tài)的反饋信息,并利用演化博弈理論構建一個多狀態(tài)動態(tài)調度演化博弈模型,將在線執(zhí)行體的不同組合作為NFV 擬態(tài)防御架構的不同狀態(tài)。在此基礎上,利用復制動態(tài)方程和李雅普諾夫間接法對不同狀態(tài)下攻防策略的演化趨勢和穩(wěn)定性進行分析,提出基于演化博弈的最優(yōu)動態(tài)調度策略選取算法。
NFV 擬態(tài)防御架構是一個基于擬態(tài)防御理論的內生安全防御體系。圖1 為NFV 擬態(tài)防御架構的示意圖,可以看出該架構由異構元素池、異構體池、調度器、輸入代理、裁決器、輸出代理和分析器組成。
圖1 NFV 擬態(tài)防御架構Fig.1 NFV mimic defense architecture
在NFV 擬態(tài)防御架構中,每一個網絡功能異構體由上而下分為3 層:
1)應用軟件層:采用不同編程語言或算法實現的虛擬網絡功能(Virtual Network Function,VNF),是處理服務請求的邏輯功能。
2)操作系統層:包含不同的操作系統和虛擬化軟件,操作系統可以采用Windows、Ubuntu、Centos等,虛擬化軟件可以采用OpenStack、XEN 等,為應用軟件層提供必要的運行環(huán)境。
3)底層硬件層:可以使用不同廠家的服務器,如X86 和ARM,其作用是搭載整個操作系統。
這些異構體在功能上是等效的,但是具有不同的組成結構,因此降低了共模漏洞的可能性。M個異構體組成一個異構體池,負反饋控制器依據動態(tài)調度策略從異構體池中選擇N個異構體作為執(zhí)行體處理網絡請求,并不定期地對當前運行的執(zhí)行體集合進行變換,對外呈現結構的隨機性和不可預測性。輸入代理將輸入請求復制N份分發(fā)給執(zhí)行體進行處理。裁決器對N個執(zhí)行體的輸出結果進行判決,最終形成一致性的輸出。擬態(tài)裁決機制將單一確定目標攻擊難度增強為多目標協同一致攻擊難度。攻擊者只有在同時攻破個執(zhí)行體并產生相同的錯誤輸出時,才能成功攻擊NFV 擬態(tài)防御架構。分析器對輸出異常的執(zhí)行體做進一步深入分析,結合態(tài)勢感知技術[8]和大數據分析技術,從中獲取當前環(huán)境下攻擊者的分布和攻擊的類型,并將這些信息反饋給調度器,對調度策略進行優(yōu)化調整。
演化博弈[9]是把傳統博弈理論和生物進化理論結合起來的一種理論,其以有限理性作為理論分析的基礎。演化博弈可以對博弈雙方長期穩(wěn)定趨勢進行分析,符合實際網絡攻防對抗動態(tài)演化的現實,能夠有效提高利用博弈論分析網絡對抗行為的準確性和可信度[10]。本節(jié)以演化博弈理論為基礎構建多狀態(tài)動態(tài)調度演化博弈模型。與模型相關的前提假設如下:
假設1NFV 擬態(tài)防御架構是基于“輸入-處理-輸出”的IPO(Inputs Process Outputs)模型[3],對于相同的輸入,會產生一致的輸出。因此,本文僅針對由系統漏洞和后門引發(fā)的系統異?;蛘咻敵鲥e誤,而不考慮DDoS(Distributed Denial of Service)[11]等 資源消耗型攻擊,這樣裁決器才能對輸出結果進行比較,以判決執(zhí)行體是否被攻擊。
假設2系統輸出異??赡苁怯蓛炔抗收匣蛘咄獠抗魧е?。本文的研究目標是制定適應性的調度策略防御攻擊者的攻擊,因此,在導致執(zhí)行體輸出異常的因素中不考慮非攻擊因素,如環(huán)境等原因導致的系統崩潰。
假設3由于網絡環(huán)境復雜多變,攻防雙方獲得的攻防信息是不完全的。此外,由于分析能力和計算能力有限,攻防雙方無法通過一次博弈就能找到最優(yōu)策略,因此本文假設攻防雙方都是有限理性的,具有一定的統計分析能力和事后判斷能力,但沒有事先的預測能力,需要通過不斷學習和調整來找到合適的策略。攻擊者可以通過網絡掃描和滲透等手段對NFV 擬態(tài)防御架構進行探測,獲取防御者的漏洞和后門信息;NFV 擬態(tài)防御架構可以通過裁決機制感知異常執(zhí)行體,并利用分析器得到攻擊者的分布和攻擊的類型。
基于以上假設,下文給出多狀態(tài)動態(tài)調度演化博弈模型(Multi State Dynamic Scheduling Evolutionary Game Model,MSDSEGM)的相關定義。
定義1多狀態(tài)動態(tài)調度演化博弈模型可用一個五元組表示:MSDSEGM=(N,Φ,S,P,U)。
1)N=(NA,ND)是博弈的參與者集合。其中:NA為攻擊者;ND為防御者(NFV 擬態(tài)防御架構)。
2)Φ={Φ1,Φ2,…,Φ?}是NFV 擬態(tài)防御架構的狀態(tài)集合,當前在線執(zhí)行體的不同組合即為NFV 擬態(tài)防御架構的不同狀態(tài)。其中:?=為狀態(tài)總數,與異構體數量M和執(zhí)行體數量N有關。當NFV 擬態(tài)防御架構處于不同的狀態(tài)時,攻防雙方采取不同的博弈策略得到的博弈收益也不同,因此,需要對不同狀態(tài)下的NFV 擬態(tài)防御架構進行博弈分析。
3)S=(SA,SD)是博弈參與者的策略集合。其中:SA={SA1,SA2,…,SAm}表示攻擊者可采取的攻擊策略集合,即利用各種漏洞對NFV 擬態(tài)防御架構進行攻擊,m為攻擊策略總數;SD={SD1,SD2,…,SDn}表示NFV 擬態(tài)防御架構可采取的防御策略集合,即動態(tài)調度策略集合。動態(tài)調度策略就是NFV 擬態(tài)防御架構不同狀態(tài)之間的轉換,因此,防御策略總數n=?。
4)P=(p,q)是博弈參與者的策略概率集合。其中:p={p1,p2,…,pm}表示攻擊者采取的各攻擊策略的概率集合,且=1(0 ≤pi≤1,m≥2);q={q1,q2,…,qn}表示NFV 擬態(tài)防御架構采取的各調度策略的概率集合,且=1(0 ≤qj≤1,n≥2)。
5)U=(UA,UD)是博弈參與者的收益函數集合。其中:UA表示攻擊者的收益;UD表示NFV 擬態(tài)防御架構的收益;為攻擊者和防御者分別采取策略SAi和SDj時的收益函數。由此得到博弈收益矩陣,如式(1)所示:
MSDSEGM 模型對應的攻防博弈樹如圖2 所示,由圖可知攻擊者和NFV 擬態(tài)防御架構采取不同攻防策略時得到的攻防收益也會不同。該收益不僅與其自身的策略有關,而且還與對方的策略密切相關。
圖2 網絡攻防博弈樹Fig.2 Network attack and defense game tree
對攻擊者和防御者的博弈收益進行量化是MSDSEGM 模型演化均衡求解和穩(wěn)定性分析的基礎,其量化是否合理直接決定最終博弈結果的準確性。文獻[12]在總結多種攻擊防御策略分類的基礎上,提出了成本/回報量化方法,即收益為回報減去成本?;诖?,在對MSDSEGM 模型進行分析之前,結合NFV 擬態(tài)防御架構的特點給出以下關于攻防雙方收益的定義。
定義2(攻擊成本AC)攻擊者發(fā)動一次攻擊所需耗費的時間開銷、軟硬件資源開銷、風險開銷等。
定義3(攻擊回報AR)攻擊者發(fā)動一次攻擊所得到的好處,用攻擊者給NFV 擬態(tài)防御架構帶來的損失表示。
定義4(防御成本DC)由式(2)可知防御成本由操作成本和負面成本構成:
其中:OC是操作成本,表示NFV擬態(tài)防御架構置換一個異構體所需耗費的時間開銷和計算資源開銷;α為調度策略置換的異構體數量;NC是負面成本,表示執(zhí)行調度策略給系統帶來的一段時間內的性能損失。
定義5(防御損失DL)防御方因遭受攻擊方攻擊而造成的損失。防御損失DL等于攻擊回報AR,計算公式如下:
由式(3)可知,防御損失由漏洞損失VL和失效損失FL構成。其中:VL表示攻擊者利用某個漏洞攻擊單個異構體造成的損失;β為被攻擊的異構體數量,μ為漏洞的攻擊成功概率;FL表示系統中超過一半數量異構體被攻破時的損失,此時NFV 擬態(tài)防御架構失效。
定義6(防御回報DR)每一個異構體為NFV 擬態(tài)防御架構帶來的安全收益。
定義7(底層負載UL)NFV 技術將網絡功能和硬件實體解耦分離,每一個異構體都是一個網絡功能實例,與其他網絡功能實例共享底層物理資源。底層負載影響著網絡功能的運行效率[13],應盡量選取底層負載較小的異構體上線。
根據上述定義,可以得到博弈收益函數的具體表達式:
本節(jié)涉及的相關變量及含義如表1 所示。
表1 主要變量及含義Table 1 Main variables and their significance
本節(jié)使用復制動態(tài)(Replicator Dynamics,RD)方法對MSDSEGM 模型進行演化均衡求解。復制動態(tài)方程就是策略選取概率的動態(tài)變化速率,描述的是博弈過程中攻防策略隨時間的動態(tài)調整過程,是目前應用最為廣泛的一種動力學演化機制[14]。由于在有限理性的條件下博弈參與者掌握的初始知識是有限的,因此采取的策略并非完全理性條件下的最優(yōu)策略,在博弈的過程中通過不斷調整和改進,收益低的策略的選取概率逐漸降低,收益高的策略的選取概率逐漸提高,最終達到策略均衡的結果。
采用復制動態(tài)方程求解MSDSEGM 模型演化均衡的具體過程為:
1)根據攻防策略概率集合p、q和收益矩陣,計算攻擊者不同攻擊策略的期望收益UAi和平均收益UA:
2)計算攻擊者的復制動態(tài)方程:
其中:pi(t)表示隨時間t變化選擇攻擊策略SAi的概率,且滿足由式(8)可知,攻擊策略SAi的動態(tài)方程取值與選擇該策略的概率pi成正比,與其期望收益UAi和平均收益UA的差值成正比。
3)根據攻防策略概率集合p、q和收益矩陣,計算NFV 擬態(tài)防御架構不同調度策略的期望收益UDj和平均收益UD:
4)計算NFV 擬態(tài)防御架構的復制動態(tài)方程:
其中:qj(t)表示隨時間t變化選擇選擇調度策略SDj的概率,且滿足由式(11)可知,調度策略SDj的動態(tài)方程取值與選擇該策略的概率qj成正比,與其期望收益UDj和平均收益UD的差值成正比。
5)聯立攻擊者與NFV 擬態(tài)防御架構的復制動態(tài)方程進行演化均衡求解:
對式(12)進行求解,可以得到MSDSEGM 模型的演化均衡策略,即在該策略下各個博弈行為的選擇概率不變。但是其中的一些演化均衡策略存在不穩(wěn)定性,即一旦發(fā)生博弈雙方的策略偏離該均衡狀態(tài)的情況,復制動態(tài)方程就會使演化結果不再收斂于該策略。因此,需要對演化均衡策略進行穩(wěn)定性分析,得到演化均衡策略中的穩(wěn)定策略,實現最優(yōu)動態(tài)調度策略選取。
演化穩(wěn)定策略(Evolutionarily Stable Strategy,ESS)是演化博弈中的一個核心概念[15],是對納什均衡的改進,具有較強的穩(wěn)定性和預測能力,其在受到少量干擾后仍能恢復。演化穩(wěn)定策略的數學定義為:
定義8如果?y∈S,y≠x,存在一個εy∈(0,1),使式(13)對任意ε∈(0,εy)都成立,則x∈S為演化穩(wěn)定策略。
其中:S為策略集;y表示突變策略;εy是一個與突變策略y相關的常數,稱為入侵界限;εy+(1-ε)x表示演化穩(wěn)定策略與突變策略按比例組合而成的混合策略;U(x,y)為策略x與策略y相遇時策略x的收益函數。由定義8 可知,演化穩(wěn)定策略的基本思想是:在給定環(huán)境下,如果一個策略被群體大部分個體所采用,并且由于其他策略無法產生比使用該策略更高的收益,該策略無法被其他策略所代替,則稱該策略為演化穩(wěn)定策略。
針對2.3 節(jié)采用復制動態(tài)方程求出的演化均衡策略,利用李雅普諾夫間接法[16]對其進行穩(wěn)定性分析。由于式(12)是一個非線性微分方程組并且二階連續(xù)可微,因此可以通過研究其在均衡點O=[pO1,pO2,…,pOm,qO1,qO2,…,qOn]T處的一次近似方程組的穩(wěn)定性來實現演化均衡策略的穩(wěn)定性分析。將式(12)在演化均衡點處進行泰勒展開得到式(14):
其中:ξi和ζj為級數展開式中二階以上各項之和。記:
令g=f-fO,y=x-O,可以得到一次近似方程組的矩陣向量形式g=Jy,其中,J為向量函數的雅可比矩陣,如式(18)所示:
當帶入均衡點O時,雅可比矩陣J的所有特征根均有負實部,則該點對應的策略為演化穩(wěn)定策略。
基于演化博弈的動態(tài)調度策略工作流程如圖3所示。
圖3 基于演化博弈的動態(tài)調度策略工作流程Fig.3 Workflow of dynamic scheduling strategy based on evolutionary game
1)分析器根據裁決結果,利用漏洞掃描、數據采集、查殺病毒木馬、沙箱隔離等防護手段對異常執(zhí)行體進行故障查找和安全問題排查,或利用態(tài)勢感知和大數據分析技術對異常執(zhí)行體的系統信息深入研究,得到當前環(huán)境下的攻防狀態(tài)信息(攻擊的類型和分布、各異構體對不同攻擊的防御情況)。
2)調度器利用博弈論方法構建一個MSDSEGM模型,并根據擬態(tài)防御架構的系統組成(例如異構體的數量、異構體的組成構件、執(zhí)行體的數量)和分析器中的反饋信息,得到攻防雙方的策略集合、策略概率集合和收益函數集合,以及NFV 擬態(tài)防御架構的狀態(tài)集合。
3)調度器根據演化博弈理論,利用復制動態(tài)方程方法對異構體動態(tài)調度策略進行不斷優(yōu)化調整。
基于演化博弈的最優(yōu)動態(tài)調度策略選取算法描述如下:
算法1基于演化博弈的最優(yōu)動態(tài)調度策略選取算法
為驗證MSDSEGM 模型和最優(yōu)調度策略選取算法的可行性和有效性,在MATLAB 仿真平臺上對博弈過程進行仿真與分析,仿真平臺主機配置為Intel?CoreTMi7-7700 CPU 3.60 GHz,8 GB RAM。為便于展示分析,本節(jié)僅對異構體的操作系統層進行異構化。設定異構體數量為4,操作系統分別采用Windows Server 2016、Ubuntu 18.04、CentOS 和Windows Server 2008。由通用漏洞披露(Common Vulnerabilities &Exposures,CVE)[17]和通用漏洞評分系統(Common Vulnerability Scoring System,CVSS)[18]得到異構體操作系統配置參數及相關漏洞信息,如表2 所示,其中CVSS 分值反映了漏洞的嚴重程度,漏洞的得分最大為10,最小為0。CVSS 得分在7~10 的是高級漏洞,得分在4~6.9 之間的是中級漏洞,得分在0~3.9的則是低級漏洞。Exploitability為CVSS 中的可利用度指標,反映了漏洞受攻擊的難易程度。從上述4 個異構體中選擇3 個上線作為執(zhí)行體,則NFV 擬態(tài)防御架構共有=4 種狀態(tài)Φ={Φ1,Φ2,Φ3,Φ4}。其中:狀態(tài)Φ1表示異構體H1、H2和H3為在線執(zhí)行體;狀態(tài)Φ2表示異構體H1、H2和H4為在線執(zhí)行體;狀態(tài)Φ3表示異構體H1、H3和H4為在線執(zhí)行體;狀態(tài)Φ4表示異構體H2、H3和H4為在線執(zhí)行體。防御策略可以等價為系統各狀態(tài)之間的轉換,由此可以得到防御策略集合SD={Φ1,Φ2,Φ3,Φ4},同時可以得到攻擊策略集合SA={vul1,vul2,vul3,vul4,vul5,vul6,vul7}。根據文獻[19]中的漏洞利用成功概率計算方法,結合表2 中的Exploitability 指標信息得到各個漏洞的攻擊成功概率:μ(vul1)=0.39,μ(vul2)=0.39,μ(vul3)=0.39,μ(vul4)=0.34,μ(vul5)=0.39,μ(vul6)=0.34,μ(vul7)=0.39。參考文獻[20]中的成本量化方法,取AC=5,OC=5,NC=5,FL=30,DR=10。DL根據漏洞等級從高到低分別取30、20、10。UL根據異構體底層設備具體的負載量用0~10 之間的數值表示,取UL(H1)=5,UL(H2)=4,UL(H3)=7,UL(H4)=2。
表2 操作系統配置參數及漏洞信息Table 2 Operating system configuration parameters and vulnerability information
圖4和圖5分別為Φ1狀態(tài)下攻擊者和NFV 擬態(tài)防御架構的策略演化趨勢圖。由于異構體H1和H4存在共模漏洞vul1,當H1和H4同為線上執(zhí)行體時,攻擊者就可能會利用漏洞vul1 將H1和H4同時攻破,使NFV擬態(tài)防御架構輸出錯誤的結果,從而獲得更高的收益,因此vul1 的選擇概率不斷增大,最終收斂到1。NFV 擬態(tài)防御架構可以通過分析器中得到的反饋信息,發(fā)現攻擊者的策略演化趨勢。為防止攻擊者同時攻破H1和H4,NFV 擬態(tài)防御架構不斷學習調整,優(yōu)先選擇Φ1和Φ4為下一調度狀態(tài),但由于NFV 擬態(tài)防御架構此時就處于Φ1狀態(tài),繼續(xù)選擇Φ1可以避免調度操作帶來的開銷,因此Φ1的選擇概率逐漸增大。
圖4 Φ1 狀態(tài)下的攻擊策略演化趨勢Fig.4 Evolution trend of attack strategy in Φ1 state
圖5 Φ1 狀態(tài)下的防御策略演化趨勢Fig.5 Evolution trend of defense strategy in Φ1 state
圖6和圖7分別為Φ2狀態(tài)下攻擊者和NFV 擬態(tài)防御架構的策略演化趨勢圖。同理,攻擊者為得到更高的收益,最終會趨向于選擇利用漏洞vul1 進行攻擊。NFV 擬態(tài)防御架構為避免攻擊者同時攻破H1和H4,會優(yōu)先選擇Φ1和Φ4為下一調度狀態(tài),但由于NFV 擬態(tài)防御架構此時處于Φ2狀態(tài),無論選擇Φ1還是Φ4都無法避免調度操作帶來的開銷,但Φ1狀態(tài)表示異構體H1、H2和H3為在線執(zhí)行體,Φ4狀態(tài)表示異構體H2、H3和H4為在線執(zhí)行體,由仿真參數設置可知,H4的底層設備負載量更低,底層負載影響著網絡功能的運行效率,系統會優(yōu)先調度底層負載較小的異構體上線作為執(zhí)行體,因此Φ4的選擇概率不斷增加。
圖6 Φ2 狀態(tài)下的攻擊策略演化趨勢Fig.6 Evolution trend of attack strategy in Φ2 state
圖7 Φ2 狀態(tài)下的防御策略演化趨勢Fig.7 Evolution trend of defense strategy in Φ2 state
圖8 和圖9 分別為Φ3狀態(tài)下攻擊者和NFV 擬態(tài)防御架構的策略演化趨勢圖,由于具體演化趨勢分析與Φ2狀態(tài)一致,因此本文不再贅述。
圖8 Φ3 狀態(tài)下的攻擊策略演化趨勢Fig.8 Evolution trend of attack strategy in Φ3 state
圖9 Φ3 狀態(tài)下的防御策略演化趨勢Fig.9 Evolution trend of defense strategy in Φ3 state
圖10和圖11分別為Φ4狀態(tài)下攻擊者和NFV 擬態(tài)防御架構的策略演化趨勢圖。由圖10可知,在博弈前期,攻擊者利用vul1進行攻擊得到的收益較大,因此vul1漏洞的概率逐漸提高。但是當圖11中NFV擬態(tài)防御架構選擇Φ4狀態(tài)的概率收斂到1時,根據數值計算可知此時攻擊者利用漏洞vul1和漏洞vul7得到的收益相同且最大,vul1和vul7的選擇概率都在增加,但是由于vul1的整體收益較大,因此vul1的選擇概率增長更快。最終攻擊者的策略會收斂到以0.890 7的概率利用vul1漏洞進行攻擊,以0.109 3的概率利用vul4漏洞進行攻擊。而NFV擬態(tài)防御架構為避免攻擊者同時攻破H1和H4以及調度操作帶來的開銷,最終會趨向于保持Φ4狀態(tài)。
圖10 Φ4 狀態(tài)下的攻擊策略演化趨勢Fig.10 Evolution trend of attack strategy in Φ4 state
圖11 Φ4 狀態(tài)下的防御策略演化趨勢Fig.11 Evolution trend of defense strategy in Φ4 state
為展現本文提出的調度策略所帶來的安全收益和防御效能情況,將本文提出的基于演化博弈的調度策略(EG)與隨機調度策略[21](RANDOM)、基于執(zhí)行體異構度的調度策略(HETERO)[6]以及基于Bayesian-Stackelberg 博弈的調度策略[22](BSG)中攻防雙方的累計博弈收益和攻擊者累計攻擊成功的次數進行對比,如圖12 和圖13 所示。
圖12 攻防累計收益對比Fig.12 Comparison of cumulative benefits of offense and defense
圖13 攻擊者累計攻擊成功次數Fig.13 Cumulative number of successful attacks by attacker
圖12 為攻防累計收益對比圖,其中:實線表示攻擊者(Att)的累計收益;虛線表示防御者(Def)的累計收益。如圖所示,EG 和BSG 都是基于博弈論的調度策略,NFV 擬態(tài)防御架構可以根據實際的網絡攻防環(huán)境找到有針對性的調度策略,實現防御收益的大幅提升,同時將攻擊者的收益降低到負值。BSG在基于攻防雙方都是完全理性的前提下,可以在得到更多的防御收益的同時進一步降低攻擊者的收益。EG需要通過不斷學習與調整逐漸找到最佳調度策略,防御收益相比BSG略低,但更符合實際網絡中攻防雙方的認知規(guī)律。HETERO 和RANDOM 雖然增加了系統的動態(tài)性,但是不具有針對性,防御收益相對較低。HETERO是基于執(zhí)行體異構度的調度策略,異構度越大的執(zhí)行體調度上線的概率就越大,一定程度上降低了共模漏洞存在的可能性,因此,HETERO 的防御收益高于RANDOM。
NFV擬態(tài)防御架構將靜態(tài)空間的單一確定目標攻擊難度增強為動態(tài)異構空間、多元目標協同一致攻擊難度,難度等級呈非線性提升,使得攻擊者利用共模漏洞攻擊成功防御系統成為小概率事件。但為便于展示基于演化博弈的調度策略對系統防御效能的影響,本文將攻擊者攻擊成功NFV擬態(tài)防御架構的條件放寬為利用同一漏洞攻破半數以上的執(zhí)行體,但不考慮是否輸出相同的錯誤結果,并對不同調度策略下攻擊者的累計攻擊成功次數進行對比。如圖13 所示,經過1 000次仿真后,HETERO 策略下攻擊者的累計攻擊成功次數為64 次,RANDOM 策略下攻擊者的累計攻擊成功次數為171 次,同時由于HETERO 和RANDOM沒有充分利用裁決機制對異常執(zhí)行體的感知定位功能對調度策略進行有針對性的調整優(yōu)化,因此隨著仿真次數的增加,攻擊者的累計攻擊成功次數會持續(xù)增長。EG 相比于HETERO 和RANDOM 提升了NFV 擬態(tài)防御架構的安全性,在1 000 次仿真過程中,攻擊者僅在博弈初期攻擊成功了2次,之后通過對分析器中的反饋信息不斷學習,優(yōu)化調度策略,使得累計攻擊成功次數維持在該水平不變,有效提高了NFV 擬態(tài)防御架構的防御效能。BSG 基于攻防雙方完全理性的前提,在博弈初期就可以找到最優(yōu)調度策略,避免了攻擊者成功攻擊NFV擬態(tài)防御架構的情況,因此,攻擊者的累計攻擊成功次數始終為零。需要說明的是,圖13的仿真結果是基于本文的參數設置條件下產生的,而在實際的網絡環(huán)境中,異構體之間由于組成結構不同,共模漏洞存在概率較低,攻擊者利用共模漏洞攻擊成功的次數將小于該值。
現有擬態(tài)防御架構中的動態(tài)調度策略大多未利用裁決機制對異常執(zhí)行體的定位感知能力進行優(yōu)化調整,策略缺乏針對性和適應性。本文在NFV 擬態(tài)防御架構中增加一個分析器,用于對歷史裁決信息進行分析研究。在此基礎上,利用分析器得到的反饋信息和演化博弈理論,從攻防雙方的有限理性出發(fā)構建多狀態(tài)動態(tài)調度演化博弈模型,采用復制動態(tài)方程和李雅普諾夫間接法對攻防雙方的策略演化趨勢和穩(wěn)定性進行分析,提出一種基于演化博弈的最優(yōu)動態(tài)調度策略選取算法。仿真結果表明,該算法可以根據擬態(tài)裁決的反饋結果,通過不斷調整優(yōu)化選擇出具有針對性和適應性的調度策略,有效提升NFV 擬態(tài)防御架構的安全收益和防御效能。本文對異構體的操作系統層做異構化處理,利用操作系統的具體漏洞信息對基于演化博弈的調度策略進行有效性分析。考慮到網絡功能異構體由三層異構元素組成,下一步將對異構體的三層異構元素做異構化處理,并通過對漏洞進行分類來降低分析復雜度。