王 劍,劉星彤,降 帥
(國防科技大學 電子科學學院, 湖南 長沙 410073)
無線自組織網絡是節點之間通過自組織方式互聯而成的網絡,具有分布式運行、拓撲動態變化等特點。無線傳感器網絡是一種應用非常廣泛的無線自組織網絡,在農業、環境、軍事等領域具有非常廣闊的應用前景。由于節點部署的開放性以及無線通信的開放性,傳感器節點容易被惡意節點所操控,傳輸的敏感信息易被攻擊者所竊取。攻擊者可以在物理層阻塞傳感器節點的信道或者直接俘獲傳感器節點以獲取其中的秘密消息[1]。攻擊者在數據鏈路層可以發起碰撞攻擊、休眠剝奪攻擊、退避時間操控攻擊、保證時隙(Guaranteed Time Slot,GTS)攻擊等[2-3],在網絡層可發起黑洞攻擊、蟲洞攻擊、槽洞攻擊、女巫攻擊、數據包選擇轉發攻擊、Hello flood攻擊等[4],在傳輸層可發起洪泛攻擊、去同步攻擊等[1]。
無線自組織網絡中除了針對某一協議層的單層攻擊之外,還存在與多個協議層相關的跨層攻擊[5-11]。跨層攻擊的目的是期望獲得比單層攻擊更好的攻擊效果、更好地隱蔽攻擊行為或者更低的攻擊成本。Radosavac等提出了一種從介質訪問控制(Medium Access Control,MAC)層發起攻擊,并傳播到網絡層,造成路由破壞的MAC-Network跨層攻擊方法[5]。在該方案中,攻擊者利用在MAC層的合法通信,使得1個或多個鄰居節點脫離網絡,并提高了攻擊者自己成為新路由的概率。Bian等提出了一種仍從MAC層發起攻擊,但目標為破壞傳輸層端到端數據流傳輸的MAC-Transport跨層攻擊方法[6]。攻擊者通過使用小的競爭窗口(Contention Window,CW)值周期性地占用無線信道,使得傳輸控制協議(Transmission Control Protocol,TCP)流的往返時延(Round-Trip Time,RTT)產生很大的抖動,并造成數據流的重傳超時(Retransmission TimeOut,RTO)。根據TCP擁塞控制機制,擁塞窗口的值將設置為1,從而導致端到端的吞吐量大大降低。此外,Nagireddygari等針對認知無線網絡提出了一種MAC-Transport跨層攻擊方法[7]。Wang等提出了一種物理層和MAC層協同配合的攻擊方法,以增大攻擊強度并降低被發現的風險[8]。Hossain等利用認知無線網絡中低層頻譜感知機制的缺陷以及網絡層的路由操控,提出了一種跨層攻擊方法可將數據流傳輸給指定節點[9]。Hasan等提出一種針對移動通信網絡的跨層攻擊方法,利用數據鏈路層和網絡層的信息在物理層發起阻塞攻擊,以破壞移動臺與基站收發信臺之間的通信[10]。
跨層攻擊中各個層次起到的作用可能會不一樣。事實上,在當前針對無線網絡的跨層攻擊中,由于上層的路由策略、數據傳輸與下層的MAC協議有很大關聯,因此很多跨層攻擊都是從MAC層發起,進而影響協議的其他層次。將跨層攻擊定義為:“綜合考慮多層協議的漏洞或相關信息,通過在某一協議層發起攻擊,或者在多個協議層協同攻擊,以達到在單一協議層次難以實現的攻擊目標[11]”。這里要注意的是,跨層攻擊不同于多層攻擊,多層攻擊可以在多個協議層次實施,但是各層次之間的攻擊通常是獨立的,而跨層攻擊通常則是為了達到某種特殊目的在多個層次發起協同攻擊或者在某一層發起攻擊但目標為破壞其他層次的功能。
目前的入侵監測系統主要有基于誤用和基于異常兩種類型。誤用檢測基于預先定義的規則能夠很容易地檢測到已知攻擊,但對于未知攻擊則無能為力。相較于誤用檢測,異常檢測具有較高的檢測率以及檢測未知攻擊的能力,但同時也帶來了較高的誤報率。異常檢測的方法有很多,包括基于流量預測、統計方法、數據挖掘、博弈論、免疫理論、信任管理、人工智能等[12-23]。Han等利用馬爾可夫模型提出一種針對無線傳感器網絡的流量預測算法,并基于此算法設計了一種分布式異常檢測方案,可有效檢測影響網絡數據流選擇的前向攻擊、拒絕服務攻擊等[12]。Alaparthy等基于免疫理論提出了一種多層入侵檢測系統,通過監控節點能量、數據包傳輸數量、數據發送頻率等參數,計算得到聚合輸出,以此檢測無線傳感器網絡中的黑洞攻擊、蟲洞攻擊等[13]。Bao等提出一種基于可信的無線傳感器網絡入侵檢測方案,通過對節點的可信值進行統計分析來判斷節點的惡意性[14]。Luo等提出一種分簇無線傳感器網絡可信管理系統,該系統通過監控節點行為實現對節點可信值的動態管理,并基于可信評估模型來識別攻擊行為[15]。Sandhya等基于遺傳K均值算法提出一種入侵檢測框架,以識別無線傳感器網絡中的攻擊行為和攻擊節點[16]。Geetha等基于決策樹提出一種入侵檢測算法,分析表明Hoeffding樹最適合無線傳感器網絡中的數據流檢測[17]。Otoum等分析了深度學習應用于無線傳感器網絡入侵檢測的可行性,提出了一種基于受限玻爾茲曼機的入侵監測系統[18]。
事實證明,博弈論在分析多人策略決策問題方面是一種非常有效的工具。無線網絡中攻防對抗的本質完全可以用攻防雙方相互作用的攻防策略來表示,而博弈論可用于描述理性判決者所采取策略之間的相互影響。Chen等將異構網絡中的入侵檢測問題視為攻擊者和入侵檢測系統之間的非合作零和博弈進行了建模和分析[19]。Liu等提出了一種貝葉斯博弈框架來分析無線ad hoc網絡中攻擊節點與防御節點之間的相互影響[20]。Moosavi等設計了一種非零和魯棒的隨機博弈框架,分析了無線傳感器網絡中的入侵檢測問題[21]。Guan等基于多標準博弈提出了一種無線傳感器網絡入侵檢測機制[22]。當前,大多數入侵檢測方案的重點是檢測典型的攻擊行為,對于不同種類攻擊方法同時實施或多層次協同配合的跨層攻擊場景則較少考慮。由于攻擊將不可避免地對多個協議層的參數造成影響,因此將多層協議參數的偏差作為可信度量參數,提出了一種基于可信模型的入侵檢測方案[23]。
為檢測跨層攻擊,通常的方式是監測各層協議的參數變化,并進行綜合研判。本文從攻防博弈的角度,在充分考慮協議層攻擊方式的基礎上,提出了一種針對無線自組織網絡的博弈模型,并計算出該模型的支付函數,分析了模型的納什均衡,得到了混合策略納什均衡解。仿真結果表明,采用混合策略納什均衡的檢測系統具有較好的檢測性能并且能有效節約節點的能量消耗。
攻防博弈模型中包含攻擊者和檢測者,攻擊者用A表示,檢測者用D表示。攻擊者通過攻擊網絡來獲取利益,而檢測者通過發現攻擊行為來保護網絡。攻擊者一旦發起攻擊將支付一定代價,如果攻擊成功將得到一定利益。檢測系統一旦啟動檢測程序將消耗一定能量,如果成功檢測到攻擊也將獲得一定利益。這是一種典型的相互對立的博弈過程,攻擊者和檢測者顯然不可能合作,因此應采用非合作博弈模型。由于攻防雙方不斷重復攻防過程,因此該模型應為可重復博弈模型。此外,攻擊者的行為和檢測者的行為沒有固定的先后順序,他們可以同時或隨機發起攻擊或者檢測,后者并沒有前者所采取策略的相關信息,因此可以將該過程視為靜態博弈過程。假設攻防雙方對彼此的特性、策略空間和支付函數有著比較全面的了解,可以采用完全信息非合作靜態博弈模型來分析攻防過程。攻擊者和檢測者的策略空間分別用SA和SD表示,支付函數分別用UA和UD表示,因此博弈模型可表示為G={(A,D), (SA,SD), (UA,UD)}。
攻擊者可以選擇在物理層、MAC層、網絡層、傳輸層、應用層等各個層次發起攻擊,可以發起MAC-Network、MAC-Transport、Network-Application等跨層攻擊,也可以選擇不發起攻擊。為簡化模型,將攻擊者的策略空間定義為SA={ASL,ACL,A0},其中ASL表示單層攻擊,ACL表示跨層攻擊,A0表示不攻擊。同樣地,檢測者可以選擇單層檢測、跨層檢測和不檢測,因此檢測者的策略空間可表示為SD={DSL,DCL,D0},其中DSL表示單層檢測,DCL表示跨層檢測,D0表示不檢測。策略矩陣S可以表示為:
(1)
矩陣中的元素表示攻防雙方采取的策略。例如矩陣的第一個元素S11表示攻擊者采用跨層攻擊策略,同時檢測者采用跨層檢測策略。在這種情況下,攻擊者的攻擊行為將以很大的概率被檢測者檢測到,因此檢測者會得到一定的收益,而對于攻擊者將造成一定的損失。如果攻擊者發起跨層攻擊,而檢測者實施的是單層檢測,則檢測者可能很難發現攻擊者的攻擊行為,因此攻擊者將獲得一定的利益。如果攻擊者選擇不攻擊而檢測者仍實施檢測策略,雖然攻擊者不能得到收益,但檢測者會消耗一定的能量。攻擊者和檢測者的支付矩陣可分別表示為:
(2)
(3)
式中,矩陣中的元素表示攻擊者和檢測者的支付函數。例如,UA的第1個元素UA11表示當攻擊者發起跨層攻擊且檢測者實施跨層檢測時攻擊者的支付函數。
博弈雙方傾向于選擇能夠最大化各自利益的策略。為便于描述模型的支付函數,定義了相應的參數,如表1所示。

