摘 要: 針對移動Ad Hoc網絡反應式路由的洪泛攻擊,分析了現有的抵御洪泛攻擊的FAP方案的安全漏洞,提出了一種簡單易行的CSR方案,并與FAP方案進行了對比。
關鍵詞: 移動Ad Hoc網絡 反應式路由? 洪泛攻擊? FAP方案
?
移動Ad Hoc網絡是一種新型的移動多跳無線網絡,它不依賴于任何固定的基礎設施和管理中心,而是通過傳輸范圍有限的移動節點間的相互協作和自我組織來保持網絡連接并實現數據的傳遞。Ad Hoc網絡中路由的特殊性使其成為Ad Hoc網絡中的重要問題,一直是該領域的研究熱點。目前,較為成熟且已在Ad Hoc網絡中廣為使用的路由協議" title="路由協議">路由協議有優化鏈路" title="鏈路">鏈路狀態路由算法OLSR(Optimized Link State Routing Protocol)、動態源路由DSR(Dynamic Source Routing)、按需距離矢量路由AODV (Ad Hoc On-Demand Distance Vector Routing)等。同時,隨著各類攻擊的出現,基于安全的Ad Hoc路由協議也相繼產生[1~4]。
洪泛攻擊是新近提出的一種針對Ad Hoc網絡中反應式路由的攻擊類型,分為RREQ報文和數據報文攻擊兩種。它通過在網絡中引發拒絕服務,能夠對現有的所有反應式路由進行攻擊。Ping Yi等人首次提出了這種攻擊的模型[5],同時給出了抵御這種攻擊的洪泛攻擊預防FAP(Flooding Attack Prevention)方案。
針對FAP方案的不足,本文提出了通信狀態記錄CSR(Communication Status Record)方案。該方案中各節點通過實時記錄與其相關聯的節點及鏈路的狀態,從而可以有效地辨別非法節點,避免為非法節點轉發報文,達到抵御洪泛攻擊的效果。
1 背景知識
1.1 反應式路由簡介
反應式路由協議又稱為按需路由協議,是一種當需要發送數據時才查找路由的路由算法。在這種路由協議中,節點不需要維護及時、準確的路由信息,當需要向目的節點發送報文時,源節點才在網絡中發起路由查找過程,找到相應的路由。常用的反應式路由協議有DSR、AODV等。與先驗式路由協議相比,反應式路由協議的開銷較小,應用更廣泛。
?
以AODV路由協議為例,RREQ報文的傳播路徑如圖1所示。圖中當節點A要發起與節點B的通信時,A先在網絡中洪泛路由請求RREQ(Route Request)尋路報文。實箭頭方向為RREQ洪泛的方向,目的節點收到RREQ報文后,不再轉發。
中間節點接收RREQ報文后進行轉發,同時在自身的路由表" title="路由表">路由表中增加一個表項,用來記錄從本節點到源節點的反向路徑。反向路徑示意圖如圖2所示。虛箭頭方向為各節點建立的朝源節點的反向鏈路。
目的節點接收到RREQ報文后,不再轉發該RREQ報文,并回送路由應答RREP(Route Reply)報文。RREP報文沿RREQ報文到達的反方向,依次到達轉發RREQ報文的各中間節點,中間節點沿自身路由表中保存的反向路徑,向源節點轉發RREP報文。數據報文傳輸路徑如圖3所示。實箭頭方向為目的節點發送RREP的鏈路,源節點沿虛箭頭方向向目的節點發送數據包。在此后的通信中,源節點沿RREP報文的反方向向目的節點發送數據報文。
鏈路不通的消息由路由錯誤RRER(Route Error)傳播。
每個RREQ 報文在網絡中存活的時間由報文中的TTL值控制,RREQ報文每次經過一個節點,其TTL值減少1,TTL值為0的RREQ報文視為失效報文并被丟棄。
每個路由都采用序號標記,以此來指示路由的新舊。
1.2 洪泛攻擊對反應式路由的影響
洪泛攻擊分為RREQ報文洪泛攻擊和數據報文洪泛攻擊。
在RREQ報文洪泛攻擊中,入侵節點選擇大量不在此網絡中的IP地址作為目的地址,連續發送大量的TTL值極大的RREQ報文。因目的地址不在本地網絡,沒有節點能夠發送RREP報文響應,這些RREQ報文就會在整個網絡中循環傳播。一方面,網絡中到處充斥的RREQ報文會占用網絡通信帶寬,阻礙正常通信;另一方面,各節點的反向路由表很快就會被耗盡,無法為正常的通信提供服務。
在數據報文洪泛攻擊中,入侵節點首先和網絡中的所有節點建立通信鏈路,然后沿所建的路徑給所有節點發送大量的無用報文。這些泛濫的數據報文將會堵塞網絡,耗盡網絡中節點間的通信帶寬。目的節點將會忙于接收入侵節點的無用報文而無法正常工作。
移動Ad Hoc網絡中的節點資源極其有限,這兩種攻擊方式都旨在占用網絡中的通信帶寬,消耗網絡中節點的大量資源,使合法節點之間無法正常通信。特別當入侵節點聯合使用RREQ洪泛攻擊和報文洪泛攻擊時,很快就會置網絡于癱瘓狀態。
2 FAP方案
2.1 FAP方案的原理
文獻[5]中采用鄰居抑制的方法來抵御RREQ報文洪泛攻擊。網絡中的節點為其所轉發的每個RREQ報文附加一個優先級。每個RREQ報文的優先級與發送它的節點發送的RREQ報文的頻度成反比。
當某節點的RREQ報文隊列中有很多RREQ報文要轉發時,它轉發這些RREQ報文的順序由它們的優先級來決定,優先級高的先被轉發。同時,如果某個節點發送的RREQ報文過多,以至于超過特定的門限時,其鄰居節點就會拒絕為它轉發RREQ報文,從而達到防范RREQ報文洪泛的目的。
FAP方案中采用Path Cutoff(切斷路徑)的方法來抵御數據報文洪泛攻擊。目的節點發現對方是入侵節點后,發送RRER報文,指明入侵節點的IP地址不可達,以此切斷正在通信的鏈路,阻止入侵節點繼續發送無用報文。另外,當入侵節點再發RREQ報文企圖與其他節點建立連接時,因為所有節點已接收到了RRER報文,所以不會有節點向入侵節點發送RREP報文回應,從而使入侵節點無法與合法節點建立通信鏈路,實施數據報文洪泛攻擊。
2.2 FAP方案的分析
(1)比較各個RREQ報文優先級決定轉發順序的策略只在網絡通信量大時有效。優先級是由各節點發送RREQ報文的頻度決定的,而計算頻度的過程較為復雜,加重了各節點的負擔,不適合Ad Hoc網絡中節點資源極其有限的特點。
(2)FAP方案中對數據報文攻擊采取了發現攻擊后再進行防御的被動方式。如果多個入侵節點同時與網絡中的多" title="的多">的多個節點建立了連接,則會發送大量的無用報文,實施該策略的代價是很大的,并且可能無法阻止產生的惡劣后果。
(3)如果網絡中有兩個或兩個以上的入侵節點,則任意兩個入侵節點之間建立鏈路,發送大量的無用報文,占用網絡資源,由于合法節點不能判知洪泛攻擊的存在,所以FAP方案無法對此進行防御。
3 CSR方案
本文主要關注節點間的雙向通信模式。假設每個節點都有一個MAC到IP地址的惟一映射。源節點與目的節點之間使用安全認證" title="安全認證">安全認證機制,比如它們可以通過交換密鑰或初始化時發放證書等方法驗證雙方的合法性,確保只有合法的通信節點才能通過安全通信認證。但是中間節點不必參與這一通信建立的安全認證過程。
3.1 CSR方案的實現
在FAP方案的基礎上,本文提出CSR方案,在每個合法節點上建立一張CSR表,CSR表結構如圖4所示。記錄節點轉發的RREQ報文并保存當前建立連接的合法通信路由。
3.2 RREQ數目表項的維護
當節點A向節點B發送報文時,先洪泛RREQ報文。每個收到RREQ報文的節點在自身的CSR中加一個表項,把其中的源地址、目的地址置為報文中相應的項,同時把新增表項的RREQ數目一項置為1。以后每收到一條從A到B的,且序號相同的RREQ報文,就把RREQ值加1。網絡中的所有節點對收到的RREQ報文進行類似的統計。例如節點A發出的RREQ報文經由節點T和Q到達B,節點T和Q分別在各自的CSR中增加表項如圖5所示。
?
3.3 合法性標記表項的維護
目的節點B收到來自A的RREQ報文(可能多個)后,按最先到達或路徑最短等原則,選擇一條路由(如A-T-Q-B),在自身的CSR中加入相應的表項。之后發送RREP報文,報文里包含源地址A,目的地址B和序列號s,并按照B-Q-T-A的路徑回送給A。在RREP到達Q和T時,Q和T驗證B的合法性。若為合法節點,它們分別把自身CSR中相應項的合法性標記置為1;若為非法節點,則丟棄該RREP報文。例如,收到B的RREP報文后,Q和T修改其上的CSR中相應的表項如圖6所示,B 上的該表項同此項。
節點在設某一表項(如從A到B,序列號為S)的合法標記為1時,首先檢測CSR表,找到所有從A到B的表項,把它們的序列號與S進行比較,如果存在序列號大于S的表項,且其合法標記為1,則CSR把序列號為S的這一項刪除。如果其他從A到B的表項的序列號都小于S,則CSR把這一項的合法標記置為1,并把從A到B,序列號小于S的表項都刪除。
3.4 CSR表項的刪除
當兩個合法節點之間的通信完成以后,由源節點發送RANC(Rout Anouncement)通知報文,告訴鏈路中用到的中間節點。中間節點收到RANC報文后,自動把CSR中相應的表項刪除。
如果節點A和B的通信未結束就中斷原有鏈路,則采用新鏈路進行通信。由于源節點不發送RANC報文,原先鏈路的中間節點在新鏈路中若未被采用,其保留的節點A與B之間通信的表項就無法更新及刪除。但是由于存在3.3節中的檢測機制,在A和B之間建立新鏈路的過程中,由于新發送的RREQ的序列號是最近的,所以A與B之間原有的、不再使用的鏈路就會被自動刪除,不會占用CSR表的資源。
4 CSR方案分析
4.1 CSR抵御洪泛攻擊的原理
現在假設某節點的CSR中有n個表項,其源地址、目的地址和RREQ值分別為Si、Di、RVQi,0≤i
另外,當有報文到某合法節點要求進行轉發時,該合法節點首先查詢自身的CSR,看表中是否有關于該報文里所涉及的源地址和目的地址的通信條目,如果有就查看其所對應的合法性標記。若合法性標記為1,判定該通路為合法鏈路,對數據報文進行轉發,否則丟棄。
由于入侵節點不能通過安全認證,無法與合法節點建立路由。其鄰居節點的CSR中沒有入侵節點對應的路由表項,所以不會為其轉發報文,從而達到了抵御數據報文洪泛攻擊的目的。
4.2 CSR方案的正確性分析
(1)各節點利用CSR表中的RREQ數目表項來記錄相鄰節點發送的RREQ報文數,采用定期統計CSR表中每個節點的RREQ數目值的方式可以有效及時地判定是否有節點發起RREQ報文攻擊。
(2)CSR方案通過各節點實時登記正在通信的合法鏈路的方式,從根源上杜絕了合法節點為入侵節點轉發數據報文的可能。
4.3 CSR方案與FAP方案的對比
(1)CSR方案解決了FAP方案無法解決的多個入侵節點配合攻擊的問題。
(2)CSR方案的算法簡單,其動態建立和動態刪除機制不會給移動Ad Hoc網絡中的節點引入太大的工作量。
(3)CSR方案計算簡單有效,用于通信量較均衡的、安全系數不高的網絡,如對于多臺移動主機臨時組建的會議局域網,有更高的有效性和準確度。
本文針對用于反應式路由中的洪泛攻擊,提出了一種簡單的CSR方案。該方案以很小的代價就能有效地抵御這種攻擊,克服了FAP方案的漏洞,且計算量小,用于通信量較均衡、安全系數不高的局域網時,有較大的優勢。
參考文獻
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