《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 業(yè)界動態(tài) > Ad Hoc網(wǎng)絡(luò)洪泛攻擊防御的研究

Ad Hoc網(wǎng)絡(luò)洪泛攻擊防御的研究

2008-03-20
作者:李邵梅,劉 強,陳鴻昶,劉力雄

  摘 要: 針對移動Ad Hoc網(wǎng)絡(luò)反應(yīng)式路由的洪泛攻擊,分析了現(xiàn)有的抵御洪泛攻擊的FAP方案的安全漏洞,提出了一種簡單易行的CSR方案,并與FAP方案進行了對比。
  關(guān)鍵詞: 移動Ad Hoc網(wǎng)絡(luò) 反應(yīng)式路由? 洪泛攻擊? FAP方案

?

  移動Ad Hoc網(wǎng)絡(luò)是一種新型的移動多跳無線網(wǎng)絡(luò),它不依賴于任何固定的基礎(chǔ)設(shè)施和管理中心,而是通過傳輸范圍有限的移動節(jié)點間的相互協(xié)作和自我組織來保持網(wǎng)絡(luò)連接并實現(xiàn)數(shù)據(jù)的傳遞。Ad Hoc網(wǎng)絡(luò)中路由的特殊性使其成為Ad Hoc網(wǎng)絡(luò)中的重要問題,一直是該領(lǐng)域的研究熱點。目前,較為成熟且已在Ad Hoc網(wǎng)絡(luò)中廣為使用的路由協(xié)議" title="路由協(xié)議">路由協(xié)議有優(yōu)化鏈路" title="鏈路">鏈路狀態(tài)路由算法OLSR(Optimized Link State Routing Protocol)、動態(tài)源路由DSR(Dynamic Source Routing)、按需距離矢量路由AODV (Ad Hoc On-Demand Distance Vector Routing)等。同時,隨著各類攻擊的出現(xiàn),基于安全的Ad Hoc路由協(xié)議也相繼產(chǎn)生[1~4]。
  洪泛攻擊是新近提出的一種針對Ad Hoc網(wǎng)絡(luò)中反應(yīng)式路由的攻擊類型,分為RREQ報文和數(shù)據(jù)報文攻擊兩種。它通過在網(wǎng)絡(luò)中引發(fā)拒絕服務(wù),能夠?qū)ΜF(xiàn)有的所有反應(yīng)式路由進行攻擊。Ping Yi等人首次提出了這種攻擊的模型[5],同時給出了抵御這種攻擊的洪泛攻擊預(yù)防FAP(Flooding Attack Prevention)方案。
針對FAP方案的不足,本文提出了通信狀態(tài)記錄CSR(Communication Status Record)方案。該方案中各節(jié)點通過實時記錄與其相關(guān)聯(lián)的節(jié)點及鏈路的狀態(tài),從而可以有效地辨別非法節(jié)點,避免為非法節(jié)點轉(zhuǎn)發(fā)報文,達到抵御洪泛攻擊的效果。
1 背景知識
1.1 反應(yīng)式路由簡介
  反應(yīng)式路由協(xié)議又稱為按需路由協(xié)議,是一種當需要發(fā)送數(shù)據(jù)時才查找路由的路由算法。在這種路由協(xié)議中,節(jié)點不需要維護及時、準確的路由信息,當需要向目的節(jié)點發(fā)送報文時,源節(jié)點才在網(wǎng)絡(luò)中發(fā)起路由查找過程,找到相應(yīng)的路由。常用的反應(yīng)式路由協(xié)議有DSR、AODV等。與先驗式路由協(xié)議相比,反應(yīng)式路由協(xié)議的開銷較小,應(yīng)用更廣泛。

