【摘要】針對傳統分布式入侵檢測系統的缺陷,文章提出了一種適用于無線網絡通信環境的新型分布式入侵檢測系統模型,詳細介紹了其組成部分:邏輯檢測域、中心分析器、全局數據庫和用戶接口。新模型提高了系統的整體檢測效率,有效地避免了中心分析器單點失效的問題。
【關鍵詞】入侵檢測 LDD 分布式攻擊 中心分析器 自舉
1 引言
隨著計算機技術的發展,入侵檢測系統(IDS,Intrusion Detection System)已經作為網絡安全系統中的一個重要組成而受到業內關注。現有IDS系統的缺陷有三:一是IDS系統檢測能力局限在單一網絡架構,與其他IDS系統的協作能力低;二是檢測手段和數據的來源單一;三是無法檢測大規模分布式攻擊。分布式入侵檢測系統(DIDS,Distributed Intrusion Detection System)[1]由此應運而生。
DIDS主要檢測信息的協同處理與入侵攻擊的全局信息提取。AAFID[2]是一種分布式入侵檢測系統的高效框架,與早期的DIDS相比,它解決了負載平衡問題,且采用分層結構,不同層次處理抽象程度不同的數據,使得在系統各代理間通訊的數據量顯著減少。但AAFID也有其缺陷,如層次結構復雜,控制較繁瑣,且沒有解決結構上的單點失效問題,尤其是如果處于較上層的節點失效,整個系統就會癱瘓;另外,處于下層的節點不能對入侵做出獨立的反應。對此,本文提出了一種新型的DIDS系統模型結構,新模型可以檢測跨越多子網的入侵行為和分布式攻擊,避免了中心分析器單點失效的問題,系統整體的檢測效率很高,更適用于無線網絡環境。
2 新型分布式入侵檢測系統結構
新系統由邏輯檢測域(LDD)[3]、中心分析器、用戶接口、全局數據庫[4]組成,如圖1所示。LDD是本地的入侵檢測系統,負責監視系統本身的網段,并能對一般的入侵行為進行檢測,而后根據預先定義的配置給出反應措施。

另外為了解決單點失效問題,NIDS設計有多個中心分析器,但最多只有一個處于活動狀態,其余中心分析器則作為冗余備份;一旦活動的中心分析器失效,其余中心分析器就通過自舉策略競爭使用權。用戶接口用來查詢LDD和中心分析器的檢測結果,修改它們的檢測策略,給系統管理員一個可視化的圖形接口。全局數據庫主要用來存放檢測策略和結果。
2.1 邏輯檢測域
每個LDD負責監視各自管轄的網段,且均能對主機和網絡進行入侵檢測。它們通過數據采集模塊從網絡和主機上獲取數據包,并通過分析模塊進行分析,如果檢測出入侵行為,則立刻做出反應;對于可疑行為,則提交給中心分析器,由中心分析器根據從各個網段收集的信息來最終判斷是否有入侵行為。其模塊組成如圖2所示,模塊組符合通用的入侵檢測框架規范[3]。

