孫 巖 姬偉峰 翁 江 趙蓓英
(空軍工程大學信息與導航學院 西安 710077)
日益嚴重的信息安全事件對網絡空間造成巨大威脅,易攻難守是當前網絡安全面臨的核心問題之一[1].為增強網絡防御能力,確保網絡空間安全[2],美國科學技術委員會提出了移動目標防御(moving target defense, MTD)技術,該技術是改變攻擊和防御不對稱狀態的新方法,目的在于強化信息系統多樣性、動態性和隨機性的特征,增大攻擊成本,提高抗攻擊能力.但濫用MTD技術并不會提高防御能力,反而會增大防御成本、降低系統利用效率[3].如何科學決策移動目標防御行為已成為亟待解決的問題.網絡空間對抗所展現出來的目標獨立性、策略依存性和非合作性與非合作博弈理論的特征基本一致.目前已有學者運用博弈論分析網絡空間攻防行為,開展移動目標防御決策研究.
網絡攻防博弈中,當攻防雙方均采用各自的最優策略時,二者無法通過獨自偏離其最優策略得到更多收益,即認為攻防雙方為理性決策者.在此條件下,運用于網絡攻防策略選取研究中共有經典博弈、Markov博弈和微分博弈3種模型[4].
在經典博弈模型中,根據網絡攻防雙方信息是否透明、攻防行為是否同步、攻防博弈階段是否單一,分別可以采用完全信息模型[5]與不完全信息模型[6]、靜態模型與動態模型[7]、單階段模型與多階段模型[8].當進一步考慮攻防行為信息對攻防行為產生的影響時,可引入信號博弈模型.本文作者在文獻[3]中考慮防御者自身系統存在無法避免的缺陷下,利用信號博弈模型提出移動目標防御最優策略選取算法與最優誘導信號算法,研究了不完全信息下動態多階段的MTD策略選取問題.
在Markov博弈模型中,決策者認為過去的攻防行為會對現在及未來的攻防行為決策產生影響.文獻[9]利用多目標Markov決策過程對攻擊者和防御者之間的相互作用進行建模,設計一種有效的基于移動目標變換的DDoS攻擊防御方案.文獻[10]將網絡漏洞的利用抽象為攻擊面和探測面的變化,提出完全信息Markov博弈最優策略選擇方法,但完全信息的假設不適用于未知漏洞下的網絡對抗.文獻[11]以文獻[10]為基礎提出了一種不完全信息Markov博弈方法IIMG-MTD來生成移動目標防御策略.
隨著網絡技術的不斷發展,網絡對抗過程逐漸具有動態性、連續性和實時性.經典博弈模型與Markov博弈模型均為時間離散博弈模型,以上工作只能分析單階段攻防過程或時間離散的多階段攻防過程,難以滿足移動目標防御策略的時效性要求.因此,部分文獻利用微分博弈理論進行網絡攻防相關研究.文獻[12]對連續時間的網絡攻防過程進行研究分析,針對威脅預警需求,提出網絡攻防定性微分博弈模型,構造攻防界柵以劃分捕獲區及躲避區,引入多維空間歐氏距離評估威脅程度,確定安全狀態所處威脅預警等級并根據預警等級對網絡防御提出針對性建議.但該文獻未考慮攻防過程中的攻防目標收益,在成功預測威脅等級后無法針對攻擊行為選取最優防御策略以最大化防御效益.文獻[13]對連續過程中的網絡攻防行為進行分析研究,借鑒傳染病動力學理論構建了攻防微分博弈模型,提出了鞍點策略的求解方法和最優防御策略選取算法.但該文獻僅分析了網絡空間安全狀態的宏觀變化過程,未對網絡內部的微觀節點行為進行合理建模,導致無法針對網絡內部某些關鍵節點量身定制防御策略.文獻[14]探討了如何合理地將可用的修復資源分配給可能不安全的主機,以減輕網絡的潛在損失,基于一種新的期望狀態演化方程,構建高級可持續威脅(advanced persistent threat, APT)響應微分博弈模型,提出了一種尋找APT修復博弈潛在納什均衡算法.以上文獻均基于微分博弈做出網絡防御決策響應,但未能與MTD緊密結合.
考慮到網絡內部微觀個體行為與宏觀傳播現象之間的相互依賴會對網絡攻防決策產生影響,本文利用節點級傳染病理論方法構建基于微分博弈的MTD決策模型,分析網絡攻擊與MTD實時變化條件下的網絡系統個體的安全狀態演化過程,提出攻防策略決策函數與目標收益函數.通過設計該微分博弈模型的開環納什均衡算法,得到最優MTD防御策略實時結果.
微分博弈是時間連續的動態博弈,在n個參與者的微分博弈中,每位參與者i(i∈Γ={1,2,…,n})的目標函數可以表示為