表1 支付函數參數
根據定義的參數可以描述在不同策略下的支付函數。例如,策略S11=(ACL,DCL),表示攻擊者選擇跨層攻擊,同時檢測者選擇跨層檢測的策略。在這種情況下,攻擊行為被檢測到的概率為aCC,攻擊者和檢測者的支付函數可分別表示為:
UA11=(1-aCC)gAC-aCCgDC-cAC
(4)
UD11=aCCgDC-(1-aCC)gAC-cDC
(5)
如果攻擊者發起跨層攻擊而檢測者采取單層檢測策略,則攻擊者和檢測者的支付函數分別為:
UA12=(1-aSC)gAC-aSCgDC-cAC
(6)
UD12=aSCgDC-(1-aSC)gAC-cDS
(7)
如果攻防雙方選擇S13,即攻擊者發起跨層攻擊但檢測者選擇不進行檢測,顯然攻擊者能攻擊成功,相應的支付函數可分別表示為:
UA13=gAC-cAC
(8)
UD13=-gAC
(9)
類似地,攻擊者和檢測者的支付函數矩陣可分別表示為:
(10)
(11)
納什均衡即尋求非合作博弈中的最優解,在納什均衡的情況下,攻防雙方的策略對于對方來說都是最優反應。在本文的純策略博弈模型中,對支付函數的參數有一些限制。首先,收益一定大于成本,否則相應的策略為無效策略,不會被博弈雙方所選擇。由此可得到gAS>cAS、gAC>cAC、gDS>cDS、gDC>cDC。其次,跨層攻擊的收益應大于單層攻擊,跨層檢測要比單層檢測復雜,因此有gAS
純策略能為博弈雙方提供最大收益或者最佳結果。因此,它對于博弈雙方而言都是最佳策略。通過分析支付矩陣可以很容易得到純策略納什均衡。可以圈出UA矩陣中每一列的最大值以及UD矩陣中每一行的最大值,如果有一個元素在UA和UD矩陣中都被圈出了, 則找到了純策略納什均衡解。根據支付函數參數的定義,可以得到UA矩陣中每一列的最大值分別是UA31、UA12、UA13,UD矩陣中每一行的最大值分別為UD11、UD22、UD33,因此該模型沒有純策略納什均衡解。事實上,得出這個結論是合理的,因為如果檢測者實施了相應的檢測策略,則攻擊者傾向于不攻擊;如果檢測者知道攻擊者采取的攻擊策略,則檢測者將采用相應的檢測策略。
在混合策略博弈模型中,至少一方以一定概率去選擇相應的純策略。假設攻擊者分別以概率p1、p2和 (1-p1-p2)選擇攻擊策略ASL、ACL和A0, 檢測者分別以概率q1、q2和(1-q1-q2)選擇檢測策略DSL、DCL和D0,因此攻擊者和檢測者總的支付函數可分別表示為:
UA=p1q1UA11+p1q2UA12+p1(1-q1-q2)UA13+p2q1UA21+p2q2UA22+p2(1-q1-q2)UA23+(1-p1-p2)q1UA31+(1-p1-p2)q2UA32+(1-p1-p2)(1-q1-q2)UA33
(12)
UD=p1q1UD11+p1q2UD12+p1(1-q1-q2)UD13+p2q1UD21+p2q2UD22+p2(1-q1-q2)UD23+(1-p1-p2)q1UD31+(1-p1-p2)q2UD32+(1-p1-p2)(1-q1-q2)UD33
(13)
對式(12)~(13)求偏導,可得:
(14)
由式(14)可得:
(15)
(16)
采用MATLAB作為仿真工具,考慮在100 m×100 m范圍內,隨機部署50個節點,構成一個無線自組織網絡。節點的發射功率為2 mW,通信頻率為2.4 GHz。詳細的仿真參數如表2所示。

