《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 無線傳感器網(wǎng)絡(luò)的安全性研究
無線傳感器網(wǎng)絡(luò)的安全性研究
EEworld
EEworld
摘要: 無線傳感器網(wǎng)絡(luò)(WSN,,WirelessSensorNetwork)是一種自組織網(wǎng)絡(luò),,由大量具有無線通信,、數(shù)據(jù)采集和處理,、...
Abstract:
Key words :

0  引言

無線傳感器網(wǎng)絡(luò)(WSN,,Wireless Sensor Network)是一種自組織網(wǎng)絡(luò),由大量具有無線通信,、數(shù)據(jù)采集和處理,、協(xié)同合作等功能的節(jié)點(diǎn)協(xié)同組織構(gòu)成。WSN在軍事,、環(huán)境,、工控和交通等方面有著廣闊的應(yīng)用前景。由于大多數(shù)用戶對(duì)WSN的安全性有較高要求,,而WSN有著與傳統(tǒng)的Ad hoc網(wǎng)絡(luò)不同的特點(diǎn),,大多數(shù)傳統(tǒng)的安全機(jī)制和安全協(xié)議難以直接應(yīng)用于WSN,因此有必要設(shè)計(jì)適合WSN的安全性方案,。

無線傳感器網(wǎng)絡(luò)與傳統(tǒng)的ad hoc網(wǎng)絡(luò)相比有如下獨(dú)有的特點(diǎn)[1]:

(1)傳感器節(jié)點(diǎn)數(shù)量巨大,,網(wǎng)絡(luò)規(guī)模龐大;

(2)節(jié)點(diǎn)密集分布在目標(biāo)區(qū)域,;

(3)節(jié)點(diǎn)的能量,、存儲(chǔ)空間及計(jì)算能力受限,容易失效,;

(4)動(dòng)態(tài)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),;

(5)通常節(jié)點(diǎn)不具有統(tǒng)一的身份(ID)。

1  WSN的安全性問題

WSN中,,最小的資源消耗和最大的安全性能之間的矛盾,,是傳感器網(wǎng)絡(luò)安全性的首要問題。通常兩者之間的平衡需要考慮到有限的能量,、有限的存儲(chǔ)空間,、有限的計(jì)算能力、有限的通信帶寬和通信距離這五個(gè)方面的問題,。

WSN在空間上的開放性,,使得攻擊者可以很容易地竊聽、攔截,、篡改,、重播數(shù)據(jù)包。網(wǎng)絡(luò)中的節(jié)點(diǎn)能量有限,使得WSN易受到資源消耗型攻擊,。而且由于節(jié)點(diǎn)部署區(qū)域的特殊性,,攻擊者可能捕獲節(jié)點(diǎn)并對(duì)節(jié)點(diǎn)本身進(jìn)行破壞或破解。

另外,,WSN是以數(shù)據(jù)通信為中心的,,將相鄰節(jié)點(diǎn)采集到的相同或相近的數(shù)據(jù)發(fā)送至基站前要進(jìn)行數(shù)據(jù)融合,中間節(jié)點(diǎn)要能訪問數(shù)據(jù)包的內(nèi)容,,因此不適合使用傳統(tǒng)端到端的安全機(jī)制,。通常采用鏈路層的安全機(jī)制來滿足WSN的要求。

2 常見的攻擊和解決方案

在WSN協(xié)議棧的不同層次上,,會(huì)受到不同的攻擊,,需要不同的防御措施和安全機(jī)制。

2.1 物理層

物理層完成頻率選擇,、載波生成,、信號(hào)檢測(cè)和數(shù)據(jù)加密的功能。所受到的攻擊通常有:

1)擁塞攻擊:攻擊節(jié)點(diǎn)在WSN的工作頻段上不斷的發(fā)送無用信號(hào),,可以使在攻擊節(jié)點(diǎn)通信半徑內(nèi)的節(jié)點(diǎn)不能正常工作,。如這種攻擊節(jié)點(diǎn)達(dá)到一定的密度,整個(gè)網(wǎng)絡(luò)將面臨癱瘓,。

