摘 要:在移動自組網環境下,由于移動節點可能被攻擊截獲,導致攻擊從內部產生,傳統的網絡安全措施難以應用,只有通過入侵檢測才能發現攻擊者。通過分析移動自組網的攻擊類型,并構造從惡意節點發起的攻擊樹,采用有限狀態機的思想,設計一個基于FSM的入侵檢測算法。采用該算法的入侵檢測系統可通過鄰居節點的監視,實時地檢測到節點的各種攻擊行為。
關鍵詞:移動自組網; 網絡安全; 有限狀態機; 攻擊樹; 入侵檢測
中圖分類號:TN915-34文獻標識碼:A
文章編號:1004-373X(2010)21-0089-04
Attack Classification for Ad Hoc Network Based on FSM Detection System
YE Xia, LI Jun-shan, LUO Rong
(Department of Command Automatization, the Second Artillery Engineering College, Xi’an 710025, China)
Abstract: In mobile Ad Hoc network environment, it is likely to bring more attacks from the node interior because the mobile node is very easy to be attacked. Therefore, the traditional network security mechanisms are difficult to be applied, and only the intrusion detection system can find the attackers. The types of attacks on MANET is analyzed, and then an attack tree launching from a malicious mobile node is constructed. An intrusion detection algorithm based on FSM is designed with the idea of finite state machine. The IDS with the algorithm can detect various attack behaviors of the nodes on real-time by monitoring the neighbor nodes.
Keywords: mobile Ad Hoc network; network security; finite state machine; attack tree; IDS
0 引 言
移動自組網(Mobile Ad Hoc Network, MANET)是由一組帶有無線收發裝置的主機節點組成的多跳、沒有固定基站和中心節點的臨時性自治網絡系統,節點可在網絡中自由移動。由于移動自組網沒有固定的基礎設施,所以每個節點既是主機又充當路由器,需要通過節點間的相互協作來執行網絡功能,如路由和分組轉發。
移動自組網的特殊結構使得網絡在面對攻擊時十分脆弱。首先,現有大多數移動自組網路由協議并未采用任何有效的安全措施來保護路由過程,攻擊者可輕易偽造路由控制包來改變目的節點或路由鏈路。其次,移動節點作為自主單元在網絡中自由移動,這就意味著那些保護薄弱的節點本身的安全受到威脅,易被劫持。再次,移動自組網缺乏中心認證,攻擊者可利用這個弱點打破節點間的合作機制。攻擊者非法扮演節點獲得非認證的接入資源和敏感信息,并阻礙與其他節點的操作。最后,無線傳輸信道也常遭到干擾和錯誤,難以提供穩定的帶寬和延時。因此,移動自組網容易受到各種惡意攻擊,安全性已成為移動自組網的重要議題和研究熱點。
上述弱點將極大地影響移動自組網的安全性能,比如網絡的可用性、信息的完整性、機密性以及節點的私密性等。目前許多研究者針對移動自組網的安全問題進行了研究,提出了許多安全措施[1]。第一,通過改進現有協議,研究者提出許多安全路由協議,解決路由中的安全問題,如SAODV,Ariadne,SEAD,SRP,SAR和CSER。第二,通過引進加密和認證的方法來保證移動自組網中移動節點的可用性,如密鑰管理技術、“復活鴨子”模型,以及使用CA的認證機制等[2]。第三,許多研究者將入侵檢測系統引入移動自組網,檢測網絡中的異常行為并保護移動節點[3]。由于許多安全措施存在漏洞,因此,采用入侵檢測作為第二道防護墻就顯得非常重要。第四,提高節點間的協作能力也是安全機制的重要方面[4]。相鄰節點間互相合作,彼此監視,以提供一個良好的環境,防止節點自私行為的發生。
本文以入侵檢測為背景,分析了移動自組網的攻擊類型,并分析了在一個移動節點上攻擊的分類樹,最后基于有限狀態機描述了AODV路由協議下的入侵檢測算法及其攻擊檢測的過程。
1 網絡安全目標及所受威脅
Zhou L D和Hass Z J認為一個安全的移動自組網必須達到以下的目標:可用性、認證性、完整性、機密性、不可否認性等[5]。
針對移動自組網路由協議的攻擊,尤其在AODV協議下,將這些攻擊按照安全目標進行了分類。表1列舉了大部分針對AODV路由協議的攻擊行為。
表1 AODV協議下攻擊的分類
可用性攻擊認證性攻擊完整性攻擊機密性攻擊
Flooding/ DoSIP SpoofingSequence Number ModifiedLocation Disclosure
Wormhole/
Black-holeMAC SpoofingHop count ModifiedContent Disclosure
DroppingLink SpoofingMan-in-the-
MiddleSniffing
SelfishnessRushingMisrouting
1.1 可用性攻擊
可用性(Availability)確保網絡節點在受到各種網絡攻擊時仍然能夠提供相應的服務。
在移動自組網中拒絕服務攻擊可以在各個協議層上進行,無線干擾、破壞路由、偽造高層服務等手段,導致網絡帶寬和連通性遭到破壞,從而使網絡不可用。偽造攻擊會引起持續的錯誤路由,這將嚴重影響目的節點的通信。一些節點僅傳送自己的分組包,而丟棄其他的網絡分組,這些自私行為也會降低網絡的可用性。因此,保證移動自組網的可用性是網絡安全研究的重點。
1.2 認證性攻擊
認證性(Authentication)使每個節點能夠確認與其通信節點的身份。如果沒有認證,攻擊者就可以假冒網絡中的節點與其他節點進行通信,以獲得那些未被授權的資源和敏感信息,并因此威脅整個網絡的安全。
AODV協議中使用IP地址和MAC地址區別網絡節點。因此,IP和MAC地址哄騙(Spoofing)就是一種最簡單的針對安全認證目標的攻擊。鏈路哄騙(Link Spoofing)將破壞通信鏈路。Rushing攻擊[6]是另一種破壞授權節點路由的攻擊。
1.3 完整性攻擊
完整性(Integrity)保證了信息在傳輸過程中不被篡改,確保收到的消息與發送的消息一致,沒有被修改和破壞。通常采用報文摘要或散列算法實現。對路由信息的惡意篡改易造成回路、網絡分裂,所以也需要進行完整性保護。
惡意節點對網絡的攻擊或無線傳送失敗均可造成信息的謬誤,惡意的或良性的錯誤可使信息被移除、修改或者內容被改變。比如修改路由應答包中序列號或跳數,就可插入一條錯誤路由。
1.4 機密性攻擊
機密性(Confidentiality)保證相關的信息不會泄漏給未授權的用戶,通常采用加密的方法來實現。在傳送敏感信息和路由信息時,需格外注意機密性。
由于移動自組網采用無線信道,很容易受到竊聽攻擊,所以在網絡上傳輸的敏感信息,必須機密可靠,否則這些信息被敵方截獲,后果將不堪設想。節點的位置以及分組的內容都是攻擊者的目標,以期獲得有用的信息。
同時,還有許多其他的安全目標,如節點有效性(Efficiency)、不可否認性(Non-Repudiation)、私密性(Privacy)等。通過對移動自組網安全目標的分析,研究現有的針對這些目標的攻擊行為,并對其進行分類,弄清其主要的攻擊原理,這樣就可以采取相應的措施保證網絡的安全了。
2 節點攻擊樹
在移動自組網中,一個正常的節點將按照路由協議的規范進行工作,其行為主要可分為發送和接收數據。下面以AODV協議為例,具體分析一個正常節點的行為。當節點需要發送數據時,它檢查自己的路由表,若有到目的節點的路由,則根據路由表直接發送數據。當路由表中無相應路由時,就啟動路由發現過程,向網絡中廣播路由請求RREQ包。當節點處于接收狀態時,它接收由鄰節點傳送過來的包,這些包可分為路由狀態包和數據包。路由狀態包可能為路由請求RREQ包、路由應答RREP包和路由報錯RERR包。節點接收到一個RREQ包后,若曾經接收過相同的包,則將該包拋棄處理;若自己就是目的節點或者本節點路由表中有到目的節點的路由,則主動發送RREP包到源節點,表明路由找到;若發現路由錯誤,則發送RERR包到源節點,表示路由出錯。在其他情況下,中間節點僅完成接收和轉發數據包的工作。
惡意節點在網絡中可能采取多種攻擊行為,本文用節點攻擊樹來描述,如圖1所示。
節點攻擊樹描述了惡意節點在發送和接收過程中,對路由信息和數據信息的破壞。對于路由信息,主要的攻擊形式有:偽造攻擊、惡意修改、拋棄攻擊、洪水攻擊等。對于數據信息,主要攻擊形式有偷聽攻擊、拋棄攻擊以及DoS攻擊。
從攻擊樹中可方便地分析出一個節點的行為是否為惡意行為。比如自私節點一般表現為兩個方面:其一為不愿參與路由,將路由控制包拋棄或修改路由控制包,使路由繞道。其二為愿意參與路由過程,但不轉發數據。若安全系統監視到某節點僅作為源節點發送自己的數據包,但將所有接收到的分組包拋棄,則通過攻擊樹可看出,對于節點“接收”類別中,將接收到的RREQ,RREP,RERR和DATA拋棄(Dropping),則可以確定該節點為自私節點,應采取相應措施來排除自私節點[7]。
圖1 節點攻擊樹
對可能的節點攻擊行為進行分類有助于為現有移動自組網設計安全保護機制。攻擊樹[8]用一種分級方式描述了攻擊的選項。圖1所示的攻擊樹描述了節點大部分的攻擊行為,但不可能完全實現所有不良行為。安全系統可根據此攻擊樹提供的信息進行分析,并采取相應措施對網絡和節點進行控制和防護。
3 基于FSM的入侵檢測
為檢測AODV中的攻擊行為,本文采用鄰居節點監視的方法,將整個網絡分成若干小的一跳區域,在每個區域中選擇一個節點作為監視節點,監視節點的選舉算法可參考文獻[9]。
本文用有限狀態機[10](Finite State Machine, FSM)分析了AODV路由協議的工作過程,如圖2所示的狀態①至狀態⑥。狀態①表示節點是源節點,廣播路由請求包RREQ。狀態②表示節點處于RREQ傳送狀態。RREQ包被中間節點廣播直到到達狀態③的目的節點。如果中間節點有到目的節點的新鮮路由,則進入狀態④,進行RREP傳送。RREP包由中間節點單播返回源節點。如果出現路由錯誤,進入狀態⑤,中間節點發送RERR包至源節點,表明路由發現過程失敗。當源節點有到目的節點的路由時,則進入狀態⑥,進行數據傳送。
當網絡中存在攻擊行為時,這些攻擊行為必然對路由過程產生影響。通過鄰節點的監視可以發現,網絡中的異常狀態,參見圖2中的狀態⑦至狀態B19。
若鄰節點監視到源節點廣播的RREQ或HELLO包超過一個事先設定的最大閾值,就認為發生了洪水Flooding攻擊。FSM系統轉入狀態⑦,并發出Flooding攻擊警報。
若攻擊節點作為源節點,通過偽造自己的地址,使之扮演成正常節點參與網絡,就可傳播錯誤路由,并獲得有用信息,此為狀態⑧,Impersonation攻擊。
圖2 基于FSM的入侵檢測過程
若鄰節點未收聽到中間節點轉發任何RREQ或RREP包,則進入狀態⑨,懷疑節點超出網絡范圍。在一段時間內,鄰居監視節點持續確認未監聽到該中間節點發出的RREQ或RREP包,系統轉入狀態⑩,發出拋棄攻擊Dropping警報。
惡意節點可偽造IP地址或MAC地址進行哄騙Spoofing攻擊。若鄰節點監視到狀態①、狀態②和狀態④中,IP地址與MAC地址不相匹配,FSM系統進入狀態B11,發出Spoofing哄騙攻擊警報。
若鄰節點發現中間節點轉發RREQ或RREP包時,其中目標序列號或跳數不可靠,FSM系統進入狀態B12,懷疑序列號或跳數被惡意修改。若目標序列號大大高于原始序列號,或跳數明顯比其他中間節點監測到的包跳數小,可認為發生了序列號/跳數修改攻擊,進入狀態B13,發出修改攻擊警報。
若中間節點在轉發RREP的過程中,鄰節點監視到中間節點惡意修改或偽造RREP包,則進入狀態B14,表示節點想注入一條錯誤路由。
RERR包也可被利用進行攻擊。如果一個節點在路由正常時偽造RERR包,并傳送到源節點,則會造成正常路由受到干擾,此為狀態B15。惡意節點還可能會取消經過它的RERR包,由于RERR包是單播傳送,源節點不能及時收到路由錯誤RERR包,誤認為路由正常,則此時會造成一條無用路由,消耗了網絡資源,FSM系統進入狀態B16。
節點在傳送數據過程中也會受到攻擊。狀態⑥是數據傳送狀態,若鄰節點發現有大量數據包連續發送,大大超出正常水平,就可懷疑發生了DoS攻擊,進入狀態B17。中間節點還可能因為自私等原因而拋棄數據包,造成狀態B18的Dropping攻擊。節點無線傳送數據,其有用信息可能被偷聽,如位置、公鑰、私鑰、節點密碼以及數據內容等,但偷聽行為較難被檢測或排除,此為狀態B19。
4 結 語
移動自組網是一種基于自組織和快速展開的新興網絡技術,吸引了許多現實的應用領域。但如果移動自組網的安全問題得不到有效解決,離真正應用仍有一定距離。本文分析了移動自組網的安全目標及其受到的威脅,并根據安全目標對AODV路由協議的攻擊行為進行了分類;根據節點的行為特征,提出了一種節點攻擊樹;并基于FSM分析了移動自組網攻擊自動入侵檢測系統,描述了AODV協議工作狀態和各種主要攻擊的入侵檢測過程,可通過鄰居監視發現惡意節點對AODV協議的攻擊行為,并發出警報。
參考文獻
[1]SINGH K, YADAV R S, RANVIJAY. Ad hoc network security [J]. International Journal of Computer Science and Security, 2008, 1(1): 52-69.
[2]KARGL F, SCHLOTT S, WEBER M. Identification in Ad hoc networks [C]//Proceedings of the 39th Annual Hawaii International Conference on System Sciences. Hawaii: HICSS , 2006.
[3]GONZALEZ F, ANSA G, HOWRATH M, et al. Detection and accusation of packet forwarding misbehavior in mobile Ad hoc networks[J]. Journal of Internet Engineering, 2008, 2(1): 181-192.
[4]BUTTYAN L, HUBAUX J P. Enforcing service availability in mobile Ad hoc WANs[C]// Proceedings of the IEEE/ACM Workshop on Mobile Ad hoc Networking and Computing . Boston: MobiHOC, 2000: 87-96.
[5]ZHOU L D, HAAS Z J. Securing Ad hoc networks [J]. IEEE Network Magazine, 1999,13(6): 24-30.
[6]HU Y C, PERRIG A, JOHNSON D B. Rushing attacks and defense in wireless Ad hoc network routing protocols[C]//Proceedings of ACM MobiCom Workshop. San Diego, USA: ACM, 2003.
[7]MICHIARDI P, MOLVA R. Core: a collaborative reputation mechanism to enforce node cooperation in mobile Ad hoc networks [C]// Proceedings of the Sixth IFIP conference on security communications and multimedia. Portoroz, Slovenia: IFIP, 2002: 107-121.
[8]KARGL F, SCHLOTT S, KLENK A,et al. Securing Ad hoc routing protocols[C]//Proceedings of the 30th EUROMICRO Conference. [S.l.]: EUROMICRO, 2004: 514-519.
[9]YI P, JIANG Y, ZHONG Y, et al. Distributed intrusion detection for mobile Ad hoc networks[C]//Proceedings of the 2005 Symposium on Application and the Internet Workshops. [S.l.]: SAINT, 2005.
[10]YE X, LI J S. An FSM-based automatic detection in AODV for Ad hoc network[C]//Proceedings of the 2009 International Conference on Computer Network and Multimedia Technology. Wuhan: CNMT, 2009: 606-609.