(1)
其中,x(τ)∈X?m為博弈的狀態變量或狀態(X為狀態空間),這種變量在非微分博弈中是不存在的.ui(τ)∈Ui為參與者i的策略(Ui為策略空間),但與非微分博弈中的策略不同,因為它代表一條隨時間發展的策略路徑.
τ∈[t0,tf]代表博弈的每一個時間點或者時刻,t0和tf分別為博弈的開始時刻和結束時刻,gi[τ,x(τ),u1(τ),…,un(τ)]≥0和qi[tf,x(tf)]≥0分別表示參與者i的瞬時支付與終點支付.
在式(1)中,狀態變量x(τ)的進展變化取決于一個確定性動態系統,即

(2)



(3)
而在時間區間[t0,tf]中,有

(4)


證畢.
現實中,網絡內部主機狀態是時變的,考慮帶有數據庫服務器和N個主機的網絡,如圖1所示.其中雙箭頭實線表示主機之間可以進行正常交互,雙箭頭虛線表示主機與數據庫服務器之間的正常數據流,單箭頭虛線表示已連接但未畫出的其他主機.

Fig. 1 Network topology圖1 網絡拓撲結構
定義1.網絡基礎狀態模型(basic state model)MBS.可以表示為
MBS={τ,b(τ),R(τ),Xi(τ),Si(τ),Ii(τ)},
其中,τ代表攻防微分博弈的時刻,τ∈[t0,tf].
b(τ)=(b1(τ),b2(τ),…bN(τ))表示主機i在時刻τ的工作狀態,bi(τ)=0或1表示主機i在時刻τ處于關機或開機狀態.
R(τ)=(rij)N×N為網絡連通狀態矩陣.rij=0或1表示主機i與j不可相互通信或可以相互通信,規定rii=0.令cij(τ)=rijbi(τ)bj(τ),根據定義1可知,當cij=1時,主機i與j可在時刻τ互相傳遞信息,此時攻擊者的惡意攻擊行為也可以進行傳播,本文稱之為橫向攻擊行為.
根據主機是否受到攻擊來確定主機的狀態是否安全,令Xi(τ)=0或1表示主機i在時刻τ處于安全狀態或不安全狀態.
利用概率表示主機i的安全狀態程度,令Si(τ)=Pr{Xi(τ)=0}表示主機i在時刻τ處于安全狀態的概率,Ii(τ)=Pr{Xi(τ)=0}表示主機i處于不安全狀態的概率,且Si(τ)+Ii(τ)=1.
網絡攻防行為對網絡空間的混合作用,造成網絡節點的安全狀態隨著時間變化,本節對網絡空間主要節點安全狀態的演化過程進行建模.
定義2.網絡節點狀態演化模型(state evolution model)MSE.可以表示為
MSE={Θ,P(τ),C,B,MBS}.
Θ={A,D}表示攻防動作行為空間.其中,A={ax|x=1,2,…,n},D={dy|y=1,2,…,n}分別表示攻擊行為動作集與防御行為動作集.



根據定義2可知,攻擊者攻擊主機i時,該主機將會受到來自攻擊者的直接攻擊和攻擊者通過其他主機的發起的橫向攻擊.
當攻擊者對主機i發起橫向攻擊時,會存在影響其成本與收益的傳染系數,該傳染系數與橫向攻擊的傳染次數有關。令{ξ1(τ),ξ2(τ),…,ξn(τ)}表示傳染系數集合,其中ξm表示當橫向攻擊進行m次傳染時的傳染系數.當橫向攻擊進行1次傳染時,即攻擊者以主機j→i順序進行橫向攻擊,其傳染系數為
(5)
當橫向攻擊進行2次傳染時,即攻擊者以主機k→j→i順序進行橫向攻擊,其傳染系數為
(6)
當橫向攻擊進行3次傳染時,即攻擊者以主機l→k→j→i順序進行橫向攻擊,其傳染系數為

