顧偉剛,馬 征,2,王國軍*
(1.中南大學(xué)信息科學(xué)與工程學(xué)院,長沙 410083;2.湖南大學(xué)信息科學(xué)與工程學(xué)院,長沙 410082)
無線傳感器網(wǎng)絡(luò)(WSNs)是由一組傳感器節(jié)點以Ad Hoc方式構(gòu)成的無線網(wǎng)絡(luò),其目的是協(xié)作地感知、采集和處理網(wǎng)絡(luò)覆蓋地理區(qū)域中感知對象的信息,并發(fā)送給觀察者[1]。由于其具有部署靈活、維護(hù)簡單等特點而在事件監(jiān)測、軍事監(jiān)控、氣候預(yù)測等方面有著廣泛的應(yīng)用前景。而WSNs通常部署在無人維護(hù)、不可控制的環(huán)境中,使其除了具有一般無線網(wǎng)絡(luò)所面臨的信息泄露、信息竄改、重放攻擊、拒絕服務(wù)等多種威脅外,它還面臨傳感節(jié)點容易被攻擊者物理操縱,并獲取存儲在傳感節(jié)點中的所有信息,從而控制部分網(wǎng)絡(luò)的威脅。所以路由安全問題始終是傳感器網(wǎng)絡(luò)的研究熱點。
近年來,學(xué)術(shù)界已提出了一些安全路由協(xié)議[2],但是這些路由協(xié)議一般采用多路徑路由、身份認(rèn)證、認(rèn)證廣播等機(jī)制來抵御攻擊。加密安全機(jī)制不能有效解決上面提到的攻擊手段[3],因為一旦傳感器節(jié)點被破壞,攻擊者將很容易獲得該節(jié)點的加密、解密密鑰,即便攻擊者不知道密鑰,也可以使用拒絕服務(wù)攻擊。使用多路徑路由(如文獻(xiàn)[4-6])也不能有效地解決上述攻擊手段,事實證明節(jié)點不相交的多路徑路由是很難實現(xiàn)的[7]。如果給定網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),那么基于該結(jié)構(gòu)的路由算法也是固定的,路徑是由路由算法確定的,也就是說如果路由算法確定了,路由路徑也就確定了。如果路由算法泄露了,攻擊者可以計算出任意源節(jié)點和目的節(jié)點的路徑,精確地破壞或阻塞每次路由過程中的重要節(jié)點,從而攔截每一份信息。
文獻(xiàn)[8]提出了一種產(chǎn)生隨機(jī)分散多路徑路由的機(jī)制,如圖1,使用(T,M)門限秘密共享機(jī)制把數(shù)據(jù)包分割成M份,每一小份數(shù)據(jù)再通過隨機(jī)分散路由發(fā)送出去,這樣即使路由算法暴露了,攻擊者也無法精確地、完整地截獲數(shù)據(jù)包信息。而sink節(jié)點只要得到T份數(shù)據(jù),便可恢復(fù)原始信息。但是該算法存在以下問題:
(1)如果數(shù)據(jù)在正常路由階段遭到攻擊,那么此機(jī)制并不能保證sink節(jié)點獲得正確的結(jié)果。對于這類問題,可以使用基于目擊者模型[9]的數(shù)據(jù)融合算法來處理,并假設(shè)這類問題已得到解決,本文其他部分不再對其討論。事實上文獻(xiàn)[10]使用直接投票機(jī)制對目擊者模型做了較大改進(jìn),使其更加健壯、安全、可靠;
(2)只考慮了單個源節(jié)點的情況,現(xiàn)實世界中,往往有多個節(jié)點同時監(jiān)測環(huán)境并發(fā)送數(shù)據(jù),經(jīng)過路由后發(fā)送到融合節(jié)點,數(shù)據(jù)經(jīng)融合后再發(fā)給sink節(jié)點或基站。在小份數(shù)據(jù)中加入源節(jié)點ID字段可以解決此問題,本文其他部分不再做詳細(xì)討論;
(3)只考慮了產(chǎn)生黑洞[11]的攻擊手段,如圖2,如果路由轉(zhuǎn)發(fā)路徑中有復(fù)制節(jié)點存在,攻擊者就可以任意操縱復(fù)制節(jié)點篡改數(shù)據(jù),從而對sink節(jié)點恢復(fù)數(shù)據(jù)的過程產(chǎn)生影響。即使sink節(jié)點最后能得到T份數(shù)據(jù),也無法恢復(fù)原始信息,這不僅不能保證網(wǎng)絡(luò)的安全性,整個網(wǎng)絡(luò)節(jié)點的能量也會產(chǎn)生巨大損耗。
圖1 WSNs:隨機(jī)分散路由過程
圖2 受到復(fù)制節(jié)點攻擊的路由過程
本文主要討論在隨機(jī)分散路由過程中如何避免節(jié)點復(fù)制攻擊:攻擊者通過妥協(xié)攻擊竊取傳感器節(jié)點的密鑰信息及各種參數(shù),一旦攻擊者掌握了這些信息,便可以復(fù)制出一系列這樣的節(jié)點,并作為偽節(jié)點加入原有網(wǎng)絡(luò)。如果這些復(fù)制節(jié)點(妥協(xié)節(jié)點及其復(fù)制節(jié)點)沒有被發(fā)現(xiàn),攻擊者將進(jìn)一步對網(wǎng)絡(luò)發(fā)起攻擊,或者利用多個復(fù)制節(jié)點發(fā)布虛假信息,這種通過節(jié)點復(fù)制方式進(jìn)行的攻擊會導(dǎo)致整個網(wǎng)絡(luò)數(shù)據(jù)的安全性和準(zhǔn)確性遭到破壞和降低。
為了更好地闡述本文提出的路由算法,提出如下假設(shè):①每個傳感器節(jié)點編號(ID)唯一;投放后節(jié)點能識別自身所在的地理位置;②妥協(xié)節(jié)點及其復(fù)制節(jié)點使用相同的ID來標(biāo)識,文獻(xiàn)[12]描述的方法使攻擊者用任意ID將復(fù)制節(jié)點注入網(wǎng)絡(luò)變得難以實現(xiàn);③復(fù)制節(jié)點與正常節(jié)點工作方式相同,節(jié)點的任何異常行為,例如拒絕申報所在位置,都將被其鄰居節(jié)點揭發(fā);④所有傳感器節(jié)點都是時間同步的。
本文最大的貢獻(xiàn)是基于節(jié)點行為信任模型和節(jié)點復(fù)制檢測機(jī)制,提出了一種改進(jìn)的隨機(jī)分散路由算法,且使無線傳感器網(wǎng)絡(luò)能抵御節(jié)點復(fù)制、節(jié)點損壞和拒絕服務(wù)攻擊。本節(jié)將詳細(xì)描述此算法。
圖3描述了WSNs中安全信息傳輸?shù)娜齻€階段:門限加密階段,隨機(jī)分散路由階段,正常路由到sink節(jié)點。感知傳感器監(jiān)測環(huán)境因素、參數(shù),當(dāng)一個節(jié)點想給sink節(jié)點或基站發(fā)送數(shù)據(jù)時,首先把大數(shù)據(jù)經(jīng)(T,M)-門限加密(如 Shamir算法[13])切割成 M 小份。接著每一小份隨機(jī)選擇下一跳轉(zhuǎn)播,下一跳將按照同樣的方式隨機(jī)再選擇下一跳轉(zhuǎn)播等等。每一小份數(shù)據(jù)中攜有一個TTL字段。TTL字段表示隨機(jī)轉(zhuǎn)播的次數(shù),此字段值由源節(jié)點給出。每轉(zhuǎn)播一次,此TTL字段值減1,當(dāng)TTL值為0時,將會結(jié)束隨機(jī)轉(zhuǎn)播過程并且開始使用單路徑路由轉(zhuǎn)播數(shù)據(jù)。
圖3 WSNs:改進(jìn)的隨機(jī)分散路由過程
為了抵御復(fù)制節(jié)點攻擊,本文在隨機(jī)分散路由階段引入了沖突檢測和節(jié)點行為信任模型,具體算法描述如下:
步驟1:簇的形成:在LEACH算法[14]中加入節(jié)點信任等級,改進(jìn)簇頭選擇時閾值I的計算方法,閾值的大小由下式確定:
其中:p是網(wǎng)絡(luò)中簇頭所占比例,r是目前進(jìn)行的回合次,G是在最后1/p輪中沒有成為簇頭的節(jié)點集合,ri(t)是節(jié)點i的信任等級,TH0是信任閾值。除閾值外,此階段簇頭選舉過程與LEACH算法相同。當(dāng)簇頭選定后,向其他節(jié)點廣播自己成為簇頭的消息,其他節(jié)點根據(jù)接收到消息信號的強(qiáng)度來決定加入哪個簇。
步驟2:位置信息發(fā)送期:各節(jié)點向周圍鄰居節(jié)點廣播位置信息,由鄰居節(jié)點在簇內(nèi)隨機(jī)選擇若干節(jié)點將位置信息發(fā)送出去。
步驟3:沖突檢測期:節(jié)點檢查是否收到重復(fù)的位置信息,一旦發(fā)現(xiàn)立即報告給簇頭。檢測期結(jié)束,各節(jié)點立即清空接收到的位置信息以節(jié)約存儲空間。
步驟4:位置信息融合期:各簇頭節(jié)點有序融合節(jié)點位置信息并隔離所發(fā)現(xiàn)的復(fù)制節(jié)點。2.1節(jié)將詳細(xì)介紹如何在簇形成后檢測并隔離復(fù)制節(jié)點。
步驟5:隨機(jī)分散路由期:初始化節(jié)點信任值,信息隨機(jī)轉(zhuǎn)播。簇頭節(jié)點使用節(jié)點行為信任模型(將在2.2節(jié)詳細(xì)介紹)定期計算出各個節(jié)點的信任值并廣播給簇內(nèi)節(jié)點。當(dāng)前節(jié)點根據(jù)上一跳節(jié)點的信任值決定是否接收或轉(zhuǎn)播數(shù)據(jù)。
網(wǎng)絡(luò)分簇后,節(jié)點開始向周圍的鄰居節(jié)點廣播帶有簽名的位置信息。鄰居節(jié)點判斷接收到的位置信息是否來自同一簇,如果不是則丟棄。對位置信息進(jìn)行簽名認(rèn)證后,鄰居節(jié)點在簇內(nèi)隨機(jī)選擇若干節(jié)點作為目的地將位置信息發(fā)送出去,被隨機(jī)選中的節(jié)點稱為證人節(jié)點[15]。簇內(nèi)每個節(jié)點既向外發(fā)送位置信息同時自身也接收位置信息。
證人節(jié)點接收位置信息,認(rèn)證簽名后將其存儲;檢查之前接收到的所有位置信息,一旦發(fā)現(xiàn)其中有ID相同而位置不同的位置信息,便成功找到一個關(guān)于此ID的復(fù)制節(jié)點,并報告簇頭節(jié)點進(jìn)而將簇內(nèi)所有使用該ID的節(jié)點隔離?!吧浙U摗保?6]確保一定數(shù)量的證人節(jié)點能夠?qū)崿F(xiàn)以上過程。
假設(shè)節(jié)點α遭到攻擊者妥協(xié),攻擊者將若干個α節(jié)點的復(fù)制節(jié)點注入網(wǎng)絡(luò);設(shè)恰好有G個復(fù)制節(jié)點落入節(jié)點α所屬的簇,并在簇內(nèi)分布于G個不同的地理位置;設(shè)每個節(jié)點平均有t個同簇的鄰居節(jié)點,鄰居節(jié)點隨機(jī)選擇m個證人節(jié)點作為位置信息的接收地。由于有可能發(fā)生重復(fù)選擇,任一節(jié)點的實際證人節(jié)點總數(shù)將小于或等于t·m。
復(fù)制節(jié)點能否被檢測出來,取決于簇內(nèi)是否有復(fù)制節(jié)點選擇了相同的節(jié)點作為證人節(jié)點。設(shè)整個網(wǎng)絡(luò)有n個節(jié)點,分為k個簇;設(shè)G個復(fù)制節(jié)點的證人節(jié)點都不相同的概率為P,依據(jù)“生日悖論”的推導(dǎo)公式有:
因此,G個復(fù)制節(jié)點的證人節(jié)點至少有一個相同的概率為:
單個非簇頭節(jié)點收到70個位置信息時,檢測率可達(dá)90%。由以上過程可以看出,當(dāng)節(jié)點數(shù)目、分簇數(shù)目和復(fù)制節(jié)點個數(shù)固定時,增加證人節(jié)點數(shù)目和增加鄰居節(jié)點數(shù)目都可以提高簇內(nèi)復(fù)制節(jié)點的檢測概率。由于傳感器網(wǎng)絡(luò)是一種資源受限的網(wǎng)絡(luò),在本文中只對網(wǎng)絡(luò)做簇內(nèi)局部檢測,找出復(fù)制節(jié)點并進(jìn)行隔離。
所謂信任模型,是指通過節(jié)點本身及與其他節(jié)點交互的歷史來建立量化的評價體系,以信任值度量節(jié)點的可信程度。網(wǎng)絡(luò)節(jié)點信任不僅包括對節(jié)點的身份信任,也包括對節(jié)點的行為信任。
在無線傳感器網(wǎng)絡(luò)中,參與路由的傳感器節(jié)點的行為(即節(jié)點的輸出數(shù)據(jù))不僅與節(jié)點本身的歷史有關(guān)(時間相關(guān)),還與同區(qū)域內(nèi)其他節(jié)點的數(shù)據(jù)相關(guān)(空間相關(guān))。并且節(jié)點行為特征隨時間的變化規(guī)律具有某些統(tǒng)計特征。
若傳感器網(wǎng)絡(luò)中某一區(qū)域參與路由的傳感器集合為S=(S1,S2,…,Sn),Zi(k)表示k時刻傳感器Si的輸出。假設(shè)系統(tǒng)可用如下狀態(tài)方程和輸出方程描述:
其中:Φ(k),G(k),H(k)分別表示狀態(tài)轉(zhuǎn)移矩陣、過程噪聲分布矩陣及輸出矩陣,式(5)中省略了各傳感器編號的下標(biāo);V(k)和W(k)分別表示具有零均值和正定協(xié)方差矩陣的高斯噪聲向量。采用Kalman濾波算法進(jìn)行狀態(tài)更新。
文獻(xiàn)[17]詳細(xì)介紹了這一過程,作者使用相似度矩陣和傳感器節(jié)點兩兩之間的標(biāo)準(zhǔn)化方差來計算各個節(jié)點的信任值,并根據(jù)需要劃分信任閾值。在隨機(jī)分散路由轉(zhuǎn)播過程中,當(dāng)前節(jié)點將根據(jù)上一跳節(jié)點信任值來決定是否接收并轉(zhuǎn)播數(shù)據(jù)。
考慮一個200 m×200 m的正方形場景,如圖4,傳感器均勻隨機(jī)分布。正方形的中心是坐標(biāo)原點,黑洞區(qū)域是被損壞節(jié)點的外接圓,Re表示黑洞的半徑,網(wǎng)絡(luò)中傳感器節(jié)點個數(shù)NN=2000。sink節(jié)點和黑洞中心的坐標(biāo)分別為:(100,0)和(50,0)。每個傳感器的感知半徑Rh=10 m。在網(wǎng)絡(luò)啟動后,任何經(jīng)過此圓的路由都是易受攻擊的,假設(shè)經(jīng)過黑洞(半徑是10 m的圓形區(qū)域)的數(shù)據(jù)包全部被攻擊者攔截。
圖4 模擬網(wǎng)絡(luò)場景
隨機(jī)轉(zhuǎn)播階段之后,每一小份數(shù)據(jù)都以最小跳數(shù)傳遞給sink節(jié)點。文獻(xiàn)[7]提出了四種隨機(jī)轉(zhuǎn)播機(jī)制,本文采用結(jié)果最優(yōu)的DRP(定向隨機(jī)轉(zhuǎn)播)機(jī)制。由于本文引入了沖突檢測機(jī)制和節(jié)點行為信任模型,因此稱該機(jī)制為Trust-DRP(簡稱T-DRP)。
源節(jié)點的坐標(biāo)是(-50,0),網(wǎng)絡(luò)中復(fù)制節(jié)點的概率是2%。圖5和圖6分別表示隨著TTL值(N)和小數(shù)據(jù)包份數(shù)(M)的增加,信息攔截概率的變化情況。可以看到,兩種情況下攔截概率均隨著M、N的值增大而降低。圖7表示隨著黑洞半徑(Re)的增加,信息攔截概率的變化情況??梢钥吹?,兩種情況下攔截概率均隨著黑洞半徑的增大而升高。
圖5 信息攔截概率隨TTL值變化
圖6 信息攔截概率隨M值變化
圖7 信息攔截概率隨Re值變化
圖8 信息篡改概率隨TTL值和M值變化
圖8表示隨著TTL值(N)的增加及M值的變化,信息篡改概率的變化情況。可以看到,隨著N值的增大信息被篡改的概率也在升高,而M值的變化對概率影響并不大。因此在后面的模擬中,本文只觀測各項指標(biāo)隨N值的變化情況;另外,T-DRP的結(jié)果明顯好于DRP,因為在隨機(jī)路由過程中,信任模型會計算各節(jié)點的信任值,并對信任值低于信任閾值的節(jié)點進(jìn)行隔離。圖9表示隨著TTL值(N)的增加,平均無效轉(zhuǎn)播概率的變化情況。可以看到,隨著TTL值(N)的增加概率也在升高,T-DRP的概率明顯低于DRP,因為在檢測到上一跳節(jié)點不可信時,當(dāng)前節(jié)點會直接丟棄小份數(shù)據(jù)。圖10表示隨著TTL值(N)的增加,sink節(jié)點收到篡改小數(shù)據(jù)個數(shù)的變化情況,T-DRP的結(jié)果明顯好于DRP,sink節(jié)點很可能會使用被篡改的小份數(shù)據(jù)恢復(fù)原始信息,這不但無法恢復(fù)原始信息,在某些精密計算中還會造成嚴(yán)重后果。
圖9 平均無效轉(zhuǎn)播概率真隨TTL值變化
圖10 平均篡改數(shù)據(jù)隨TTL值變化
從上面分析可以看出,本文所做的改進(jìn)并不會影響信息攔截概率。本文的貢獻(xiàn)是在有復(fù)制節(jié)點攻擊的情況下,阻止被篡改數(shù)據(jù)的進(jìn)一步傳輸,減少網(wǎng)絡(luò)能量的損耗,且讓sink節(jié)點接收到正確的數(shù)據(jù),從而恢復(fù)出正確信息。
模擬顯示基于信任模型的隨機(jī)分散路由算法使整個路由既可以抵卸節(jié)點損壞、拒絕服務(wù)攻擊,也可以抵御節(jié)點復(fù)制攻擊。數(shù)據(jù)受損概率低至10-3,比確定路徑的多路徑路由算法要要低得多。該算法使整個數(shù)據(jù)收集過程更安全,提高了數(shù)據(jù)傳輸效率,延長了網(wǎng)絡(luò)壽命。
在沖突檢測方案中,如果想得到更好的結(jié)果仍需要進(jìn)行全局檢測,但是隨著節(jié)點位置信息的增長,節(jié)點編號較大的簇頭節(jié)點的計算開銷和存儲開銷將非常大。文獻(xiàn)[18]提出了一個保護(hù)鄰居節(jié)點發(fā)現(xiàn)、避免節(jié)點損壞的理論模型,可以在一定程度上避免這種情況。此文獻(xiàn)還提出一種在部署節(jié)點時基于安全屬性的高效的、局部的解決方案,在處理節(jié)點損壞、節(jié)點復(fù)制時能夠保證一定的安全性。未來將基于此模型進(jìn)一步優(yōu)化。
[1]李建中,李金寶,石勝飛.傳感器網(wǎng)絡(luò)及其數(shù)據(jù)管理的概念、問題與進(jìn)展[J].軟件學(xué)報,2003,14(10):1718-1727.
[2]覃伯平,周賢偉,楊軍.無線傳感器網(wǎng)絡(luò)的安全路由技術(shù)研究[J].傳感技術(shù)學(xué)報,2006,19(1):16-19.
[3]趙章界,劉海峰.無線傳感網(wǎng)中的安全問題[J].計算機(jī)安全,2010(6):4-7.
[4]Lou W,Liu W,F(xiàn)ang Y.Spread:Enhancing Data Confidentiality in Mobile Ad Hoc Networks[C]//Proc.IEEE INFOCOM Conference,Mar.2004,vol.4,pages 2404-2413.
[5]Lou W,Kwon Y.H-spread:A Hybrid Multipath Scheme for Secure and Reliable Data Collection in Wireless Sensor Networks[J].IEEE Transactions on Vehicular Technology,Jul.2006,55(4):1320-1330.
[6]Lee P C,Misra V,Rubenstein D.Distributed Algorithms for Secure Multipath Routing in Attack-Resistant Networks[J].IEEE/ACM Transactions on Networking,Dec.2007,15(6):1490-1501.
[7]Ye Z,Krishnamurthy V,Tripathi S K.A Framework for Reliable Routing in Mobile Ad Hoc Networks[C]//Proc.IEEE Infocom Conference,Mar.2003,vol.1,pages 270-280.
[8]Shu T,Liu S,Krunz M.Secure Data Collection in Wireless Sensor Networks Using Randomized Dispersive Routes[J].IEEE Transactions on Mobile Computing,2010,pages 941-954.
[9]Du W,Deng J,Han Y S.A Witness-Based Approach for Data Fusion Assurance in Wireless Sensor Networks[C]//Proc.IEEE Global Telecomm Conference,Dec.2003,vol.3,pages 1435-1439.
[10]Pai H T,Han Y S.Power-Efficient Direct-Voting Assurance for Data Fusion in Wireless Sensor Networks[J].IEEE Transactions on Computers,F(xiàn)eb.2008,57(2):261-273.
[11]Akyildiz I F,Su W,Sankarasubramaniam Y,et al.A Survey on Sensor Networks[J].IEEE Communications Magazine,Aug.2002,40(8):102-114.
[12]Newsome J,Shi E,Song E,et al.The Sybil Attack in Sensor Networks:Analysis and Defenses[C]//Proc.IEEE Conference on Information Processing in Sensor Networks(IPSN),Apr.2004,pages 259-268.
[13]Stinson D R.Cryptography,Theory and Practice.CRC Press,2006.
[14]李田,史浩山,楊俊剛.無線傳感器網(wǎng)LEACH協(xié)議成簇算法研究[J].傳感技術(shù)學(xué)報,2010,23(8):1158-1162.
[15]劉帥,林亞平,余建平.基于簇的傳感器網(wǎng)絡(luò)節(jié)點復(fù)制攻擊檢測[J].計算機(jī)仿真,2007,24(06):129-132.
[16]韓屏,李方敏.無線傳感網(wǎng)絡(luò)中基于生日悖論的分簇算法[J].小型微型計算機(jī)系統(tǒng),2007,28(11):110-114.
[17]朱程,周嗚爭,許金生.BTSR:一種基于行為可信的安全數(shù)據(jù)融合與路由算法[J].計算機(jī)應(yīng)用,2008,28(11):2820-2823.
[18]Liu D.Protecting Neighbor Discovery Against Node Compromises in Sensor Networks[C]//Proc.IEEE International Conference on Distributed Computing Systems,2009,9:579-588.