王剛, 王志屹, 張恩寧, 馬潤年, 陳彤睿,2
(1.空軍工程大學 信息與導航學院, 陜西 西安 710077; 2.94195部隊, 甘肅 定西 730500)
平臺動態(tài)防御是通過轉(zhuǎn)移網(wǎng)絡平臺的攻擊面,提升網(wǎng)絡安全性能的一種動態(tài)目標防御方法。與傳統(tǒng)防御方法相比,平臺動態(tài)防御在解決攻防信息不對稱、安全漏洞多樣隱蔽等問題方面具有明顯優(yōu)勢,可為目標系統(tǒng)提供規(guī)避攻擊的機動條件,變被動防護為主動防御。多平臺遷移是平臺動態(tài)防御技術重要的實施手段之一[1],通過對不同主機部署不同的操作系統(tǒng)平臺,并由調(diào)度中心對上線平臺進行周期性地遷移,從而使系統(tǒng)的漏洞信息呈現(xiàn)出動態(tài)變化的趨勢,平臺的遷移規(guī)則很大程度上決定了防御的效果,高效的遷移策略是部署多平臺遷移的重點和難點。在動態(tài)防御過程中,平臺遷移應具有隨機性,節(jié)點在遭受攻擊后可按照某種規(guī)則選擇健康平臺上線,并將染毒平臺下線清洗。對整個網(wǎng)絡而言,節(jié)點在遭受多輪次攻擊后可能被病毒感染,也會以一定概率將病毒擴散感染到相鄰節(jié)點,存在“感染—演化—感染相鄰節(jié)點—相鄰節(jié)點再演化…”的趨勢,攻防過程呈現(xiàn)出多階段博弈特征,節(jié)點平臺遷移狀態(tài)和病毒傳播趨勢也具有隨機性,屬于典型有限理性行為,攻防雙方結(jié)合己方認知調(diào)整策略以適應對手的變化,最終達到動態(tài)穩(wěn)定。
對平臺動態(tài)防御而言,需要把握網(wǎng)絡攻防雙方的有限理性特征和多階段博弈特點,通過建模分析多階段演化博弈機理,并設計針對性遷移策略。
動態(tài)目標防御是網(wǎng)絡安全領域的新事物,多階段平臺動態(tài)防御研究較少,可借鑒成果主要在博弈建模、防御策略制定和效能分析等方面。在防御策略方面:文獻[2]針對多目標網(wǎng)絡攻防,提出了“游擊戰(zhàn)”策略;文獻[3]以擬態(tài)網(wǎng)絡技術為基礎,設計了針對L2/L3地址的協(xié)同動態(tài)化偽裝策略;文獻[4]針對拒絕服務攻擊,提出了端口跳變策略,通過添加冗余的端口迷惑攻擊者,減少了防御者的損失。在病毒傳播和免疫及其效能分析方面:文獻[5]針對潛伏型新型病毒特點,提出SEIQRS病毒擴散模型,分析了“去二存一”型病毒的擴散機理和擴散免疫性能;文獻[6]設計了非異構(gòu)邊隨機中斷、非異構(gòu)邊隨機重連和單操作系統(tǒng)節(jié)點隨機跳變3種網(wǎng)絡安全優(yōu)化策略;文獻[7]給出了潛伏機制下病毒傳播和免疫模型以及網(wǎng)絡的穩(wěn)定性分析,提出利用基本再生數(shù)優(yōu)化網(wǎng)絡狀態(tài)的方法。這些研究主要是從單純防御視角思考網(wǎng)絡安全防御問題,開展策略設計和效能分析,對攻防過程中雙方的交互考慮不足。
客觀上,網(wǎng)絡攻防對抗中呈現(xiàn)出的目標對立性、關系非合作性和策略依存性與博弈論相契合[8],博弈理論和方法是網(wǎng)絡攻防科學研究的有效手段。文獻[9-11]將貝葉斯法則引入到攻防博弈模型中,利用貝葉斯法則和博弈理論提升防御策略的預測性;文獻[12] 利用Stackelberg博弈理論,將用戶作為博弈的第三方,同時考慮了防御收益和服務效果,對策略的選擇進行了綜合評估;文獻[13]基于網(wǎng)絡殺傷鏈,建立了基于FlipIt博弈的MTD攻防時機決策模型。這些基于博弈理論的研究主要針對單階段、單節(jié)點的防御,是多階段平臺動態(tài)防御的基礎。但是,網(wǎng)絡攻防過程實質(zhì)上是攻防雙方的多階段博弈,防御的決策和具體行動應基于對整體網(wǎng)絡攻防復雜行為的持續(xù)動態(tài)分析,由于多數(shù)情況下博弈參與者只能獲取有限的信息,做出的決策往往是非完全理性的?;谶@種認知,文獻[14]提出了網(wǎng)絡防御的Markov演化博弈模型和防御策略,利用Markov過程的無后效性分析了網(wǎng)絡攻防的多階段、多狀態(tài)性能;但是所采用的技術主體上還是限制端口數(shù)據(jù)包、創(chuàng)建地址黑名單和重啟數(shù)據(jù)服務器等靜態(tài)防御技術,對比多階段平臺動態(tài)防御,在基礎技術實現(xiàn)環(huán)節(jié)上存在本質(zhì)差異。
基于以上分析可知,平臺動態(tài)防御所面臨的攻防環(huán)境和過程相對復雜,攻防雙方互為博弈,需要借助科學理論和方法,系統(tǒng)考慮攻防博弈的階段性、收益指標量化和節(jié)點連接關系等關鍵因素:1)網(wǎng)絡中各節(jié)點之間關系復雜,單階段博弈模型往往難以完整地描述,可利用Markov過程的無后效性簡化節(jié)點之間關系,開展多階段演化博弈研究;2)平臺動態(tài)防御系統(tǒng)對自身攻擊面與資源價值的評估體系是演化博弈的基礎,應建立起與多階段動態(tài)博弈相一致的指標體系,在此基礎上分析各狀態(tài)的演化穩(wěn)定策略;3)網(wǎng)絡拓撲結(jié)構(gòu)是網(wǎng)絡攻擊路徑選擇的基礎,防御策略制定需要考慮網(wǎng)絡節(jié)點的連接關系,利用網(wǎng)絡攻擊圖,選擇出適合網(wǎng)絡整體的防御路徑。
網(wǎng)絡是由多個節(jié)點按照一定的拓撲結(jié)構(gòu)和邏輯關系連接而成的,攻擊者通常根據(jù)網(wǎng)絡結(jié)構(gòu)特點制定攻擊圖,開展針對性的節(jié)點感染和網(wǎng)絡破壞。在平臺動態(tài)防御中,平臺指承載業(yè)務功能的軟件和硬件,平臺動態(tài)防御系統(tǒng)通常由可信控制器、候選平臺池和調(diào)度程序等組成,節(jié)點應用動態(tài)防御技術和主動遷移預防網(wǎng)絡攻擊,一次平臺遷移的過程如圖1所示。其中,防御方利用虛擬化技術在每個節(jié)點上虛擬出多個服務器平臺,經(jīng)由多態(tài)化處理,構(gòu)成在線虛擬服務器平臺池。在可信控制器的集中控制下,受攻擊節(jié)點從虛擬服務器平臺池中選擇遷移平臺,正在運行的平臺會在處理完現(xiàn)有的服務請求后進入離線狀態(tài),所選擇的平臺進入上線狀態(tài),從而實現(xiàn)平臺的遷移。進入離線狀態(tài)的平臺,會把內(nèi)存和文件系統(tǒng)恢復到初始狀態(tài),完成一次清洗。至此,第1個被感染的節(jié)點完成了一個防御周期。由于網(wǎng)絡環(huán)境中始終存在病毒,其他相鄰節(jié)點存在被感染的威脅,一旦相鄰節(jié)點被感染,則進入下一階段的演化。
圖1 平臺遷移過程Fig.1 Platform migration process
在現(xiàn)實網(wǎng)絡環(huán)境中,攻擊和防御行動不是簡單的單回合對決,通常是針對網(wǎng)絡整體和多類型節(jié)點的多階段攻防。對于具體的節(jié)點而言,遷移的備選平臺與當前在線平臺的結(jié)構(gòu)相似性直接影響著遷移的成本和遷移完成后對攻擊者新一輪攻擊的免疫能力,多階段平臺動態(tài)防御需要從安全和成本兩個方面進行考慮,針對病毒的分布概率和感染性,盡可能減少無效遷移,實現(xiàn)平臺動態(tài)防御系統(tǒng)在外部病毒環(huán)境下對節(jié)點狀態(tài)遷移的提前預測和最優(yōu)控制。
網(wǎng)絡攻防對抗具有周期性和階段性特征。被攻擊節(jié)點對于攻擊者信息的掌握通常相對有限,很難直接做出最合理的遷移決策,網(wǎng)絡節(jié)點是由多個服務器組成的,平臺的遷移以服務器為單位實施,服務器在攻防周期中根據(jù)收益情況自我調(diào)整遷移策略,最終整個節(jié)點趨向于選擇某個穩(wěn)定策略,被攻擊節(jié)點趨向穩(wěn)定的過程是單階段演化博弈過程。在被攻擊節(jié)點達到動態(tài)穩(wěn)定后,病毒以一定的概率向周邊節(jié)點擴散,在新感染的節(jié)點上繼續(xù)進行單階段演化博弈,最終也達到了穩(wěn)定狀態(tài),周邊節(jié)點從被感染到動態(tài)穩(wěn)定的過程是多階段演化博弈過程。參照文獻[9],多階段博弈原理如圖2所示。圖2中:S0為節(jié)點初始安全狀態(tài)集合,S0={S0,1,…,S0,k,…,S0,T};S為節(jié)點被攻擊后達到演化穩(wěn)定狀態(tài)的集合,S={S1,…,Sk,…,ST};η為狀態(tài)轉(zhuǎn)移概率。
圖2 多階段演化博弈Fig.2 Multi-stage evolutionary game
整體上看,多階段平臺動態(tài)防御是“演化—穩(wěn)定—演化”的動態(tài)博弈過程,并非限定于某一固定狀態(tài)。
綜上所述,在多階段平臺動態(tài)防御的Markov演化博弈中:1)單階段的演化穩(wěn)定策略是多階段的基礎,多階段平臺動態(tài)防御是由多個單階段的防御構(gòu)成的,直接對多階段演化穩(wěn)定策略進行分析比較困難;2)轉(zhuǎn)移概率η決定了多階段演化的趨勢,轉(zhuǎn)移概率的值與攻防雙方的狀態(tài)和網(wǎng)絡結(jié)構(gòu)有著密切關系,確定起來相對復雜,η的合理設置,是演化博弈的關鍵。因此,對多階段平臺動態(tài)防御的分析可以從單階段防御和確定的轉(zhuǎn)移概率入手。
定義1資源重要程度Cr,指在一次完整的攻防過程中,攻擊方目標資源的重要程度,由節(jié)點的度決定。
定義2攻擊面轉(zhuǎn)移成本Cs,指平臺遷移時需要付出的系統(tǒng)開銷。
攻擊面轉(zhuǎn)移成本與平臺差異程度有關,平臺越相似,成本越低。
定義3負面影響成本Cn,指平臺遷移時,帶來的服務質(zhì)量下降。
定義4攻擊成本Ca,攻擊者進行攻擊時所付出的代價。
攻擊成本與漏洞的威脅級別有關,漏洞的級別越高,攻擊成本就越低。
定義5感染概率λ,指平臺被病毒感染的概率。若操作系統(tǒng)和病毒類型不同,λ=0;若相同,則λ為漏洞利用成功概率。
綜上,防御者的收益Ud可表示為
Ud=(1-λ)Cr-Cs-Cn.
(1)
攻擊者收益源于感染平臺后得到的收益,與感染概率有關,則攻擊收益Ua可表示為
Ua=λCr-Ca.
(2)
單階段演化博弈模型主要針對單一網(wǎng)絡節(jié)點的平臺動態(tài)遷移,對網(wǎng)絡的整體分析建立在節(jié)點分析基礎上。
定義6單階段Markov平臺動態(tài)防御演化博弈模型(SPDDE),表示為4元組SPDDE=(N,B,P,U),其中:
1)N=(Nd,Na)為演化博弈的參與者空間。其中,Nd為防御方,Na為攻擊方。
2)B=(Sd,Sa)為雙方策略空間,其中:攻擊方策略表示為Sa={Sa, i|1≤i≤m},m為攻擊者策略總數(shù);防御方策略表示為Sd={Sd, j|1≤j≤n},n為防御方遷移策略總數(shù)。
4)U={Ud,Ua}是博弈收益集合。
(3)
(4)
定義7多階段Markov平臺動態(tài)防御演化博弈模型(MMPDDE),可表示為9元組MMPDDE=(N,T,B′,P,ξ,S0,S,η,U),其中:
1)N=(Nd,Na)是參與者空間。
2)T是多階段博弈的階段總數(shù),k是博弈當前所處階段,k∈{1,2,…,T},T∈N+.
3)B′=(S′d,S′a)是雙方策略空間,其中:防御方策略為S′d={Sd,k,j|1≤k≤T,1≤j≤n},Sd,k,j表示第k階段的可選策略;攻擊方策略S′a={Sa,k,i|1≤k≤T,1≤i≤m},Sa,k,i表示第k階段的可選策略。
5)ξ為折現(xiàn)因子,用于表示當前收益與初始收益的折現(xiàn)情況,滿足0≤ξ≤1.
6)S0={S0,1,…,S0,k,…,S0,T}是節(jié)點初始安全狀態(tài)集合。
7)S={S1,…,Sk,…,ST}是節(jié)點被攻擊后達到演化穩(wěn)定狀態(tài)的集合。
8)η表示狀態(tài)轉(zhuǎn)移概率,ηij=η(Sj|Si)表示系統(tǒng)由狀態(tài)Si轉(zhuǎn)移至狀態(tài)Sj的概率。本文設狀態(tài)轉(zhuǎn)移概率為固定值。
9)U={Ud,k,Ua,k}是博弈收益集合,Ud,k和Ua,k分別表示防御者和攻擊者在第k階段的收益。
用目標函數(shù)F表示當前收益與折現(xiàn)收益之和,并作為選擇策略的標準[15]??紤]系統(tǒng)在不同階段時,雙方收益也不同,用折現(xiàn)因子ξ體現(xiàn)未來收益值和當前收益值的區(qū)別。分別用Fd,k(S0,k,Sk)和Fa,k(S0,k,Sk)表示防御方和攻擊方在k階段的目標函數(shù),具體表述為
(5)
(6)
(7)
定理1多階段Markov平臺動態(tài)防御演化博弈存在混合策略下的納什均衡。
證明在多階段Markov平臺動態(tài)防御演化博弈中,存在多個單階段演化博弈過程,這些過程相互獨立并且相似,待選策略的空間也是有限的,因此存在混合策略下的納什均衡[14]。同時,根據(jù)定義的轉(zhuǎn)移概率和收益計算方法可知,存在與MMPDDE對應的有限隨機博弈,且收益函數(shù)為凸函數(shù)。根據(jù)有限隨機博弈的均衡策略存在性定理[17-18],該有限隨機博弈存在混合策略下的納什均衡,通過該納什均衡可得MMPDDE對應的混合策略納什均衡。綜上,定理得證。
3.2.1 單階段演化博弈均衡求解
由(1)式計算防御方的期望收益和平均收益:
(8)
由(2)式得到防御方的復制動態(tài)方程:
(9)
對于攻擊方,同理可得
(10)
(11)
3.2.2 多階段演化博弈均衡求解
采用動態(tài)規(guī)劃法求解多階段均衡策略:
(12)
根據(jù)博弈均衡求解,設計如下最優(yōu)遷移策略選取算法。
算法:MMPDDE模型的最優(yōu)遷移策略選取算法
輸入:MMPDDE模型
輸出:最優(yōu)遷移策略
BEGIN
1.Initialize;
2.構(gòu)建攻防策略空間與狀態(tài)集合;
3.初始化狀態(tài)轉(zhuǎn)移概率ηi,j=η(Sj|Si);
4.For(k=1;k≤T;k++)
{
6.計算在攻防策略對(Sd,k,j,Sa,k,i)下的雙方收益ak,i,j、bk,i,j;
8.求解各個階段的演化博弈均衡策略(Sd,k,Sa,k)
};
10.根據(jù)3.2節(jié)的動態(tài)規(guī)劃法,以maxFd,k(S0,k,Sk)和maxFa,k(S0,k,Sk)為目標函數(shù),求解方程組(12)式,得到均衡解;
END.
算法的時間復雜度為O(k(m+n)2)。將所提模型與已有模型對比,結(jié)果如表1所示。
表1 本文模型與已有模型對比分析Tab.1 Comparison of the proposed model and themodels in Refs.[13,14,15]
已有模型主要利用靜態(tài)防御,如打補丁、關閉服務器、刪除可疑賬戶等手段,基于博弈參與者雙方的非完全理性特征,利用演化博弈開展單階段或多階段的研究。鑒于靜態(tài)防御理念和技術的局限性[1],動態(tài)目標防御等新型主動防御成為解決高水平持續(xù)性威脅等網(wǎng)絡安全問題的重要手段,通過多階段演化博弈確定平臺遷移規(guī)則,對平臺動態(tài)防御的實際部署和網(wǎng)絡安全防御系統(tǒng)運行維護具有重要價值。
按照遷移平臺的多樣性、動態(tài)性特點,通過虛擬機在網(wǎng)絡節(jié)點上構(gòu)建冗余平臺,部署平臺動態(tài)防御環(huán)境。利用Nessus工具掃描實驗網(wǎng)絡環(huán)境,根據(jù)國家信息安全漏洞庫[19]和美國國家漏洞庫[20]有關數(shù)據(jù),參考文獻[21]中漏洞利用成功概率計算方法,獲得平臺漏洞信息(見表2),平臺漏洞利用成功率即為病毒感染概率。根據(jù)系統(tǒng)漏洞和網(wǎng)絡拓撲結(jié)構(gòu),得到如圖3的攻擊圖。設計狀態(tài)集合為S={S1(攻擊入侵檢測系統(tǒng)),S2(攻擊Web服務器),S3(攻擊堡壘主機),S4(控制數(shù)據(jù)庫賬戶或竊取信息),S5(在文件服務器上植入后門),S6(獲取內(nèi)網(wǎng)用戶敏感信息)}。
表2 漏洞信息Tab.2 Vulnerability information
圖3 網(wǎng)絡攻擊圖Fig.3 Network attack graph
設初始上線平臺類型為平臺1、平臺2和平臺3:對應各階段可用防御策略集S′d={Sd,k,1(平臺1→平臺2),Sd,k,2(平臺1→平臺3),Sd,k,3(不遷移)};對應各階段可用攻擊策略集S′a={Sa,k,1(利用類Windows系統(tǒng)漏洞),Sa,k,2(利用類Linux系統(tǒng)漏洞),Sa,k,3(不攻擊)}。
參照歷史數(shù)據(jù)和專家經(jīng)驗確定轉(zhuǎn)移概率的方法[14,22],設狀態(tài)轉(zhuǎn)移概率為固定值,轉(zhuǎn)移概率如表3所示。為了便于比較,設節(jié)點初始狀態(tài)均為類Windows操作系統(tǒng)平臺。
表3 跳變概率Tab.3 Hopping probability
表4 雙方收益Tab.4 Two sides benefits
表5 均衡策略收益Tab.5 Equilibrium strategy benefits
設攻擊者以數(shù)據(jù)庫服務器S0,4為目標發(fā)動攻擊,則有可選路徑1:S0,1→S1→S0,3→S3→S0,4→S4和路徑2:S0,1→S1→S0,2→S2→S0,4→S4.路徑1是先獲取堡壘主機權限后,通過堡壘主機獲取Web服務器的權限,再獲取數(shù)據(jù)服務器權限;路徑2通過獲取Web服務器權限后,再獲取數(shù)據(jù)服務器權限。路徑1的攻擊者收益Ua,p,1=264.1,防御者收益Ud,p,1=957.2;路徑2的攻擊者收益Ua,p,2=181.9,防御者收益Ud,p,2=933.由Ud,p,2-Ua,p,2>Ud,p,1-Ua,p,1可知,對防御者來說,路徑2的凈收益更高。這是由于堡壘主機的重要程度通常比較高,一旦堡壘主機被攻陷,整個防御網(wǎng)絡都將處于被動的局面。因此,防御者可考慮從平臺的動態(tài)遷移入手,提高堡壘主機的防御強度。
本文針對平臺動態(tài)目標防御開展多階段演化博弈研究,分析多階段平臺動態(tài)防御的技術原理,構(gòu)建相應的Markov演化博弈模型,設計攻防雙方收益的量化方法,求解多階段演化均衡策略,通過仿真驗證了所提演化博弈模型和遷移策略的有效性。后期研究中,可以在建模和策略研究中進一步考慮時間因素,增加收益計算的準確性,提升模型和策略的可用性。