黃一才 周偉偉 郁 濱
(解放軍信息工程大學(xué) 鄭州 450001) (huangyicai3698@163.com)
作為互聯(lián)網(wǎng)的發(fā)展與延伸,物聯(lián)網(wǎng)技術(shù)將廣泛應(yīng)用于社會的方方面面[1-3].依據(jù)數(shù)據(jù)采集及傳輸方式,物聯(lián)網(wǎng)可分為有線服務(wù)系統(tǒng)和無線服務(wù)系統(tǒng)(wireless service system, WSS).物聯(lián)網(wǎng)WSS的實質(zhì)是將最新的信息處理與通信技術(shù)進(jìn)行有效的整合,利用各種感知設(shè)備和智能物體采集語音、圖像、位置等數(shù)據(jù)信息,并通過無線通信方式將采集到的信息傳遞到資源平臺進(jìn)行云計算、數(shù)據(jù)挖掘等操作后,將處理與控制結(jié)果呈現(xiàn)給各用戶終端[4-6].然而,由于WSS需要將大量感知設(shè)備和物體連接到應(yīng)用系統(tǒng)中,而且這些設(shè)備和物品信息大多采用資源受限的無線傳感器網(wǎng)絡(luò)節(jié)點進(jìn)行傳輸,這在增加系統(tǒng)靈活性和方便性的同時,為蠕蟲在網(wǎng)絡(luò)中的大規(guī)模傳播提供了便利條件[7].蠕蟲可以竊取被感染節(jié)點的隱私數(shù)據(jù)和敏感信息,同時偽造身份向鄰居節(jié)點發(fā)送包含惡意代碼的無線再編程指令,使感染蠕蟲的節(jié)點數(shù)量不斷增加.被感染節(jié)點可能導(dǎo)致系統(tǒng)大面積數(shù)據(jù)阻塞甚至癱瘓.感知設(shè)備中嵌入的大多數(shù)無線傳感器節(jié)點具有資源有限的特性,如何最大限度地防御蠕蟲在系統(tǒng)中的傳播成為物聯(lián)網(wǎng)快速發(fā)展的關(guān)鍵.目前,針對無線網(wǎng)絡(luò)中蠕蟲的研究主要是利用傳統(tǒng)的流行病模型構(gòu)建傳播體系[8],在此基礎(chǔ)上,分析不同網(wǎng)絡(luò)參數(shù)對傳播速率的影響[9].
許多分布式網(wǎng)絡(luò)中的蠕蟲傳播及抑制方案這些年被相繼提出以保護(hù)采集數(shù)據(jù)的安全性和隱私性.有線網(wǎng)絡(luò)中經(jīng)典的Kermack-Mckendrick參考模型將節(jié)點劃分為3種不同的狀態(tài),利用控制參數(shù)和動力學(xué)微分方程描述蠕蟲的傳播速率,但僅將節(jié)點狀態(tài)假設(shè)為易感狀態(tài),感染狀態(tài)和恢復(fù)狀態(tài)與WSS中IEEE 802.15.4協(xié)議不符[10].基于Markov鏈的傳播模型通過引入節(jié)點半徑與信道掃描的速率等參量求解各狀態(tài)變量的微分博弈方程,但該方法未考慮WSS中基站控制節(jié)點休眠和喚醒轉(zhuǎn)換概率的情況[11].基于細(xì)胞自動機(jī)的傳播模型對多跳廣播協(xié)議中的蠕蟲病毒傳播特點進(jìn)行了模擬,但并未給出具體的防御和抑制方案[12].Bradley等人[13]提出了一種基于進(jìn)程代數(shù)的復(fù)合主動蠕蟲傳播模型,通過PEPA流近似方法求解各狀態(tài)的常微分方程.但該模型需要消耗大量系統(tǒng)資源,并不適用于節(jié)點資源受限的WSS.基于分層結(jié)構(gòu)的異構(gòu)網(wǎng)絡(luò)蠕蟲傳播模型Enhanced-AAWP利用本地優(yōu)先掃描蠕蟲和隨機(jī)掃描蠕蟲等方法研究蠕蟲的滲透傳播過程[14].由于傳統(tǒng)蠕蟲傳播模型中未考慮設(shè)備節(jié)點失效和休眠狀態(tài),因此,現(xiàn)有傳播機(jī)制的分類并不適用于WSS.
高效的蠕蟲分類機(jī)制是提高蠕蟲傳播模型準(zhǔn)確性和防御策略效率的重要因素.為解決現(xiàn)有蠕蟲分類準(zhǔn)確性差的問題,朱克楠等人[15]基于樸素貝葉斯機(jī)器學(xué)習(xí)提出了利用行為序列報告和操作相似度窗口對蠕蟲進(jìn)行自動分類的方法.該方法為WSS蠕蟲傳播及抑制模型的進(jìn)一步研究提供了有力支撐.
上述方案僅利用各種傳播模型對蠕蟲在不同網(wǎng)絡(luò)環(huán)境下的傳播特點和分類方法進(jìn)行了分析,依據(jù)動力學(xué)原理獲取不同節(jié)點的數(shù)據(jù)集,并未研究如何基于傳播規(guī)律建立動態(tài)防御策略集抑制蠕蟲在WSS中的傳播.
快速準(zhǔn)確的蠕蟲檢測方法是實現(xiàn)WSS動態(tài)最優(yōu)策略防御的基礎(chǔ).近年來,一些學(xué)者通過降低噪聲和網(wǎng)絡(luò)隨機(jī)事件的干擾,提出了許多基于行為序列的檢測算法.毛蔚軒等人[16]利用節(jié)點休眠狀態(tài)和基于人工經(jīng)驗的自適應(yīng)學(xué)習(xí)方法,在分析網(wǎng)絡(luò)拓?fù)渲懈鲗庸?jié)點數(shù)據(jù)流依賴關(guān)系的基礎(chǔ)上,給出了一種進(jìn)程調(diào)用行為相似性與異常度結(jié)合的蠕蟲抑制算法.該算法保證在已知少量蠕蟲樣本的條件下得到理想的檢測率.文獻(xiàn)[17]提出基于平均場法建立免疫模型,但該模型的抑制策略中沒有休眠模式.針對混淆蠕蟲攻擊難以檢測的問題,馬洪亮等人[18]提出利用遍歷抽象語法樹(abstract syntax tree, AST)和單等級支持向量機(jī)(one class support vector machine, OC-SVM)檢測混淆并跟蹤節(jié)點相關(guān)的變量終值檢測反混淆.Das等人[19]用頻繁項離群確定同源度,并對同源判定閾值進(jìn)行預(yù)定義,進(jìn)而實現(xiàn)蠕蟲的同源判定.郭洋河等人[20]將數(shù)據(jù)和行為依賴關(guān)系相結(jié)合,提出了一種基于造價序列庫的蠕蟲識別機(jī)制.文獻(xiàn)[21-22]利用掛鉤API的方法追蹤外部節(jié)點的訪問行為,改善了動態(tài)檢測方法執(zhí)行路徑單一的問題.這些檢測方法對蠕蟲的檢測成功率較高,但缺少與WSS匹配的蠕蟲最優(yōu)防御算法.
在現(xiàn)有的蠕蟲檢測策略條件下,如何設(shè)計最優(yōu)防御算法是WSS在高安全領(lǐng)域應(yīng)用的關(guān)鍵.文獻(xiàn)[23]指出可以將蠕蟲防御問題轉(zhuǎn)化為動態(tài)博弈納什均衡的求解問題.Mishra等人[24]引入攻擊方的類型概率和收益矩陣,通過判斷貝葉斯博弈中收益函數(shù)值選取最優(yōu)動作集合,但該方案不能實時校正外部節(jié)點的后驗概率.Pandey等人[25]將蠕蟲和系統(tǒng)的攻擊防御轉(zhuǎn)化為二者的最優(yōu)化博弈問題,提出基于僵尸網(wǎng)絡(luò)環(huán)境的流行病模型以及微分博弈機(jī)制,在考慮防御策略及惡意軟件參數(shù)限制的基礎(chǔ)上給出了動態(tài)博弈的閉環(huán)納什均衡解.該方案雖然得到了微分博弈最優(yōu)解,但未討論隔離狀態(tài)對其他網(wǎng)絡(luò)狀態(tài)的影響.這些方案雖然對蠕蟲在無線網(wǎng)絡(luò)中的傳播及抑制進(jìn)行了一定程度的研究,但并未考慮WSS中基站能夠使易感節(jié)點免疫,同時可以廣播補(bǔ)丁程序治愈已感染節(jié)點.
結(jié)合WSS中的網(wǎng)絡(luò)參數(shù)及節(jié)點狀態(tài)特點,仍需重新建立傳播模型及基于時間特性的動態(tài)微分博弈模型,在滿足網(wǎng)絡(luò)參數(shù)約束條件的情況下,有效抑制蠕蟲在網(wǎng)絡(luò)中的傳播并使系統(tǒng)的安全成本最低.
本文的貢獻(xiàn)是構(gòu)建一個描述物聯(lián)網(wǎng)WSS蠕蟲傳播規(guī)律的流行病模型和蠕蟲防御動態(tài)微分博弈模型,求解最優(yōu)策略控制集合的取值并給出了抑制蠕蟲傳播的防御算法.具體地,本文主要得到3個方面的結(jié)果:
1) 依據(jù)物聯(lián)網(wǎng)中WSS的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),對蠕蟲攻擊下設(shè)備節(jié)點之間的狀態(tài)轉(zhuǎn)換過程進(jìn)行分析,給出了WSS狀態(tài)轉(zhuǎn)換圖和各狀態(tài)微分方程,利用通信半徑確定具有感染能力的節(jié)點區(qū)域和數(shù)量并構(gòu)建改進(jìn)的流行病模型.
2) 建立蠕蟲和WSS間的動態(tài)微分博弈模型,通過目標(biāo)成本函數(shù)量化攻擊方和防御方不同決策所得到的成本支付.
3) 利用漢密爾頓函數(shù)、瞬時成本函數(shù)以及終期成本函數(shù)的線性條件證明了動態(tài)微分博弈鞍點的存在性.結(jié)合成本函數(shù)與漢密爾頓函數(shù)的最小化極值特點,求解蠕蟲傳播的最優(yōu)防御策略并給出了具體算法.
隨著物聯(lián)網(wǎng)在各個領(lǐng)域的快速發(fā)展,其安全問題越來越受到重視,尤其是對信息安全性和隱私性要求較高的WSS中.WSS大多采用無線傳感器網(wǎng)絡(luò)技術(shù)實現(xiàn)各節(jié)點之間的數(shù)據(jù)與圖像傳輸、數(shù)據(jù)處理、實時控制等.無線信道的開放性和節(jié)點的同構(gòu)性使惡意軟件很容易在網(wǎng)絡(luò)中大面積傳播.
物聯(lián)網(wǎng)WSS的系統(tǒng)結(jié)構(gòu)如圖1所示.該系統(tǒng)的目標(biāo)是保證無論何時、何地、任何媒體設(shè)備的實時連通性和可控性.其結(jié)構(gòu)主要包括無線傳輸系統(tǒng)、數(shù)據(jù)采集系統(tǒng)和終端用戶系統(tǒng).由于WSS設(shè)備的移動性和采集數(shù)據(jù)分布范圍廣的特點,無線傳感器網(wǎng)絡(luò)技術(shù)在WSS數(shù)據(jù)采集和傳輸中的應(yīng)用較為普遍.但嵌入無線傳感器網(wǎng)絡(luò)節(jié)點的設(shè)備一旦被蠕蟲感染,極易在網(wǎng)絡(luò)中傳播.這些被感染的節(jié)點對系統(tǒng)數(shù)據(jù)的機(jī)密性、隱私性和完整性構(gòu)成了巨大威脅.
Fig. 1 System structure of WSS in IoT圖1 物聯(lián)網(wǎng)WSS的系統(tǒng)結(jié)構(gòu)
(1)
節(jié)點間存在鏈接的概率p(da b)由WSS中的無線電通信機(jī)制以及節(jié)點間的通信半徑?jīng)Q定.信號發(fā)射端與信號接收端通過閾值判定模型確定節(jié)點間是否存在通信鏈路[26].
流行病模型最早是用于預(yù)測和描述具有傳染性因素特征的部分人員集合隨時間實時變化的態(tài)勢.這些因素特征包括網(wǎng)絡(luò)節(jié)點的發(fā)送率、接收率、傳播速率等.依據(jù)不同網(wǎng)絡(luò)的特點,現(xiàn)有流行病模型分為SI[27],SIS[28],SIR[29]模型.
通常情況下,網(wǎng)絡(luò)中感染節(jié)點注入安全補(bǔ)丁可以轉(zhuǎn)變?yōu)榛謴?fù)狀態(tài).因此,SIR模型更適用于具有安全補(bǔ)丁的網(wǎng)絡(luò)流行病傳播特點.S(t),I(t),R(t)分別代表在時刻t易感節(jié)點、感染節(jié)點和免疫節(jié)點的數(shù)量.假設(shè)網(wǎng)絡(luò)中各節(jié)點之間存在通信鏈路,令α為蠕蟲感染速率,β為免疫速率,則描述各狀態(tài)節(jié)點變化速度的微分方程為
分析其他網(wǎng)絡(luò)模型時,可以依據(jù)經(jīng)典SIR模型和具體的網(wǎng)絡(luò)協(xié)議進(jìn)行分析和求解.
WSS中傳播的蠕蟲主要指被動型蠕蟲.假設(shè)WSS中源節(jié)點的安全認(rèn)證機(jī)制失效,蠕蟲控制該節(jié)點并獲取認(rèn)證密鑰.感染節(jié)點利用簽名密鑰對嵌入蠕蟲字段的再編程命令幀簽名并發(fā)送到鄰居節(jié)點.其他鄰居節(jié)點收到偽裝的命令幀后驗證認(rèn)證機(jī)制,更新配置并執(zhí)行相應(yīng)操作.蠕蟲在WSS節(jié)點間通過多跳的形式向外傳播.感染節(jié)點采集和傳輸?shù)臄?shù)據(jù)遭受竊聽、篡改和破壞.
WSS中的蠕蟲傳播可以用包含易感節(jié)點、感染節(jié)點和免疫節(jié)點的區(qū)域來表示.不同狀態(tài)節(jié)點的分布如圖2所示.由于免疫節(jié)點在全網(wǎng)均勻分布,因此,未在系統(tǒng)模型中標(biāo)出.
Fig. 2 System model of WSS圖2 WSS系統(tǒng)模型
Fig. 3 State transition diagram of nodes in WSS圖3 WSS節(jié)點狀態(tài)轉(zhuǎn)換圖
依據(jù)WSS的特點,節(jié)點可分為8種不同的狀態(tài),各狀態(tài)之間的轉(zhuǎn)換關(guān)系如圖3所示:
1)S.處于狀態(tài)S的節(jié)點為易感節(jié)點,即易遭受蠕蟲感染,但目前仍處于正常工作狀態(tài).
2)S1.處于狀態(tài)S1的節(jié)點是狀態(tài)S的休眠節(jié)點,由于節(jié)點處于休眠狀態(tài)時停止收發(fā)數(shù)據(jù),該狀態(tài)的節(jié)點不會被蠕蟲感染.
3)I.處于狀態(tài)I的節(jié)點為感染節(jié)點,蠕蟲可以竊取節(jié)點存儲、處理、傳輸?shù)臄?shù)據(jù),同時能通過該節(jié)點感染其他易感節(jié)點.
4)I1.處于狀態(tài)I1的節(jié)點為感染節(jié)點I的休眠節(jié)點,該狀態(tài)的節(jié)點失去通信功能,無法感染其他易感節(jié)點.
5)Q.處于狀態(tài)Q的節(jié)點為系統(tǒng)通過安全規(guī)則檢測并隔離的節(jié)點,該狀態(tài)的節(jié)點無法感染其他易感節(jié)點.
6)R.處于狀態(tài)R的節(jié)點為植入安全補(bǔ)丁后獲得對蠕蟲免疫狀態(tài)的節(jié)點.
7)R1.處于狀態(tài)R1的節(jié)點為狀態(tài)R的休眠節(jié)點.
8)D.處于狀態(tài)D的節(jié)點為失效節(jié)點,節(jié)點失去通信和數(shù)據(jù)處理功能.
8種不同狀態(tài)的節(jié)點滿足:
N=S(t)+I(t)+R(t)+S1(t)+
I1(t)+R1(t)+D(t)+Q(t).
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
1)N={蠕蟲A,WSSD}是一個包含2個參與者的集合;
3)F={f(t,r(t),m(t),s(t))|fS,fI,fR,fS1,fI1,fR1,fQ,fD},其中f(t,r(t),m(t),s(t))是一個隨時間連續(xù)變化的狀態(tài)函數(shù),r(t)=(S(t),I(t),R(t),S1(t),I1(t),R1(t),Q(t),D(t))是一個8維的狀態(tài)變量,其中,
在定義1中,博弈雙方分別為蠕蟲A和WSSD,WSS通過調(diào)整防御策略S使目標(biāo)成本函數(shù)J的值達(dá)到最小,而蠕蟲通過攻擊策略M保證J的值達(dá)到最大,該博弈模型為動態(tài)完全信息零和微分博弈,即攻擊方和防御方均知道對方采取每個策略的支付.
J(m(t),s*(t))≤J(m*(t),s*(t))≤J(m*(t),s(t)).
令V=J(m*(t),s*(t)),當(dāng)攻擊方選擇策略m*(t)時,無論防御方采取何種防御措施,成本函數(shù)的值至少為V;當(dāng)防御方采取策略s*(t)時,成本函數(shù)的值至多為V.當(dāng)系統(tǒng)采取鞍點策略時,滿足關(guān)系V=V0=V1.
由于成本函數(shù)J與WSS的QoS相關(guān),被蠕蟲感染的節(jié)點數(shù)據(jù)的機(jī)密性和隱私性遭到破壞,且影響節(jié)點的正常工作,節(jié)點持有的內(nèi)部資源被非法調(diào)用和讀取,定義此時蠕蟲在感染節(jié)點集合中引起的瞬時成本為μII(t),其中μI為協(xié)議中感染節(jié)點的瞬時成本相關(guān)系數(shù).失效節(jié)點的增加會導(dǎo)致網(wǎng)絡(luò)中路由路徑發(fā)生改變,部分?jǐn)?shù)據(jù)無法正常采集和傳遞,使成本函數(shù)值增加,由此,定義失效節(jié)點的瞬時成本為μDD(t),μD為失效節(jié)點的瞬時成本相關(guān)系數(shù).同理可得,恢復(fù)節(jié)點的瞬時成本為μRR(t),隔離節(jié)點的瞬時成本為μQQ(t),休眠節(jié)點的瞬時成本函數(shù)分別為μS1S1(t),-μI1I1(t)和μR1R1(t).
由以上分析可得,定義1中的成本函數(shù)可表示為
(12)
為了求解博弈K的鞍點策略,首先需要分析該博弈的鞍點是否存在.
定理1. 如果WSS中蠕蟲防御微分博弈滿足定義1及其約束條件,那么該博弈存在使系統(tǒng)達(dá)到最優(yōu)的鞍點策略.
證明. 微分博弈存在鞍點策略必須滿足4個條件:
1) 系統(tǒng)的狀態(tài)函數(shù)在各狀態(tài)和控制策略上是連續(xù)且有界的;
2) 在成本函數(shù)中,瞬時成本和終期成本在各狀態(tài)和控制策略上是連續(xù)的;
3) 狀態(tài)函數(shù)和瞬時成本函數(shù)是由控制策略線性表示的,且博弈中定義的控制策略集合均是凸的;
4) 攻擊方和防御方的控制策略是有界的.
由定義1可知,狀態(tài)函數(shù)f(t,r(t),m(t),s(t))是連續(xù)的且其各狀態(tài)變量的取值由式(4)~(11)確定,M和S對控制策略的上下限進(jìn)行約束,因此,狀態(tài)函數(shù)在各狀態(tài)和控制策略上是連續(xù)且有界的,條件1顯然滿足.瞬時成本和終期成本隨著各狀態(tài)和控制策略的增加而線性增加,其在各狀態(tài)和控制策略上是連續(xù)的,滿足條件2.由式(4)~(12)可知,狀態(tài)函數(shù)和瞬時成本函數(shù)均由控制策略線性表示,且控制策略集合中的參數(shù)可在連續(xù)區(qū)間內(nèi)取值,故博弈中控制策略集合是凸的,滿足條件3.由協(xié)議中控制策略的約束條件可知,條件4顯然滿足.
因此,博弈K存在使系統(tǒng)性能達(dá)到最優(yōu)的鞍點策略.
證畢.
本節(jié)以動態(tài)微分博弈K的目標(biāo)成本函數(shù)最小為求解依據(jù),通過引入漢密爾頓函數(shù),將目標(biāo)成本函數(shù)最小問題轉(zhuǎn)化為判定雙方策略參數(shù)對應(yīng)系數(shù)的正負(fù)問題.在此基礎(chǔ)上,結(jié)合狀態(tài)函數(shù)和初始狀態(tài)值,求解不同系數(shù)范圍下的最優(yōu)控制策略.
由于參與者雙方的控制策略參數(shù)取值是一個連續(xù)的取值空間,博弈模型的最優(yōu)策略求解無法通過線性分析和分類數(shù)值對比實現(xiàn),且參數(shù)取值的無限特性使函數(shù)的凸性分析無法直接求解.因此,引入漢密爾頓函數(shù)作為對目標(biāo)成本函數(shù)和各策略控制參數(shù)進(jìn)行定量分析的工具,簡化最優(yōu)控制策略的求解問題.
由于動態(tài)博弈存在鞍點策略,可以利用目標(biāo)成本函數(shù)的性能泛函構(gòu)建漢密爾頓函數(shù),其協(xié)狀態(tài)函數(shù)可表示為
κ(t)=(κS(t)κI(t)κR(t)κS1(t)κI1(t)
κR1(t)κQ(t)κD(t))T.
利用拉格朗日乘子法,構(gòu)造新的增廣泛函:
(13)
其中,κ(t)為8維的拉格朗日乘子系數(shù)矢量.純量函數(shù)H可表示為
H[t,κ(t),r(t),m(t),s(t)]=w(t,r(t),m(t),s(t))+
κ(t)f(t,r(t),m(t),s(t)).
(14)
H[t,κ(t),d(t),m(t),s(t)]為構(gòu)造的漢密爾頓函數(shù),則式(13)可簡化為
(15)
(16)
由式(15)展開歐拉方程可導(dǎo)出上述泛函極值的必要條件為
由式(12)和式(14)可得漢密爾頓函數(shù)如式(16)所示.
設(shè)漢密爾頓函數(shù)中各策略控制參數(shù)的系數(shù)分別為
可得:
(17)
依據(jù)漢密爾頓函數(shù)以及泛函極值的必要條件,可得協(xié)狀態(tài)函數(shù)的微分方程及極值,進(jìn)而結(jié)合相應(yīng)的初始條件得到協(xié)狀態(tài)函數(shù)κ(t)中的8個空間向量值,將其代入到式(17)可求解各策略控制參數(shù)的系數(shù).
定理2. 如果蠕蟲與WSS之間的微分博弈滿足定義1,那么在動態(tài)微分博弈K中攻擊方蠕蟲A的最優(yōu)控制策略為
防御方WSSD的最優(yōu)控制策略為
證明. 由于漢密爾頓函數(shù)可表示為策略控制參數(shù)與相應(yīng)系數(shù)的線性表達(dá)式,且泛函極值的必要條件中要求WSS中蠕蟲動態(tài)防御最優(yōu)策略的鞍點必須滿足:
因此,當(dāng)WSS策略控制參數(shù)相應(yīng)的系數(shù)大于0時,策略控制參數(shù)取約束范圍內(nèi)的最小值,反之取最大值.當(dāng)蠕蟲策略控制參數(shù)相應(yīng)的系數(shù)大于0時,策略控制參數(shù)取約束范圍內(nèi)的最大值,反之取最小值.
證畢.
依據(jù)第l個博弈階段的狀態(tài)節(jié)點數(shù)量初始值、狀態(tài)函數(shù)、協(xié)狀態(tài)函數(shù)以及各控制策略系數(shù),由協(xié)議計算使蠕蟲動態(tài)防御最優(yōu)的鞍點策略.該防御機(jī)制主要包括4個部分:參數(shù)存儲模塊(parameters storage module)、安全管理中心(security manage-ment center)、蠕蟲A(wormA)、WSSD.在此基礎(chǔ)上,設(shè)計適應(yīng)于WSS的蠕蟲動態(tài)防御最優(yōu)策略機(jī)制如圖4所示:
Fig. 4 Optimal defense strategy against worm propagation based on modified epidemic model圖4 基于改進(jìn)流行病模型的蠕蟲動態(tài)防御最優(yōu)策略機(jī)制
本方案中基于目標(biāo)成本值最優(yōu)的蠕蟲傳播最優(yōu)攻擊算法和最優(yōu)防御算法如下:
算法1. WSS蠕蟲傳播最優(yōu)攻擊算法.
Step1. 初始化式(4)~(11)的假設(shè)條件,設(shè)置時間窗t=1,判斷是否滿足t≤k.若滿足條件,則利用狀態(tài)微分方程求解該博弈階段的各狀態(tài)值;否則跳轉(zhuǎn)到Step5.
Step2. 結(jié)合攻擊方和防御方控制參數(shù)初始值以及協(xié)狀態(tài)微分方程,將時刻lT0的協(xié)狀態(tài)值代入求解不同博弈階段的協(xié)狀態(tài)值κS(t),κI(t),κR(t),κS1(t),κI1(t),κR1(t),κQ(t),κD(t).
算法2. WSS蠕蟲傳播最優(yōu)防御算法.
輸入:控制參數(shù)初始值及博弈階段起點t=1;
Step1. 設(shè)置初始時間窗t=1,配置初始化參數(shù)并由狀態(tài)微分方程求解各博弈階段狀態(tài)值,判斷是否滿足t≤k,若滿足執(zhí)行下一步操作;否則跳轉(zhuǎn)到Step5.
Step2. 加載博弈中參與者的控制參數(shù)初始值以及協(xié)狀態(tài)微分方程,將時刻lT0的協(xié)狀態(tài)值代入求解不同博弈階段的協(xié)狀態(tài)值.
本實驗在HP Z238工作站(3.2 GHz 8核心超線程、8 GB內(nèi)存、Windows XP)上實現(xiàn),使用的WSS網(wǎng)絡(luò)仿真平臺是NS-2,NS-2是由UC Berkeley開發(fā)的面向?qū)ο蟮臒o線網(wǎng)絡(luò)仿真模擬器.它通過設(shè)置虛擬時鐘并逐個執(zhí)行離散事件完成算法的運行.從VXHeaven中抽取5個蠕蟲樣本并隨機(jī)選取一種作為WSS蠕蟲攻擊源.
Table 1 Parameter Configuration in NS-2表1 NS-2參數(shù)設(shè)置
NS-2配置細(xì)胞自動機(jī)算法[12]的類型為混沌型,采用諾伊曼細(xì)胞空間對網(wǎng)絡(luò)節(jié)點進(jìn)行編號,節(jié)點i的狀態(tài)為Si∈{1,2,3,4,5,6,7,8},該節(jié)點的2鄰居狀態(tài)分別為(Si-1,t)和(Si+1,t),利用轉(zhuǎn)換規(guī)則函數(shù)表切換各節(jié)點狀態(tài).
Enhanced-AAWP掃描算法[21]中蠕蟲實例的平均掃描速率為η=7,一個掃描時間單元的長度為60 s,系統(tǒng)采取隨機(jī)掃描和本地掃描的概率分別為P1=0.875和P2=0.125.
在上述網(wǎng)絡(luò)環(huán)境下運行細(xì)胞自動機(jī)算法[12]、Enhanced-AAWP掃描算法[21]和本文算法,利用NS-2中的State sniffer進(jìn)程追蹤并統(tǒng)計各狀態(tài)節(jié)點以及策略參數(shù)的變化情況,結(jié)合MATLAB 2010a對實驗結(jié)果進(jìn)行數(shù)值分析.通過仿真實驗對比這3種算法在WSS蠕蟲防御方面的性能差異.
通過仿真環(huán)境實現(xiàn)文獻(xiàn)[12,21]中的方案及初始條件,對比不同狀態(tài)節(jié)點所占比例隨時間的變化曲線.為了得到更加精確的結(jié)果,重復(fù)實驗20次并取所有結(jié)果的平均值.
如圖5所示,在文獻(xiàn)[21]中,網(wǎng)絡(luò)模型通過Enhanced-AAWP隨機(jī)掃描和本地掃描蠕蟲,未考慮休眠節(jié)點和隔離節(jié)點對策略均衡的影響,導(dǎo)致在計算防御策略的閾值時存在較大誤差,S和I的實驗測定值與文獻(xiàn)[21]中均衡方程的計算值誤差超過6%.在第1個博弈階段,算法中防御參數(shù)的切換延遲,易感節(jié)點所占的比例迅速下降.感染節(jié)點所占比例在第43個博弈階段達(dá)到最大值.隨著恢復(fù)節(jié)點所占比例的增加,感染節(jié)點縮小對周圍節(jié)點發(fā)送蠕蟲命令幀的數(shù)據(jù)量,開始執(zhí)行使感染節(jié)點轉(zhuǎn)變?yōu)槭Ч?jié)點的策略.該方案在建立脆弱性主機(jī)自治系統(tǒng)的全局可達(dá)網(wǎng)絡(luò)時假設(shè)狀態(tài)為I的節(jié)點均有蠕蟲傳播能力,而感染節(jié)點區(qū)域內(nèi)距離外部易感節(jié)點距離超過Rc的感染節(jié)點不具備感染能力.在最終平衡態(tài)時易感節(jié)點的比例保持在2.19%~3.06%,由感染節(jié)點轉(zhuǎn)變?yōu)槭Ч?jié)點的比例為32.29%,方案的均衡策略不能達(dá)到實際的最優(yōu)抑制效果.
Fig. 5 Fraction curve of nodes in each state of Ref [21]圖5 文獻(xiàn)[21]中各狀態(tài)節(jié)點曲線
與文獻(xiàn)[21]相比,文獻(xiàn)[12]在建立網(wǎng)絡(luò)模型時考慮了靠近感染節(jié)點區(qū)域內(nèi)側(cè)時無法與外側(cè)易感節(jié)點通信的情況,但在流行病模型的計算中未引入休眠節(jié)點和隔離節(jié)點的微分方程.如圖6所示,易感節(jié)點所占比例在整個博弈階段明顯優(yōu)于文獻(xiàn)[21].當(dāng)博弈結(jié)束時,易感節(jié)點所占比例的穩(wěn)態(tài)值7.69%大于文獻(xiàn)[21].感染節(jié)點所占比例的曲線波峰到來的時間遲于文獻(xiàn)[21].失效節(jié)點增加的速度有所減小,且穩(wěn)態(tài)時所占比例保持在21.31%,低于Enhanced-AAWP中的32.29%,由于休眠節(jié)點和隔離節(jié)點對蠕蟲傳播具有抑制作用,該方案將這2種節(jié)點均作為易感節(jié)點進(jìn)行數(shù)值計算,防御策略的參數(shù)取值時間不夠準(zhǔn)確.失效節(jié)點和感染節(jié)點所占比例均超過18%.
Fig. 6 Fraction curve of nodes in each state of Ref [12]圖6 文獻(xiàn)[12]中各狀態(tài)節(jié)點曲線
Fig. 7 Fraction curve of nodes in each state of this paper圖7 本文中各狀態(tài)節(jié)點曲線
本文方案中各狀態(tài)節(jié)點所占比例的理論值與仿真計算值如圖7所示.動態(tài)防御最優(yōu)策略算法在S-I-R動力學(xué)模型的基礎(chǔ)上添加了休眠狀態(tài)(S1,I1,R1)以及安全隔離狀態(tài)(Q),且利用Rc=50及式(3)計算了具備蠕蟲傳播能力的感染節(jié)點.易感節(jié)點在穩(wěn)態(tài)時的比例保持在19.17%~20.62%,失效節(jié)點的比例在整個博弈階段低于10%,感染節(jié)點比例控制在17.29%~18.06%.感染節(jié)點的比例在第96個博弈階段時達(dá)到最大值22.17%,遠(yuǎn)低于其他防御策略.從第96個博弈階段開始,基站向網(wǎng)絡(luò)中發(fā)送大量安全補(bǔ)丁,同時大量節(jié)點處于休眠狀態(tài)阻止蠕蟲在系統(tǒng)中的傳播,因此,恢復(fù)節(jié)點的比例并未迅速增長.與上述2種方案相比,改進(jìn)流行病模型得到的鞍點策略在蠕蟲傳播方面具有更好的抑制效果.
State sniffer采集到的數(shù)據(jù)代入式(12)得到各算法目標(biāo)成本值隨時間的變化情況,如圖8所示.I(0)=120的目標(biāo)成本值不到I(0)=240的目標(biāo)成本值的40%,這是由于達(dá)到均衡時I(t)和D(t)在目標(biāo)成本值中所占比例
較大.隨著博弈階段的更新,當(dāng)I(0)=120和I(0)=240時,本文算法在各階段達(dá)到策略均衡時的目標(biāo)成本值均遠(yuǎn)小于其他算法,且差值逐漸擴(kuò)大.基于改進(jìn)流行病模型和目標(biāo)成本值最優(yōu)的抑制算法在WSS蠕蟲傳播防御方面具有明顯優(yōu)勢.
Fig. 8 Comparison of target costs in different strategies圖8 不同策略下的目標(biāo)成本值對比
Fig. 9 Target cost under different and 圖9 不同和下的目標(biāo)成本值
Fig. 10 Target cost under different and 圖10 不同和下的目標(biāo)成本值
Fig. 11 Target cost under different and 圖11 不同和下的目標(biāo)成本值
由圖9~11可知:本文中WSS蠕蟲傳播最優(yōu)攻擊算法以及最優(yōu)防御算法的控制參數(shù)取值相對于目標(biāo)成本函數(shù)具有最優(yōu)特性,即圖4中的方案在不同博弈階段的參數(shù)取值對攻擊者和防御者均為最優(yōu)策略.基于目標(biāo)成本值最優(yōu)的蠕蟲傳播抑制算法可以最大限度地提高WSS的安全性能.
物聯(lián)網(wǎng)WSS中的蠕蟲傳播問題嚴(yán)重限制了其在工業(yè)生產(chǎn)、災(zāi)害預(yù)警、智能管理等領(lǐng)域的應(yīng)用.為了解決這一問題,自主研究具有最優(yōu)特性的WSS蠕蟲傳播抑制算法.
本文提出了一種基于目標(biāo)成本值最優(yōu)的WSS蠕蟲傳播抑制算法,和其他同類型算法相比具有3個方面優(yōu)點:
1)在傳統(tǒng)SIR模型的基礎(chǔ)上,引入休眠狀態(tài)和隔離狀態(tài),建立了狀態(tài)轉(zhuǎn)換圖和改進(jìn)的流行病模型,并給出了各狀態(tài)節(jié)點的微分方程及初始狀態(tài),使不同博弈階段狀態(tài)節(jié)點數(shù)量的計算更加準(zhǔn)確;
2)本文構(gòu)建了蠕蟲傳播的系統(tǒng)模型,利用節(jié)點的通信半徑以及感染節(jié)點的分布規(guī)律,準(zhǔn)確計算了具有蠕蟲傳播能力的感染節(jié)點數(shù)量,使感染節(jié)點的狀態(tài)微分方程對下一時刻狀態(tài)節(jié)點的預(yù)測更加精確;
3)本文建立了WSS和蠕蟲的動態(tài)微分博弈模型,以目標(biāo)成本值最優(yōu)作為鞍點策略的求解條件,通過狀態(tài)變量、協(xié)狀態(tài)變量以及漢密爾頓函數(shù)的線性特點實現(xiàn)均衡策略的求解,在此基礎(chǔ)上,提出了蠕蟲傳播抑制最優(yōu)策略算法,與其他算法相比,本文算法在不同博弈階段狀態(tài)節(jié)點預(yù)測以及WSS蠕蟲傳播抑制方面具有明顯優(yōu)勢.