(7)
按式(5)~(7)規律可類推橫向攻擊傳染m次時的傳染系數ξm.
式(5)~(7)中,γ為傳染衰減因子,表示相對于直接攻擊,橫向攻擊的收益與代價會有一定程度的衰弱.
根據式(5)~(7)可知,該主機i狀態滿足以下微分演化方程:

(8)
網絡節點安全狀態演化過程示意如圖2所示:

Fig. 2 Network node safe state evolution model圖2 網絡節點安全狀態演化模型
定義3.移動目標防御微分博弈模型(moving target defense differential game model) MTDDG.可以表示為
MTDDG={Ω,G,U,MSE}.
Ω={ΩA,ΩD}為博弈人空間.ΩA為攻擊者,ΩD為防御者.

其中,在攻防持續時間內攻擊者發動攻擊的成本函數為

(9)
防御者啟動MTD的成本函數為
(10)
在攻防持續時間內,攻擊者發動攻擊的收益函數為

(11)
防御者啟動MTD的收益函數為
(12)
U={UA,UD}表示攻擊者與防御者的收益目標函數.以主機i為例,攻擊者與防御者的目標收益函數分別為式(13)(14):

(13)

(14)


(15)
滿足約束條件(式(15))的情況下,對于策略向量集合P*(τ)構成的微分博弈式(8)(13)(14),以下不等式成立:

(16)
為易于分析處理與應用,本文選擇開環納什均衡方法求解攻防最優策略.
定理2.對于微分博弈式(8)(13)(14),最優攻防策略集合P*(τ)構成開環納什均衡.滿足約束條件(式(12))的情況下,若存在共態函數{λA(τ),λD(τ)}:[t0,tf]→m,式(17)~(19)成立.

(17)

(18)

(19)
證明.受制于網絡節點演化過程(式(15)),考慮式(17)中的第1個公式,即最大化攻擊者目標收益
證畢.
基于定理2,為尋找該攻防系統的開環納什均衡解,根據微分博弈理論,構建Hamiltonian函數

(20)

1) 滿足式(19)的條件下,式(21)成立;
2) 當1≤i≤N,t0≤τ≤tf時,式(22)成立.

(21)

(22)

根據Pontryagin Maximum原則,當1≤i≤N,t0≤τ≤tf時,存在{λA(τ),λD(τ)}.式(21)可由式(18)(20)直接聯立計算得到.
滿足約束條件(式(15))的情況下,當t0≤τ≤tf時,有:

(23)
證畢.
針對2.1節中主機狀態bi(τ),本文將攻防持續時間分為多個較短的時間段,然后為每個短時間段以一定概率分配0或1給每一個主機.

算法1.MTDDG開環納什均衡求解算法.
輸入:{MBS,MSE,MTDDG},設置收斂誤差ε=10-4,迭代次數上限K=103;
① 初始化MBS,MSE,MTDDG;
② for 1≤k≤ndo

④ end for
⑤ for 1≤i≤Ndo
⑥ for 0≤k≤n-1 do
⑦ 以概率0.6令μ=1;以概率0.4令μ=0;
⑧bi(τ)μ;
⑨ end for
⑩bi(tf)=bi(tn-1);

λA(tf)=λD(tf)=0后向計算λA(τ),
λD(τ)(t0≤τ≤tf);

PA(τ) 和PD(τ),(t0≤τ≤tf);
或者k≥K;
不同模型之間的比較結果如表1所示.模型的時效性指模型在應用時得出結果有效持續時間.例如,單階過程得出的結果只適用于單階段,微分博弈模型考慮到時間因素可以實現任意時刻的決策.模型通用性指文獻中的策略與動作合集是否可以擴展.