?


  以AODV路由協(xié)議為例,RREQ報文的傳播路徑如圖1所示。圖中當節(jié)點A要發(fā)起與節(jié)點B的通信時,A先在網(wǎng)絡(luò)中洪泛路由請求RREQ(Route Request)尋路報文。實箭頭方向為RREQ洪泛的方向,目的節(jié)點收到RREQ報文后,不再轉(zhuǎn)發(fā)。
  中間節(jié)點接收RREQ報文后進行轉(zhuǎn)發(fā),同時在自身的路由表" title="路由表">路由表中增加一個表項,用來記錄從本節(jié)點到源節(jié)點的反向路徑。反向路徑示意圖如圖2所示。虛箭頭方向為各節(jié)點建立的朝源節(jié)點的反向鏈路。
  目的節(jié)點接收到RREQ報文后,不再轉(zhuǎn)發(fā)該RREQ報文,并回送路由應(yīng)答RREP(Route Reply)報文。RREP報文沿RREQ報文到達的反方向,依次到達轉(zhuǎn)發(fā)RREQ報文的各中間節(jié)點,中間節(jié)點沿自身路由表中保存的反向路徑,向源節(jié)點轉(zhuǎn)發(fā)RREP報文。數(shù)據(jù)報文傳輸路徑如圖3所示。實箭頭方向為目的節(jié)點發(fā)送RREP的鏈路,源節(jié)點沿虛箭頭方向向目的節(jié)點發(fā)送數(shù)據(jù)包。在此后的通信中,源節(jié)點沿RREP報文的反方向向目的節(jié)點發(fā)送數(shù)據(jù)報文。
  鏈路不通的消息由路由錯誤RRER(Route Error)傳播。
  每個RREQ 報文在網(wǎng)絡(luò)中存活的時間由報文中的TTL值控制,RREQ報文每次經(jīng)過一個節(jié)點,其TTL值減少1,TTL值為0的RREQ報文視為失效報文并被丟棄。
  每個路由都采用序號標記,以此來指示路由的新舊。


1.2 洪泛攻擊對反應(yīng)式路由的影響
  洪泛攻擊分為RREQ報文洪泛攻擊和數(shù)據(jù)報文洪泛攻擊。
  在RREQ報文洪泛攻擊中,入侵節(jié)點選擇大量不在此網(wǎng)絡(luò)中的IP地址作為目的地址,連續(xù)發(fā)送大量的TTL值極大的RREQ報文。因目的地址不在本地網(wǎng)絡(luò),沒有節(jié)點能夠發(fā)送RREP報文響應(yīng),這些RREQ報文就會在整個網(wǎng)絡(luò)中循環(huán)傳播。一方面,網(wǎng)絡(luò)中到處充斥的RREQ報文會占用網(wǎng)絡(luò)通信帶寬,阻礙正常通信;另一方面,各節(jié)點的反向路由表很快就會被耗盡,無法為正常的通信提供服務(wù)。
  在數(shù)據(jù)報文洪泛攻擊中,入侵節(jié)點首先和網(wǎng)絡(luò)中的所有節(jié)點建立通信鏈路,然后沿所建的路徑給所有節(jié)點發(fā)送大量的無用報文。這些泛濫的數(shù)據(jù)報文將會堵塞網(wǎng)絡(luò),耗盡網(wǎng)絡(luò)中節(jié)點間的通信帶寬。目的節(jié)點將會忙于接收入侵節(jié)點的無用報文而無法正常工作。
  移動Ad Hoc網(wǎng)絡(luò)中的節(jié)點資源極其有限,這兩種攻擊方式都旨在占用網(wǎng)絡(luò)中的通信帶寬,消耗網(wǎng)絡(luò)中節(jié)點的大量資源,使合法節(jié)點之間無法正常通信。特別當入侵節(jié)點聯(lián)合使用RREQ洪泛攻擊和報文洪泛攻擊時,很快就會置網(wǎng)絡(luò)于癱瘓狀態(tài)。
2 FAP方案
2.1 FAP方案的原理

  文獻[5]中采用鄰居抑制的方法來抵御RREQ報文洪泛攻擊。網(wǎng)絡(luò)中的節(jié)點為其所轉(zhuǎn)發(fā)的每個RREQ報文附加一個優(yōu)先級。每個RREQ報文的優(yōu)先級與發(fā)送它的節(jié)點發(fā)送的RREQ報文的頻度成反比。
  當某節(jié)點的RREQ報文隊列中有很多RREQ報文要轉(zhuǎn)發(fā)時,它轉(zhuǎn)發(fā)這些RREQ報文的順序由它們的優(yōu)先級來決定,優(yōu)先級高的先被轉(zhuǎn)發(fā)。同時,如果某個節(jié)點發(fā)送的RREQ報文過多,以至于超過特定的門限時,其鄰居節(jié)點就會拒絕為它轉(zhuǎn)發(fā)RREQ報文,從而達到防范RREQ報文洪泛的目的。
  FAP方案中采用Path Cutoff(切斷路徑)的方法來抵御數(shù)據(jù)報文洪泛攻擊。目的節(jié)點發(fā)現(xiàn)對方是入侵節(jié)點后,發(fā)送RRER報文,指明入侵節(jié)點的IP地址不可達,以此切斷正在通信的鏈路,阻止入侵節(jié)點繼續(xù)發(fā)送無用報文。另外,當入侵節(jié)點再發(fā)RREQ報文企圖與其他節(jié)點建立連接時,因為所有節(jié)點已接收到了RRER報文,所以不會有節(jié)點向入侵節(jié)點發(fā)送RREP報文回應(yīng),從而使入侵節(jié)點無法與合法節(jié)點建立通信鏈路,實施數(shù)據(jù)報文洪泛攻擊。