擁塞攻擊對(duì)單頻點(diǎn)無線通信網(wǎng)絡(luò)影響很大,,采用擴(kuò)頻和跳頻的方法可很好地解決它。

2)物理破壞:WSN節(jié)點(diǎn)分布在一個(gè)很大的區(qū)域內(nèi),,很難保證每個(gè)節(jié)點(diǎn)都是物理安全的,。攻擊者可能俘獲一些節(jié)點(diǎn),對(duì)它進(jìn)行物理上的分析和修改,,并利用它干擾網(wǎng)絡(luò)的正常功能,。甚至可以通過分析其內(nèi)部敏感信息和上層協(xié)議機(jī)制,破壞網(wǎng)絡(luò)的安全性,。

對(duì)抗物理破壞可在節(jié)點(diǎn)設(shè)計(jì)時(shí)采用抗竄改硬件,,同時(shí)增加物理損害感知機(jī)制。另外,,可對(duì)敏感信息采用輕量級(jí)的對(duì)稱加密算法進(jìn)行加密存儲(chǔ),。

2.2 MAC層

MAC層為相鄰節(jié)點(diǎn)提供可靠的通信通道。MAC協(xié)議分3類:確定性分配,、競爭占用和隨機(jī)訪問,。其中隨機(jī)訪問模式比較適合無線傳感網(wǎng)絡(luò)的節(jié)能要求。

隨機(jī)訪問模式中,,節(jié)點(diǎn)通過載波監(jiān)聽的方式來確定自身是否能訪問信道,,因此易遭到拒絕服務(wù)攻擊(Distributed Denial of Service,,DOS)[2]。一旦信道發(fā)生沖突,,節(jié)點(diǎn)使用二進(jìn)指數(shù)倒退算法確定重發(fā)數(shù)據(jù)的時(shí)機(jī),。攻擊者只需產(chǎn)生一個(gè)字節(jié)的沖突就可以破壞整個(gè)數(shù)據(jù)包的發(fā)送,這時(shí)接收者回送數(shù)據(jù)沖突的應(yīng)答ACK,,發(fā)送節(jié)點(diǎn)則倒退并重新選擇發(fā)送時(shí)機(jī),。如此這般反復(fù)沖突,節(jié)點(diǎn)不斷倒退,,導(dǎo)致信道阻塞,,且很快耗盡節(jié)點(diǎn)有限的能量。

目前對(duì)抗這種DOS攻擊沒有很好的解決方案,,可采用信道監(jiān)聽機(jī)制降低沖突率,。若攻擊者只是瞬間攻擊,,只影響個(gè)別數(shù)據(jù)位,,可采用糾錯(cuò)碼來對(duì)抗這種攻擊。

如MAC層協(xié)議采用時(shí)分多路復(fù)用算法為每個(gè)節(jié)點(diǎn)分配傳輸時(shí)間片,,不需要在數(shù)據(jù)傳輸前進(jìn)行協(xié)商,,可避免沖突,但也會(huì)受到DOS攻擊,。惡意節(jié)點(diǎn)會(huì)利用MAC協(xié)議的交互特性來實(shí)施攻擊,。例如,基于IEEE 802.11的MAC協(xié)議用RTS,、CTS和DATA  ACK消息來預(yù)定信道,、傳輸數(shù)據(jù)。如果惡意節(jié)點(diǎn)向某節(jié)點(diǎn)持續(xù)地用RTS消息來申請(qǐng)信道,,則目的節(jié)點(diǎn)不斷地CTS回應(yīng),。這種持續(xù)不斷的請(qǐng)求最終導(dǎo)致目的節(jié)點(diǎn)能量耗盡。