(1)數據采集模塊
解析和捕獲信道中傳送的數據包并將其格式化為事件,這是由系統中的NIDS數據采集模塊來實現的。在新系統中,檢測節點可獲取自身和相鄰部分節點的數據包,節點處理的數據量相對較小,可保證極低的丟包率并能加快分析模塊的處理速度,縮短系統響應攻擊的時間。新系統采用這種獲取相鄰部分節點數據包的冗余設計,彌補了由于單個節點遭受攻擊而無法檢測到攻擊信息的缺陷。
(2)分析模塊
NIDS分析模塊使用模式匹配、統計分析等技術來識別攻擊行為。它以網絡數據包作為分析數據源,在不丟包的情況下對包進行分析,將入侵行為的特征碼歸結為協議的不同字段的特征值,將其與特征庫的特征碼進行模式匹配。如果匹配成功,則表示檢測到了攻擊行為,反應模塊就做出適當的響應。
協議分析方法按照網絡協議的層次結構進行分析,首先分解各協議的首部并與協議樹按次序匹配,然后用數據報文的數據部分來匹配協議的入侵特征,用來與入侵規則匹配的報文比源報文的字節數要少。協議分析方法與模式匹配的原理是一致的,采取二者相結合的入侵檢測方式可以有效提高檢測效率。
HIDS分析模塊用于分析日志事件,對重點監視的主機資源建立特征庫并通過模式匹配方法即時分析日志事件來檢測入侵信息。
(3)管理模塊
管理模塊有四個方面的功能:
◆ 獲取分析模塊送來的報警信息,并將其發送到反應模塊進行處理;
◆ 把整個邏輯域內檢測到的無法確定的可疑事件,提交給中心分析器來處理;
◆ 把入侵信息通過反應模塊發送到本地數據庫服務器進行保存;
◆ 通過通信模塊從用戶接口獲取LDD的配置信息。
(4)反應模塊
反應模塊按照預先配置的響應行為來執行反應動作:
◆ 對可能的入侵行為預警并通知系統管理員;
◆ 把入侵的信息記錄到本地數據庫;
◆ 對入侵行為進行具體處理。為了避免誤判產生的負面影響,根據入侵行為的危害程度,可將具體的入侵處理分為結束對應的入侵任務、斷開連接、鎖定帳號、限制允許登陸范圍等級別。
(5)通信模塊
通信模塊是系統的重要組成部分。該模塊負責LDD跟活動中心分析器以及用戶接口之間的通信。通信的內容為一個五元組[5]:
〈通信內容〉∷=(發送者,接收者,時間,數據長度,數據)
對于內容較短的信息交互采用UDP協議包的形式,對于成塊的信息交互則采用TCP協議包的形式。
2.2 中心分析器
(1)功能
中心分析器負責從多個LAN收集數據,并根據這些數據分析跨子網的分布式攻擊。一個單一的LAN可以根據地理位置和其他因素而分成多個子網,并且每個子網都有各自的安全需求。子網上的LDD通過本地特征庫監視著其上的數據信息,如果該LDD鑒別出入侵行為,則給出告警信息并寫入日志。
(2)自舉
為了解決單點失效的缺陷,新模型通過控制臺來制定多個中心分析器,每個中心分析器都有其優先級數。優先級數最大的中心分析器處于活動狀態,其余處于空閑狀態。若LDD無法找到一個當前活動的中心分析器,就會向所有的中心分析器發布一個無法找到活動中心分析器的消息。當各中心分析器接收到消息后,空閑的中心分析器會自舉一個出來,使其成為活動的中心分析器(以下簡稱CA)。
CA執行競爭協調者算法進行自舉,過程如下:
◆CAi向所有優先級數高于自己的CA發送要做協調者的消息。它將面臨兩種情況:一是在規定時間內無回復,那么CAi將自己作為協調者的消息發送給LDD和控制臺。二是CAi在規定時間內收到反對回復,則繼續等待一個時間T,如果沒收到消息,則認為回復錯誤,CAi重新開始執行競爭協調者算法;如果收到消息“CAj是新的協調者”,CAi記下當前的活動CA是CAj。
◆如果CAi接到一個優先級比它低的CA競爭協調者的消息,則給對方一個適當的回復,自己開始執行競爭協調者算法。
◆當一個擁有較高優先級的CA排除故障恢復運行時,它可以重新執行競爭協調者算法,剝奪較低優先級CA的協調者資格。
2.3 用戶接口
控制臺提供了一個友好的人機交互界面,讓系統管理員能方便地管理系統。用戶接口的功能包括四個方面:
(1)指定各LDD和中心分析器的配置庫;
(2)從LDD和中心分析器獲得檢測日志;
(3)指定系統中活動的中心分析器;
(4)顯示告警信息和圖形化的分析報告。
2.4 全局數據庫
全局數據庫保存各LDD和中心分析器的配置信息以及運行中產生的日志。
3 結束語
本文提出了一種基于邏輯檢測域的入侵檢測系統模型。新模型的LDD分布在各受保護的子網段上,能通過分析模塊對本地主機和網絡進行入侵檢測,并能獨立做出處理。對于一些分布在各個子網上的分布式攻擊,新系統中的每個單獨的LDD只能檢測整個入侵行為的一部分,這時各個LDD會將其檢測到的可疑事件提交給中心分析器處理,中心分析器將會正確地判斷是否存在入侵行為。新模型中存在多個中心分析器,中心分析器通過自舉算法競爭成為協調者,避免了單個中心分析器帶來的單點失效問題,提高了整個系統的容錯性,能夠更有效地檢測多種入侵攻擊,更適于無線網絡通信環境。
參考文獻
[1]薛靜鋒,寧宇鵬,閻慧. 入侵檢測技術[M]. 北京: 機械工業出版社,2004.
[2]Eugene H Spafford, Diego Zamboni. Intrusion Detection Using Autonomous Agents[J]. Computer Networks, 2000(34): 547-570.
[3]Porras P, Schnackenberg D, Staniford Chen S, et al. The Common Intrusion Detection Framework Architecture[EB/OL]. 2005. http://www.isi.edu/gost/cidf/drafts/architecture.txt.25(15): 1374-1391.
[4]Peng Ning, Sushil Jajodia, Xiaoyang Sean Wang. Design and Implementation of Decentralized Prototype System for Detecting Distributed Attacks[J]. Computer Communications,2002.
[5]P Ning, X S Wang, S Jajodia. Modeling Requests Among Cooperating Intrusion Detection Systems[J]. Computer Communications, 2000,23(17): 1702-1715.
[6]林昭文,趙毅德,馬嚴. 基于Agent的分布式協作入侵檢測系統[J]. 計算機工程,2008,34(5): 150-152.★
【作者簡介】
鐘再淳:碩士畢業于中山大學電子學系無線電物理專業。現任職于中國電子科技集團公司第七研究所,曾從事信道編碼及嵌入式硬件的研發工作,目前從事網絡信息安全管理及研究工作。