表2 仿真參數
考慮在竊聽網絡數據流、破壞網絡可用性和消耗節點能量三個攻擊場景下,對博弈模型的性能進行仿真分析,仿真場景的詳細描述如表3所示。

表3 仿真場景
在竊聽網絡數據流場景中,攻擊者選擇槽洞攻擊作為單層攻擊策略,采用MAC-Network 攻擊作為跨層攻擊策略。檢測者則采用跳數監控方法來檢測單層攻擊[24],采用基于可信的檢測方法來檢測跨層攻擊[23]。在槽洞攻擊中,攻擊者嘗試通過發送偽造的路由響應包(Route REPly,RREP)來吸引網絡流量。在MAC-Network攻擊中,攻擊者通過減小CW值來獲取信道,并發送包含極小跳數的偽造路由消息,使得周圍節點都選擇攻擊者作為路由,從而達到數據流竊聽的目的。對應的單層檢測方案主要通過監測跳數的變化來實現,跨層檢測方案通過檢測MAC層和網絡層可信值的變化來實現。仿真觀測周期為800次、間隔時間為5 s、仿真時間約為70 min,通過統計計算可得到不同攻擊和檢測策略下的成功率。仿真結果表明,單層檢測單層攻擊的成功率aSS=0.91、單層檢測跨層攻擊的成功率aSC=0.72、跨層檢測跨層攻擊的成功率aCC=0.97、跨層檢測單層攻擊成功率aCS=0.88。
在該場景中,攻擊者的收益主要由其獲得的數據包數量來決定,如槽洞攻擊中,攻擊者獲取的網絡流量越大,攻擊收益就越大。攻擊者的成本主要由其發起攻擊的次數來衡量,如在MAC層違規搶占信道的次數、在網絡層發布虛假路由信息的次數等。檢測者的收益與攻擊者的收益成正比,也就是說成功攻擊造成的損失越大,則成功檢測此次攻擊帶來的收益越大。檢測的成本由采集的數據量以及計算復雜度決定。因此,在該場景的仿真中,以攻擊者“吸引”收到的數據包數量來衡量攻擊者的收益。仿真表明,攻擊者在實施單層攻擊與跨層攻擊時接收到的數據包數量之比約為4 ∶5。單層攻擊的代價根據攻擊者發布虛假路由的次數來衡量,跨層攻擊的代價根據攻擊者在MAC層違規占用信道以及發布虛假路由的次數來衡量。經仿真得到,這兩種非正常行為的次數之比約為5 ∶7。此外,根據收益大于成本的原則,將兩種檢測成功的收益定義為檢測成本的2倍。基于以上考慮,博弈雙方支付函數的參數值可設置為:gAS=2、cAS=1、gAC=2.5、cAC=1.4、gDS=2、cDS=1、gDC=2.5、cDC=1.2。
在破壞網絡可用性場景中,攻擊者選擇MAC層的退避時間控制攻擊作為單層攻擊策略,通過縮短退避時間以不斷地占用信道,使得合法節點難以競爭到信道,從而無法使用網絡。檢測者則通過監測退避窗口值以發現此類攻擊[25]。在跨層攻擊中,攻擊者采用MAC-Network攻擊作為跨層攻擊策略。攻擊者首先通過減少CW值來獲取信道,然后發送虛假路由信息以吸引網絡數據流,最后將網絡數據流丟棄以破壞網絡的可用性。該場景中的跨層檢測策略、觀測周期、仿真時間與竊聽網絡數據流場景類似。通過仿真可計算得到aSS=0.92、aSC=0.58、aCC=0.96、aCS=0.68。此場景中,攻擊收益取決于攻擊者占用信道和破壞正常傳輸的次數,攻擊成本取決于攻擊者發起攻擊的次數。檢測收益和成本的計算方法與上一個場景類似。在該場景的仿真中,支付函數的參數值可設置為:gAS=1.8、cAS=1.2、gAC=2、cAC=1.4、gDS=1.8、cDS=0.9、gDC=2、cDC=1。
在消耗節點能量場景中,攻擊者采用MAC層的剝奪休眠攻擊作為單層攻擊策略,通過發送無意義的控制幀,使得周圍節點不斷接收控制幀并作出響應,以消耗節點能量。檢測者則通過監測節點發送的請求發送(Request To Send, RTS)幀數以檢測此類攻擊。在跨層攻擊中,攻擊者首先在MAC層采用小退避窗口攻擊以優先占用信道,然后在網絡層發送大量無用數據包以消耗節點能量。檢測者同樣采用基于可信模型的檢測方法作為跨層攻擊檢測策略。通過仿真可得aSS=0.91、aSC=0.47、aCC=0.93、aCS=0.64。攻擊收益由因攻擊行為引起其他節點額外發送和接收數據包的數量決定,攻擊成本根據發起攻擊的次數來衡量。在該場景中,同樣設置gAS=1.8、cAS=1.2、gAC=2、cAC=1.4、gDS=1.8、cDS=0.9、gDC=2、cDC=1。
在竊聽網絡數據流的場景中,由式(15)和式(16)計算得到攻擊者的混合策略納什均衡解為{0.170 2, 0.106 3, 0.723 5},檢測者的混合策略納什均衡解為 {0.050 9,0.196 3, 0.752 8}。在破壞網絡可用性場景中,攻擊者的混合策略納什均衡解為 {0.157 5, 0.161 4, 0.681 1},檢測者的混合策略納什均衡解為{0.084 5,0.118 7, 0.796 8}。在消耗節點能量場景中,攻擊者的混合策略納什均衡解為 {0.153 1, 0.168 2, 0.678 7},檢測者的混合策略納什均衡解為 {0.106 6,0.108 2, 0.785 2}。由于檢測的準確率較高,攻擊者發起攻擊的風險較高。因此,在混合策略中攻擊者大部分時間都將采取合作模式,而檢測者為了節約能量大部分時間都不采取行動。
在竊聽網絡數據流的場景中,惡意節點分別以概率0.170 2、0.106 3、0.723 5發起跨層攻擊、單層攻擊或不攻擊,檢測者分別以概率0.050 9、0.196 3、0.752 8實施跨層檢測、單層檢測和不檢測。圖1給出了在使用混合策略、僅采取單層檢測和僅采取跨層檢測情況下的檢測概率。仿真結果表明,當仿真時間超過700個觀測周期時,檢測者采用混合策略的檢測率達到了97%,高于僅采取單層檢測或跨層檢測的情況。破壞網絡可用性和消耗節點能量等場景下的檢測概率如圖2和圖3所示。同樣地,采取混合策略時的檢測概率要優于僅采取單層或跨層檢測時的檢測概率。