2.2 FAP方案的分析
  (1)比較各個RREQ報文優(yōu)先級決定轉(zhuǎn)發(fā)順序的策略只在網(wǎng)絡(luò)通信量大時有效。優(yōu)先級是由各節(jié)點發(fā)送RREQ報文的頻度決定的,而計算頻度的過程較為復(fù)雜,加重了各節(jié)點的負擔,不適合Ad Hoc網(wǎng)絡(luò)中節(jié)點資源極其有限的特點。
  (2)FAP方案中對數(shù)據(jù)報文攻擊采取了發(fā)現(xiàn)攻擊后再進行防御的被動方式。如果多個入侵節(jié)點同時與網(wǎng)絡(luò)中的多" title="的多">的多個節(jié)點建立了連接,則會發(fā)送大量的無用報文,實施該策略的代價是很大的,并且可能無法阻止產(chǎn)生的惡劣后果。
  (3)如果網(wǎng)絡(luò)中有兩個或兩個以上的入侵節(jié)點,則任意兩個入侵節(jié)點之間建立鏈路,發(fā)送大量的無用報文,占用網(wǎng)絡(luò)資源,由于合法節(jié)點不能判知洪泛攻擊的存在,所以FAP方案無法對此進行防御。
3 CSR方案
  本文主要關(guān)注節(jié)點間的雙向通信模式。假設(shè)每個節(jié)點都有一個MAC到IP地址的惟一映射。源節(jié)點與目的節(jié)點之間使用安全認證" title="安全認證">安全認證機制,比如它們可以通過交換密鑰或初始化時發(fā)放證書等方法驗證雙方的合法性,確保只有合法的通信節(jié)點才能通過安全通信認證。但是中間節(jié)點不必參與這一通信建立的安全認證過程。
3.1 CSR方案的實現(xiàn)
  在FAP方案的基礎(chǔ)上,本文提出CSR方案,在每個合法節(jié)點上建立一張CSR表,CSR表結(jié)構(gòu)如圖4所示。記錄節(jié)點轉(zhuǎn)發(fā)的RREQ報文并保存當前建立連接的合法通信路由。


3.2 RREQ數(shù)目表項的維護
  當節(jié)點A向節(jié)點B發(fā)送報文時,先洪泛RREQ報文。每個收到RREQ報文的節(jié)點在自身的CSR中加一個表項,把其中的源地址、目的地址置為報文中相應(yīng)的項,同時把新增表項的RREQ數(shù)目一項置為1。以后每收到一條從A到B的,且序號相同的RREQ報文,就把RREQ值加1。網(wǎng)絡(luò)中的所有節(jié)點對收到的RREQ報文進行類似的統(tǒng)計。例如節(jié)點A發(fā)出的RREQ報文經(jīng)由節(jié)點T和Q到達B,節(jié)點T和Q分別在各自的CSR中增加表項如圖5所示。

?


3.3 合法性標記表項的維護
  目的節(jié)點B收到來自A的RREQ報文(可能多個)后,按最先到達或路徑最短等原則,選擇一條路由(如A-T-Q-B),在自身的CSR中加入相應(yīng)的表項。之后發(fā)送RREP報文,報文里包含源地址A,目的地址B和序列號s,并按照B-Q-T-A的路徑回送給A。在RREP到達Q和T時,Q和T驗證B的合法性。若為合法節(jié)點,它們分別把自身CSR中相應(yīng)項的合法性標記置為1;若為非法節(jié)點,則丟棄該RREP報文。例如,收到B的RREP報文后,Q和T修改其上的CSR中相應(yīng)的表項如圖6所示,B 上的該表項同此項。
  節(jié)點在設(shè)某一表項(如從A到B,序列號為S)的合法標記為1時,首先檢測CSR表,找到所有從A到B的表項,把它們的序列號與S進行比較,如果存在序列號大于S的表項,且其合法標記為1,則CSR把序列號為S的這一項刪除。如果其他從A到B的表項的序列號都小于S,則CSR把這一項的合法標記置為1,并把從A到B,序列號小于S的表項都刪除。