Table 1 Comparative Analysis of Models表1 模型對比分析
采用工具SSFNet (scalable simulation frame-work)[17]開展仿真實驗.為提高仿真實驗真實性,參考文獻[18],從Route Views Project中得出自治系統(autonomous system)連接數據集以設計實驗網絡拓撲結構,采用網絡數據集NetTFDate20200126 113000構建網絡場景.實驗網絡拓撲結構如圖3所示,空心叉號表示主機處于關機狀態,實心叉號表示該主機被攻擊者劫持,雙箭頭虛線表示攻擊者的命令與控制數據流和從數據庫流出的被竊取數據或正常數據流,單箭頭實線表示從攻擊者和被劫持主機發出的攻擊行為,雙箭頭實線表示主機之間的交互.網絡節點總數共802個,其中數據庫服務器節點數量1個,用戶終端節點800個,攻擊節點1個.設傳染衰減因子γ=0.05,攻防持續時間為5 min,即τ∈[t0,tf]=[0,5].

Fig. 3 Experimental network topology圖3 實驗網絡拓撲結構
實驗中根據網絡安全檢測設備掃描并分析相應攻擊信息,判斷攻擊者類型及其攻擊能力,并結合國家信息安全漏洞庫(CNNVD)數據[19]和文獻[20]漏洞分析方法的基礎上,參照美國MIT攻防行為數據庫[21]以及文獻[3,14,22-23]構建網絡安全攻防行為集,并綜合各方面安全指標計算其平均行為效用,如表2~3所示:

Table 2 Description of Attack Actions表2 攻擊動作描述

Table 3 Description of MTD and Static Defense Actions表3 MTD與靜態防御動作描述
對于攻擊動作行為,本文將其分為2種類型,即A={AH,AL};對于防御動作行為,令當前數據庫服務器部署的數據庫服務軟件棧為“Windows7 SP1+IIS 6.0”, 數據庫服務器可采取的防御措施分為3種類型,即D={DH,DM,DL}.其中,DH是指通過建立一系列多態化虛擬服務器,每個數據庫服務器配置唯一的軟件棧,采取固定周期跳變的方式不斷改變數據庫服務器程序與操作系統的實現方式.DM指采取固定跳變周期方式更改數據庫服務器IP地址、MAC地址和端口地址.為對比分析MTD策略與靜態防御策略的差異,設置DL為采取常規靜態防御方式進行網絡防御.本文以網絡中重要設備數據庫服務器為例,考慮攻擊者對數據庫服務器的直接攻擊以及通過對網絡內部主機攻擊進而橫向攻擊數據庫服務器.作為網絡系統的重要設備,假設數據庫服務器始終保持開機工作狀態.
本實驗MTDDG最優策略算法利用Matlab 2018工具實現.考慮到隨著橫向攻擊的傳染次數的增加,傳染系數中傳染衰減因子成指數倍增長,當進行4次傳染時,γ4=0.000 006 25.因在實驗中設置收斂誤差為ε=10-4,所以4次及以上次數傳染對網絡攻防的收益/成本影響不大,所以只考慮橫向攻擊的傳染次數為1次、2次與3次的情況.以圖3為例,橫向攻擊傳染次數為1次、2次與3次時分別對應圖中的攻擊傳染路徑為1→4,1→2→5,1→2→3→6,該對應并不唯一.
由實驗結果得到攻擊防御行為選取策略,如圖4、圖5所示.攻防雙方采取概率混合策略,但為方便分析,認為攻防雙方在不同時刻采取高概率攻防行為.

Fig. 4 Optimal policy control trajectory of attack 圖4 攻擊策略和的最優控制軌跡

Fig. 5 Optimal policy control trajectory of defense圖5 防御策略的最優控制軌跡
對于攻擊者,當τ∈[0,0.25)時,選擇攻擊行為AH;當τ∈[0.25,5]時,選擇攻擊行為AL.對于防御者,當τ∈[0,0.78)時,選擇防御行為DH;當τ∈[0.78,2.45)時,選擇防御行為DL;當τ∈[2.45,5]時,選擇防御行為DM.
由于實驗中攻擊行為分為高低等級2種類型,其策略概率之和為1,故僅將高等級攻擊策略概率與3種不同等級防御策略結合以分析實驗結果.