訪問控制可對(duì)抗這種攻擊,。讓節(jié)點(diǎn)自動(dòng)忽略過多的請(qǐng)求,,不必應(yīng)答每個(gè)請(qǐng)求。同時(shí)在協(xié)議中添加策略,,對(duì)過度頻繁的請(qǐng)求不予理睬,,或限制同一數(shù)據(jù)包的重傳次數(shù)。

2.3 網(wǎng)絡(luò)層

路由協(xié)議在網(wǎng)絡(luò)層實(shí)現(xiàn),。WSN中的路由協(xié)議有很多種,,主要可以分為3類,分別是以數(shù)據(jù)為中心的路由協(xié)議,、層次式路由協(xié)議以及基于地理位置的路由協(xié)議[3],。而大多數(shù)路由協(xié)議都沒有考慮安全的需求,使得這些路由協(xié)議都易遭到攻擊,從而使整個(gè)WSN崩潰,。在網(wǎng)絡(luò)層WSN受到的主要攻擊有:

1.虛假路由信息

惡意節(jié)點(diǎn)在接收到一個(gè)數(shù)據(jù)包后,,除了丟棄該數(shù)據(jù)包外,還可能通過修改源和目的地址,,選擇一條錯(cuò)誤的路徑發(fā)送出去,,從而導(dǎo)致網(wǎng)絡(luò)的路由的混亂。如果惡意的節(jié)點(diǎn)將收到的數(shù)據(jù)包全部轉(zhuǎn)向網(wǎng)絡(luò)中的某一個(gè)固定節(jié)點(diǎn),,該節(jié)點(diǎn)可能會(huì)通信阻塞和能量耗盡而失效,。

這種攻擊方式與網(wǎng)絡(luò)層協(xié)議相關(guān)。對(duì)于層次式路由協(xié)議,,可以使用輸出過濾的方法,,即對(duì)源路由進(jìn)行認(rèn)證,確認(rèn)一個(gè)數(shù)據(jù)包是否是從它的合法子節(jié)點(diǎn)發(fā)送過來的,,直接丟棄不能認(rèn)證的數(shù)據(jù)包,。

2.選擇性轉(zhuǎn)發(fā)/不轉(zhuǎn)發(fā)

惡意節(jié)點(diǎn)在轉(zhuǎn)發(fā)數(shù)據(jù)包過程中丟棄部分或全部數(shù)據(jù)包,使得數(shù)據(jù)包不能到達(dá)目的節(jié)點(diǎn),。另外惡意節(jié)點(diǎn)也可能將自己的數(shù)據(jù)包以很高的優(yōu)先級(jí)發(fā)送,,破壞網(wǎng)絡(luò)通信秩序。

通常采用多徑路由來解決這個(gè)問題,。即使惡意節(jié)點(diǎn)丟棄了數(shù)據(jù)包,,數(shù)據(jù)包仍然可以通過其它的路徑到達(dá)到目的節(jié)點(diǎn)。雖然多徑路由方式增加了數(shù)據(jù)傳輸?shù)目煽啃?,但是也引入了新的安全問題,。

3.貪婪轉(zhuǎn)發(fā)

即黑洞(sinkhole)攻擊。攻擊者利用收發(fā)能力強(qiáng)的特點(diǎn)吸引一個(gè)特定區(qū)域的幾乎所有流量,,創(chuàng)建一個(gè)以攻擊者為中心的槽洞,。基于距離向量的路由機(jī)制通過計(jì)算路徑長短進(jìn)行路由選擇,,這樣收發(fā)能力強(qiáng)的惡意節(jié)點(diǎn)通過發(fā)送0距離(表明自己到達(dá)目標(biāo)節(jié)點(diǎn)的距離為0)公告,,吸引周圍節(jié)點(diǎn)所有的數(shù)據(jù)包,在網(wǎng)絡(luò)中形成一個(gè)路由黑洞,,使數(shù)據(jù)包不能到達(dá)正確的目標(biāo)節(jié)點(diǎn),。