圖1 竊聽網絡數據流場景下的檢測概率Fig.1 Detection probability in scenario of eavesdropping on network data stream

圖2 破壞網絡可用性場景下的檢測概率Fig.2 Detection probability in the scenario of destroying network availability

圖3 消耗節點能量場景下的檢測概率Fig.3 Detection probability in the scenario of consuming energy of nodes
在采用混合策略、僅使用跨層檢測或單層檢測的情況下,以800個觀測周期作為仿真時間,分析了節點的能量消耗。仿真表明,由混合策略檢測帶來的能量消耗明顯小于由僅進行跨層檢測或單層檢測帶來的能量消耗,如圖4所示。

圖4 能量消耗分析Fig.4 Analysis of energy consumption
本文從協議層攻擊的角度構建了非合作完全信息重復博弈模型,以檢測無線自組織網絡中的跨層攻擊。在此模型的基礎上,分析了博弈雙方支付函數的策略空間,計算了混合策略納什均衡解。在無線自組織網絡仿真平臺上對模型的性能進行了仿真分析。仿真結果表明,檢測者在采用混合策略的情況下,其檢測概率高于僅使用單層檢測或跨層檢測的情況,而且在采用混合策略情況下節點的能量消耗要顯著低于僅使用單層檢測或跨層檢測的情況。下一步將在真實的無線自組織網絡中開展實驗,分析模型在實際環境中的性能。