Fig. 6 Optimal policy control trajectory of strategy圖6 策略和最優控制軌跡

Fig. 7 Optimal policy control trajectory of strategy圖7 策略和最優控制軌跡



Fig. 8 Optimal policy control trajectory of strategy圖8 策略和最優控制軌跡
3) 如圖9所示,當τ∈[0,0.25)時,攻擊者發起突襲式高等級攻擊行為AH進攻數據庫服務器,導致數據庫服務器的安全狀態快速下降,此時防御者及時做出反應,采取高等級防御行為DH,所以數據庫服務器安全狀態曲線雖在下降,但下降速率逐漸降低,直到τ=0.2時成功阻止攻擊者對數據庫服務器的進一步損害,并隨后逐步提高數據庫服務器的安全狀態.

Fig. 9 The evolution trajectory of database serversecurity state S(τ)*圖9 數據庫服務器安全狀態S(τ)*演化過程軌跡
當τ∈[0.2,0.25)時,攻擊者發現無法進一步竊取數據庫服務器的信息后,考慮自身攻擊付出巨大代價,開始選取攻擊行為AL.當τ∈[0.25,0.78)時,防御者為快速提高數據庫服務器的安全狀態,在攻擊者選擇AL的情況下,依然選擇DH,以防止出現攻擊者再次選擇高等級攻擊而無法防御的情況,此時主機安全狀態快速上升.當τ=0.78時,防御者選擇DL,數據庫服務器安全狀態的上升速率逐漸變慢,在與AL相互作用下,服務器安全狀態維持在0.5水平.

與文獻[3]的時間離散模型攻擊策略控制過程進行對比,結果如圖10所示.設文獻[3]中每個階段持續時間為1 min.

Fig. 10 Optimal strategy control trajectory of high-level attack圖10 高等級攻擊最優策略控制軌跡
當攻擊者采取文獻[3]的時間離散算法發動網絡攻擊時,僅在各階段開始時選取新策略,攻擊策略變化不靈活,導致攻擊者的目標收益效用降低.由定理1可知,理性攻防博弈的關鍵在于防御者會針對最優攻擊策略采取最優防御策略.攻擊效用降低將使得防御者“輕視”攻擊者,進而采取非最優策略.
當攻擊者采取本文微分博弈算法進行網絡攻擊時,若防御者利用文獻[3]時間離散模型選取防御策略,其階段式變化的防御策略將永遠滯后于攻擊者的實時攻擊,進而導致網絡空間受到威脅.
綜上分析,給出5個防御建議:1)防御者應加強平時防御水平,避免攻擊者的突襲式攻擊造成網絡無法挽回的損失;2)對于網絡系統重要節點,應該強化相關檢測程序,避免與被劫持主機保持通信;3)應對低等級攻擊時,防御者不應放棄靜態防御策略,在保證網絡安全的前提下盡可能降低網絡開銷;4)相較于靜態防御而言,防御者平時應多考慮使用MTD策略,這樣的收益代價比更大,防御范圍更廣,防御效果更好;5)使用與時間相關的防御策略選取方法,例如本文方法,以提高防御行為決策的靈活性,使受保護網絡在攻防對抗中能夠長時間處于安全狀態.
本文對時間連續的網絡攻防過程以及MTD最優策略進行綜合研究,構建移動目標防御微分博弈模型MTDDG.在此基礎上,考慮到網絡內部微觀節點行為與宏觀傳播現象之間的相互依賴會對網絡攻防決策產生影響,按照實際情況設定網絡內部主機的開關機和通信狀態,對網絡內部重要節點建立安全狀態演化方程,提出MTDDG的求解方法和最優MTD策略選取算法.仿真實驗驗證本文提出模型和方法的有效性.基于實驗成果對網絡系統重要節點防御提出關鍵建議,為連續、實時網絡攻防對抗中MTD策略做出指導.
未來工作主要是改進網絡攻防微分博弈的求解算法,利用反饋納什均衡求解微分博弈方程,進一步從時間相關性方面提升MTD防御效果.