黑洞攻擊破壞性大,但較易被感知,。通過認(rèn)證,、多路徑路由等方法可以抵御黑洞攻擊。

4.Sybil攻擊[4]

在Sybil攻擊中,,一個(gè)節(jié)點(diǎn)以多個(gè)身份出現(xiàn)在網(wǎng)絡(luò)中的其它節(jié)點(diǎn)面前,,使其更易于成為路由路徑中的節(jié)點(diǎn),,然后與其他攻擊方法結(jié)合達(dá)到攻擊目的。Sybil攻擊能夠明顯地降低路由方案對(duì)于諸如分布式存儲(chǔ),、分散和多路徑路由,、拓?fù)浣Y(jié)構(gòu)保持的容錯(cuò)能力。它對(duì)于基于位置信息的路由協(xié)議構(gòu)成很大的威脅,。這類位置敏感的路由為了高效地為用地理地址標(biāo)識(shí)的包選路,,通常要求節(jié)點(diǎn)與它們的鄰居交換坐標(biāo)信息。一個(gè)節(jié)點(diǎn)對(duì)于相鄰節(jié)點(diǎn)來說應(yīng)該只有唯一的一組合理坐標(biāo),,但攻擊者可以同時(shí)處在不同的坐標(biāo)上,。

對(duì)抗Sybil攻擊,通常采用基于密鑰分配,、加密和身份認(rèn)證等方法,。

5.Wormholes攻擊

Wormholes攻擊通常需要兩個(gè)惡意節(jié)點(diǎn)互相串通,合謀攻擊,。一個(gè)惡意節(jié)點(diǎn)在基站附近,,另一個(gè)離基站較遠(yuǎn)。較遠(yuǎn)的節(jié)點(diǎn)聲稱自己和基站附近的節(jié)點(diǎn)可以建立低時(shí)延高帶寬的鏈路,,吸引周圍節(jié)點(diǎn)的數(shù)據(jù)包,。Wormholes攻擊很可能與選擇性轉(zhuǎn)發(fā)或Sybil攻擊相結(jié)合,。當(dāng)它與Sybil攻擊相結(jié)合的時(shí)候,,通常很難探測(cè)出。

在路由設(shè)計(jì)中加入安全等級(jí)策略可對(duì)抗wormholes攻擊,。文獻(xiàn)[5]中給出了Ad hoc網(wǎng)絡(luò)路由設(shè)計(jì)中添加安全等級(jí)的方法,,可對(duì)之稍作改進(jìn),采用基站來完成監(jiān)聽和檢測(cè)下一個(gè)節(jié)點(diǎn)信道的任務(wù),。改進(jìn)后的路由協(xié)議可對(duì)抗sinkhole和wormhole攻擊,。基于地理位置類的路由協(xié)議,,如Greedy Perimeter Stateless Routing[6],,通過定期廣播探測(cè)幀來檢測(cè)黑洞區(qū)域,可有效地發(fā)現(xiàn)和抵御sinkhole攻擊和wormholes攻擊,。

6.HELLO flood

很多路由協(xié)議需要節(jié)點(diǎn)定時(shí)發(fā)送HELLO包,,以聲明自己是其他節(jié)點(diǎn)的鄰居節(jié)點(diǎn)。攻擊者用足夠大的發(fā)射功率廣播HELLO包,,使得網(wǎng)絡(luò)中所有節(jié)點(diǎn)認(rèn)為其是鄰居節(jié)點(diǎn),,實(shí)際上卻相距甚遠(yuǎn)。如其他節(jié)點(diǎn)以普通的發(fā)射功率向它發(fā)送數(shù)據(jù)包,,則根本到達(dá)不了目的地,,從而造成網(wǎng)絡(luò)混亂,。