3.4 CSR表項的刪除
  當兩個合法節(jié)點之間的通信完成以后,由源節(jié)點發(fā)送RANC(Rout Anouncement)通知報文,告訴鏈路中用到的中間節(jié)點。中間節(jié)點收到RANC報文后,自動把CSR中相應(yīng)的表項刪除。
  如果節(jié)點A和B的通信未結(jié)束就中斷原有鏈路,則采用新鏈路進行通信。由于源節(jié)點不發(fā)送RANC報文,原先鏈路的中間節(jié)點在新鏈路中若未被采用,其保留的節(jié)點A與B之間通信的表項就無法更新及刪除。但是由于存在3.3節(jié)中的檢測機制,在A和B之間建立新鏈路的過程中,由于新發(fā)送的RREQ的序列號是最近的,所以A與B之間原有的、不再使用的鏈路就會被自動刪除,不會占用CSR表的資源。
4 CSR方案分析
4.1 CSR抵御洪泛攻擊的原理

  現(xiàn)在假設(shè)某節(jié)點的CSR中有n個表項,其源地址、目的地址和RREQ值分別為Si、Di、RVQi,0≤ii到所有節(jié)點Di(i=0,1,…n-1)的RREQ值(RVQ0+RVQ1+…RVQi+…RVQn-1),(1i所對應(yīng)的所有表項中的合法性標記都為空時,則判定該節(jié)點為入侵節(jié)點,以后拒絕為該節(jié)點轉(zhuǎn)發(fā)RREQ報文。這樣就可以抵御RREQ報文洪泛攻擊。
  另外,當有報文到某合法節(jié)點要求進行轉(zhuǎn)發(fā)時,該合法節(jié)點首先查詢自身的CSR,看表中是否有關(guān)于該報文里所涉及的源地址和目的地址的通信條目,如果有就查看其所對應(yīng)的合法性標記。若合法性標記為1,判定該通路為合法鏈路,對數(shù)據(jù)報文進行轉(zhuǎn)發(fā),否則丟棄。
  由于入侵節(jié)點不能通過安全認證,無法與合法節(jié)點建立路由。其鄰居節(jié)點的CSR中沒有入侵節(jié)點對應(yīng)的路由表項,所以不會為其轉(zhuǎn)發(fā)報文,從而達到了抵御數(shù)據(jù)報文洪泛攻擊的目的。
4.2 CSR方案的正確性分析
  (1)各節(jié)點利用CSR表中的RREQ數(shù)目表項來記錄相鄰節(jié)點發(fā)送的RREQ報文數(shù),采用定期統(tǒng)計CSR表中每個節(jié)點的RREQ數(shù)目值的方式可以有效及時地判定是否有節(jié)點發(fā)起RREQ報文攻擊。
  (2)CSR方案通過各節(jié)點實時登記正在通信的合法鏈路的方式,從根源上杜絕了合法節(jié)點為入侵節(jié)點轉(zhuǎn)發(fā)數(shù)據(jù)報文的可能。
4.3 CSR方案與FAP方案的對比
  (1)CSR方案解決了FAP方案無法解決的多個入侵節(jié)點配合攻擊的問題。
  (2)CSR方案的算法簡單,其動態(tài)建立和動態(tài)刪除機制不會給移動Ad Hoc網(wǎng)絡(luò)中的節(jié)點引入太大的工作量。
  (3)CSR方案計算簡單有效,用于通信量較均衡的、安全系數(shù)不高的網(wǎng)絡(luò),如對于多臺移動主機臨時組建的會議局域網(wǎng),有更高的有效性和準確度。
  本文針對用于反應(yīng)式路由中的洪泛攻擊,提出了一種簡單的CSR方案。該方案以很小的代價就能有效地抵御這種攻擊,克服了FAP方案的漏洞,且計算量小,用于通信量較均衡、安全系數(shù)不高的局域網(wǎng)時,有較大的優(yōu)勢。
參考文獻
1 Hu Y C,Johnson D B,Perring A.Secure efficient distance vector routing in mobile wireless Ad Hoc networks.In:Fourth IEEE workshop on mobile computing systems and applica-tions,2002
2 Papadimitratos P,Haas Z J.Secure routing for mobile Ad Hoc networks.In:SCS communication networks and distributed systems modeling and simulation conference,2002
3 Perring A,Szewczyk R,Wen V et.al.Security protocols for sense network.In:Seventh annual ACM international confer-ence on mobile computing and networks,2001
4 Zapata M G,Asokan N.Securing Ad Hoc routing protocols.In:Proceedings of the ACM workshop on wireless security, 2002
5 Yi P,Dai Z L,Zhong Y P et al.Resisting flooding attacks in Ad Hoc networks.In:Proceedings of international confer-ence on information technology:coding and computing,2005

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。