基于跳數(shù)的防御無線傳感器網(wǎng)絡(luò)中蟲洞攻擊方案
無線傳感器網(wǎng)絡(luò)作為一種新型的無線網(wǎng)絡(luò)形式,有著很好的發(fā)展前景。與此同時(shí),由于無線傳感器網(wǎng)絡(luò)自組織、無控制中心和拓?fù)漕l繁變化等特點(diǎn),其安全性也受到了越來越多的關(guān)注。無線傳感器網(wǎng)絡(luò)中的蟲洞攻擊就是一種主要針對(duì)網(wǎng)絡(luò)路由協(xié)議的惡意攻擊,該攻擊通過擾亂網(wǎng)絡(luò)路由層數(shù)據(jù)分組的傳輸,達(dá)到攻擊整個(gè)網(wǎng)絡(luò)的目的?,F(xiàn)有的針對(duì)蟲洞攻擊檢測(cè)和防御的相關(guān)研究中,有的方案引入GPS模塊或者有向天線等輔助硬件,還有一些方案依賴于網(wǎng)絡(luò)節(jié)點(diǎn)精確的地理位置信息或者節(jié)點(diǎn)之間的時(shí)鐘同步來對(duì)攻擊節(jié)點(diǎn)進(jìn)行定位。這些方案對(duì)能量資源和處理能力都有限的網(wǎng)絡(luò)節(jié)點(diǎn)來說,是很大的挑戰(zhàn)。本文基于無線傳感器網(wǎng)絡(luò)反應(yīng)式路由協(xié)議——AODV路由協(xié)議,不需引入輔助硬件,也不要求節(jié)點(diǎn)間時(shí)鐘同步,僅通過對(duì)路由協(xié)議進(jìn)行優(yōu)化,來實(shí)現(xiàn)對(duì)蟲洞攻擊的防御。
1 蟲洞攻擊
蟲洞攻擊一般由至少兩個(gè)相距較遠(yuǎn)的惡意節(jié)點(diǎn)合謀發(fā)起,合謀節(jié)點(diǎn)之間建立一條比正常節(jié)點(diǎn)間高效的私有信道。當(dāng)蟲洞攻擊發(fā)起時(shí),合謀節(jié)點(diǎn)之一在網(wǎng)絡(luò)的一端獲取網(wǎng)絡(luò)中的數(shù)據(jù)分組,通過私有信道將數(shù)據(jù)分組傳遞至另一個(gè)合謀節(jié)點(diǎn),然后該合謀節(jié)點(diǎn)再把數(shù)據(jù)分組重放回網(wǎng)絡(luò)中。數(shù)據(jù)分組在私有信道的傳遞過程中被惡意節(jié)點(diǎn)實(shí)施選擇性丟棄或者數(shù)據(jù)篡改等惡意行為,實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)的攻擊。蟲洞攻擊模型如圖1所示。
N1和N2是網(wǎng)絡(luò)中相距較遠(yuǎn)的兩個(gè)節(jié)點(diǎn),兩節(jié)點(diǎn)不在可通信范圍之內(nèi)。正常情況下,兩者需要經(jīng)過多跳路由才能實(shí)現(xiàn)互相通信。M1和M2是兩個(gè)惡意節(jié)點(diǎn),它們之間建立起一條私有信道。M1和M2分別處于N1和N2的通信范圍,當(dāng)N1發(fā)送數(shù)據(jù)時(shí),M1會(huì)首先收到該數(shù)據(jù),然后M1通過私有信道把該數(shù)據(jù)傳遞給其合謀節(jié)點(diǎn)M2。M2接收到數(shù)據(jù)后繼續(xù)將其轉(zhuǎn)發(fā)給N2。這樣,N1和N2就會(huì)誤認(rèn)為彼此是鄰居節(jié)點(diǎn),M1和M2也因此獲得路由權(quán)。
表面現(xiàn)象讓我們覺得,如果蟲洞合謀節(jié)點(diǎn)是忠實(shí)可靠的節(jié)點(diǎn),蟲洞私有信道反而形成了一條更加高效的網(wǎng)絡(luò)鏈路,提供了一個(gè)高效的網(wǎng)絡(luò)連接服務(wù),有效地減少了數(shù)據(jù)傳輸?shù)难訒r(shí)。但實(shí)際上,蟲洞合謀節(jié)點(diǎn)在數(shù)據(jù)傳遞的過程中并不忠實(shí)于傳遞所有數(shù)據(jù),而是對(duì)數(shù)據(jù)包實(shí)施選擇性丟棄或者數(shù)據(jù)篡改等惡意行為。更嚴(yán)重的是,即使網(wǎng)絡(luò)通信已經(jīng)采用了加密或認(rèn)證機(jī)制,惡意節(jié)點(diǎn)仍然可以發(fā)起蟲洞攻擊。
2 相關(guān)工作
參考文獻(xiàn)中提出了“數(shù)據(jù)包限制”機(jī)制,并采用一種有效的認(rèn)證協(xié)議TIK來對(duì)蟲洞節(jié)點(diǎn)檢測(cè)和防御。該機(jī)制的主要思想是在數(shù)據(jù)分組中附加地理限制信息或者時(shí)間限制信息來限制分組的最大傳輸距離。數(shù)據(jù)分組接收節(jié)點(diǎn)依據(jù)附加在數(shù)據(jù)分組中的地理限制信息或者時(shí)間限制信息來計(jì)算自己到發(fā)送節(jié)點(diǎn)間的最大傳輸距離,由此判斷數(shù)據(jù)分組來源的合法性。這種機(jī)制需要網(wǎng)絡(luò)中節(jié)點(diǎn)真實(shí)的地理信息和精確的時(shí)鐘同步。
參考文獻(xiàn)從數(shù)據(jù)分組的延時(shí)出發(fā)提出了蟲洞攻擊的檢測(cè)方案:記錄從源節(jié)點(diǎn)到目的節(jié)點(diǎn)之間所有的不相交路徑,然后計(jì)算出每條路徑的長(zhǎng)度和延時(shí),進(jìn)而得到每條路徑平均每跳的延時(shí)。如果存在一條路徑,其平均每跳的延時(shí)相比較于其他路徑的平均每跳延時(shí)異常地大,那么就認(rèn)為這條路徑遭受到蟲洞攻擊。這種機(jī)制同樣需要網(wǎng)絡(luò)中節(jié)點(diǎn)的時(shí)鐘同步。
參考文獻(xiàn)基于數(shù)據(jù)包往返時(shí)間(RTT)的方法檢測(cè)蟲洞的存在,因?yàn)橄x洞節(jié)點(diǎn)之間傳輸數(shù)據(jù)包的RTT必然大于真實(shí)鄰居節(jié)點(diǎn)之間的RTT。這種方法雖然不需要額外的硬件,但是也需要網(wǎng)絡(luò)中節(jié)點(diǎn)的時(shí)鐘同步。
參考文獻(xiàn)提出使用統(tǒng)計(jì)分析的方法進(jìn)行蟲洞檢測(cè)。在蟲洞攻擊下,惡意節(jié)點(diǎn)所在的路徑在路由表中出現(xiàn)的比例將很高。此方案統(tǒng)計(jì)出出現(xiàn)比例較高的路徑,并使用測(cè)試包對(duì)其進(jìn)行測(cè)試,由此來確定惡意節(jié)點(diǎn)。但是這種方法只適合在多路徑協(xié)議中使用,對(duì)AODV等單播路由協(xié)議是失效的。
評(píng)論