在路由設(shè)計(jì)中加入廣播半徑的限制可對(duì)抗HELLO flood。限制節(jié)點(diǎn)的數(shù)據(jù)發(fā)送半徑,,使它只能對(duì)這個(gè)半徑區(qū)域內(nèi)的節(jié)點(diǎn)發(fā)送數(shù)據(jù),,而不是對(duì)全網(wǎng)廣播,避免高能的攻擊者在整個(gè)網(wǎng)絡(luò)區(qū)域不斷發(fā)送數(shù)據(jù)包,,使得網(wǎng)絡(luò)節(jié)點(diǎn)不停地處理這些數(shù)據(jù),,造成DOS和能源耗盡攻擊。

2.4 傳輸層

傳輸層用于建立WSN與Internet或者其他外部網(wǎng)絡(luò)的端到端的連接,。目前在WSN大多數(shù)應(yīng)用中,,都沒有對(duì)于傳輸層的需求,傳輸層協(xié)議一般采用傳統(tǒng)網(wǎng)絡(luò)協(xié)議,。

2.5 應(yīng)用層

應(yīng)用層提供了WSN的各種實(shí)際應(yīng)用,,因此也面臨各種安全問題。密鑰管理和安全組播為整個(gè)WSN的安全機(jī)制提供了安全支撐,。

WSN中采用對(duì)稱加密算法,、低能耗的認(rèn)證機(jī)制和hash函數(shù)。目前普遍認(rèn)為可行的密鑰分配方案是預(yù)分配,,即在節(jié)點(diǎn)在部署之前,,將密鑰預(yù)先配置在節(jié)點(diǎn)中。實(shí)現(xiàn)方法有多種:
基于密鑰池的預(yù)配置方案,。每個(gè)節(jié)點(diǎn)在部署前,,從事先生成的密鑰池中隨機(jī)選取一定數(shù)目的密鑰子集,節(jié)點(diǎn)部署到指定區(qū)域后,,只與具有相同密鑰的節(jié)點(diǎn)通信,。

基于多項(xiàng)式的預(yù)配置方案。由C Blundo等人提出 [7],,能有效地抵御節(jié)點(diǎn)被捕獲,,擴(kuò)展性強(qiáng),但計(jì)算開銷大,,也不支持鄰居節(jié)點(diǎn)的身份認(rèn)證,。

利用節(jié)點(diǎn)部署信息的預(yù)配置方案。文獻(xiàn)[8,9]均是將節(jié)點(diǎn)按照地理位置關(guān)系分組,,給處于相同組或是相鄰組的節(jié)點(diǎn)之間分配共享密鑰,,使節(jié)點(diǎn)的分組模式和查詢更符合節(jié)點(diǎn)廣播特征,提高密鑰利用率,,減少了密鑰分配和維護(hù)代價(jià),。

4 結(jié)論

作為一種新的信息獲取和處理技術(shù),WSN在某些領(lǐng)域有著傳統(tǒng)技術(shù)不可比擬的優(yōu)勢(shì),,但由于傳感器網(wǎng)絡(luò)和節(jié)點(diǎn)自身的一些限制,,給它的安全性設(shè)計(jì)帶來新的挑戰(zhàn),。高效加密算法、安全的MAC協(xié)議和路由協(xié)議以及密鑰管理和安全組播等都是值得深入研究的領(lǐng)域,。

本文作者創(chuàng)新點(diǎn)在于從WSN協(xié)議棧的不同層次上探討了安全性問題,,對(duì)物理層的擁塞攻擊提出了擴(kuò)頻的方法,以及完善傳感器節(jié)點(diǎn)以對(duì)抗物理破壞,。鏈路層的DOS攻擊,,可采用糾錯(cuò)碼、訪問控制和限制重傳等抵御方法,。網(wǎng)絡(luò)層的路由協(xié)議中增加安全機(jī)制,,可采用層次路由、多徑傳輸,、安全等級(jí)和廣播半徑限制等方法,。密鑰管理和安全組播為整個(gè)WSN提供了安全支撐。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。