時間:2014年12月22日 分類:推薦論文 次數:
摘 要:針對目前入侵檢測系統不能適應異構網絡環境、缺乏協同響應的不足,提出了一種基于CORBA的分布式入侵檢測系統模型,結合人工智能思想,實現了一種基于CORBA的入侵檢測系統CMDIDS(Corba MiddleWare Distrubite Intrusion Detection System)。文章詳細討論了系統的體系結構、特點和實現技術等,使所設計的系統能夠對大型分布異構網絡進行有效的入侵檢測,對網絡智能化入侵檢測系統的設計有一定參考價值,對綜合解決網絡安全問題是一個有益的探索。
關鍵詞:發表論文網,網絡安全,網絡入侵檢測,主機入侵檢測,入侵協同響應,CORBA
隨著網絡技術的發展和網絡應用的深入,網絡安全問題日益嚴重,給網絡和信息系統帶來了嚴重威脅。究其原因,主要是網絡攻擊技術不斷發展變化,并呈現出一些新的特點,而原有的安全解決方案不能迅速地適應這些新特點,導致網絡的安全保障技術相對落后于網絡攻擊技術,從而出現防不勝防的尷尬局面。所以有必要引入新的技術和思想,來改進原有的安全解決方案。
1 分布式入侵檢測
入侵是指試圖破壞一個資源的完整性、機密性和可獲得性的活動集合[1]。入侵檢測技術可被分為誤用入侵檢測和異常入侵檢測兩種,前者通過檢測固有的攻擊模式發現入侵,后者通過檢測系統或用戶行為是否偏離正常模式發現入侵;按照數據來源可分為主機和網絡入侵檢測,主機入侵檢測主要收集其運行主機的信息,例如CPU、內存使用率,文件的訪問控制等,網絡入侵檢測主要收集其所在局域網上傳輸的所有數據;按照入侵響應可分為主動響應和被動響應兩種:如果檢測出入侵后,能夠自動重新配置防火墻、關閉適當的服務或反擊入侵者,那么就被稱為主動響應,若檢測到入侵后僅給出警報或記錄日志,那就是被動響應[2]。
入侵檢測系統是基于以上幾種模型相結合構建出的計算機軟件,其作用就像一個防盜系統,能夠實時地發現可能的入侵。目前的網絡入侵檢測系統和產品還很不成熟,基本上都是用來監控單一網段,功能較為簡單。此外,隨著網絡應用的廣泛和互連網絡自身的分布異構性,網絡入侵與攻擊的方式已經變得越來越隱蔽,且趨于多樣性、分布化和協同性[3]。因此,入侵檢測系統也需要滿足跨平臺、可復用、易擴充、協同檢測等新的應用需求。所以,研究利用分布計算技術,實現大型分布式入侵檢測系統(DIDS)是有意義的。
CORBA是由對象管理國際組織OMG制定的一套分布式對象交互的規范[4]。CORBA與入侵檢測相結合具有許多優點和特點:① CORBA開發語言獨立性和跨平臺性,使得能夠方便地集成多種多樣的監測和安全程序;② 利用CORBA中間件所集成的下層軟件與上層應用系統幾乎無關,即當下層軟件發生改變時,只要CORBA對外的接口定義不變,上層應用幾乎不需修改;③ CORBA具有好的擴展性,能方便地進行系統裁剪或組合,適應不同的具體需要和環境;④ CORBA本身就有很好的安全機制。它提供標識與鑒別,授權與訪問控制,對象間的安全通信、安全審計、安全管理等安全服務。
將CORBA的優點和DNIDS結合,不僅可以解決網絡平臺的復雜性和多樣性,還能適應網絡異構和動態變化的特性。因此,我們設計并實現了一個基于CORBA的入侵檢測系統,稱之為CMDIS。
2 系統組成、結構與特點
CMDIDS系統是一個集狀態監測,入侵檢測和入侵響應于一體、網絡與主機檢測相結合、適于大型網絡結構的DIDS。CMDIDS系統主要由管理點、網絡檢測點、主機檢測點和安全響應點4部分組成[5] (見圖1)。在CMDIDS應用環境中,用戶可將一個大型網絡劃分成多個域,每個域中可部署一個網絡檢測點,多個安全響應點和多個主機檢測點。整個系統只需部署一個管理點。
網絡/主機檢測點的任務是采集原始數據,對原始數據按照用戶要求進行過濾,并反饋給管理點,實現實時狀態監測,或對原始數據進行誤用入侵檢測,將結果報告給管理點。它由數據采集引擎、數據過濾器、誤用入侵檢測分析器和域管理器4部分組成。
安全響應點是網絡中除檢測點以外涉及網絡安全和網絡管理的各種軟件資源,例如防火墻組件、文件備份組件以及負載均衡組件等。
管理點的任務是管理和配置所有的網絡檢測點,負責它和檢測點的信息交流,匯總和存儲檢測點上報的數據,并對這些數據歸類分析,進行異樣入侵檢測和分布式誤用入侵的檢測。它包含了圖形用戶界面、數據庫、異常入侵檢測與誤用入侵分析器和頂級管理器4個部分。
與其他現有的DIDS相比,CMDIDS的一個特色在于實現了誤用和異常的入侵檢測的分離。前者放在檢測點中,而后者放在管理點中。這是因為與計算機病毒相似,誤用入侵攻擊也具有明顯的特征,這些特征也可被轉化為規則,形成規則庫,而且易于用編程語言實現。當前危害較大的洪水攻擊和蠕蟲病毒攻擊的共同特點都是在短時間內發送大量的數據包,擁塞網絡或主機,從而造成設備癱瘓。如果將攻擊數據照原樣傳送給管理點,不亞于將攻擊的目標轉移到管理結點。因此檢測點在檢測出誤用入侵后只需和防火墻組件連動,切斷有害連接,再將攻擊的來源和特征報告給管理點。由管理點匯集這些信息進行進一步的分布式入侵檢測分析,從而大大減少了檢測點和管理點的數據通信,實現了局部與全局的監測的有機結合和對管理點的保護。
CMDIDS的另一個特色是使用分布式計算和面向對象計算完美結合的CORBA技術,實現了檢測和響應分離。用戶可按照需要,選擇檢測點及不同安全組件之間的協作關系,建立了安全組件之間的相互通信和聯動,提高了系統的可擴展性,實現整體安全防護。例如,當檢測引擎檢測到某種攻擊后,會自動通知防火墻修改安全策略。從信息安全系統防御的角度出發,這種聯動是必要的。聯動包括了檢測引擎與防火墻的聯動,可封堵源自外部網絡的攻擊; 檢測引擎與網絡管理系統的聯動,可封堵被利用的網絡設備和主機; 檢測引擎與操作系統的聯動,可封堵有惡意的用戶帳號;檢測引擎和備份服務器聯動,可以進行災難恢復。
3 CMDIDS的設計和實現
CMDIDS是一個基于CORBA的應用,那么系統設計的第一步就應該將系統中用到的CORBA對象提煉出來。CORBA對象與我們平常所說的(本地)對象一樣,也包含了對象屬性和對象操作。但區別在于CORBA對象必須用IDL語言定義。IDL定義了應用程序構件之間可互操作的接口。有了這個接口才使對象之間的遠程調用成為可能。而ORB又保證了對象調用對用戶的透明性。換句話說,CORBA對象提供遠程調用的接口,而本地對象則不可以。
與其他現有的DIDS相比,CMDIDS的一個特色在于實現了誤用和異常的入侵檢測的分離。前者放在檢測點中,而后者放在管理點中。這是因為與計算機病毒相似,誤用入侵攻擊也具有明顯的特征,這些特征也可被轉化為規則,形成規則庫,而且易于用編程語言實現。當前危害較大的洪水攻擊和蠕蟲病毒攻擊的共同特點都是在短時間內發送大量的數據包,擁塞網絡或主機,從而造成設備癱瘓。如果將攻擊數據照原樣傳送給管理點,不亞于將攻擊的目標轉移到管理結點。因此檢測點在檢測出誤用入侵后只需和防火墻組件連動,切斷有害連接,再將攻擊的來源和特征報告給管理點。由管理點匯集這些信息進行進一步的分布式入侵檢測分析,從而大大減少了檢測點和管理點的數據通信,實現了局部與全局的監測的有機結合和對管理點的保護。
CMDIDS的另一個特色是使用分布式計算和面向對象計算完美結合的CORBA技術,實現了檢測和響應分離。用戶可按照需要,選擇檢測點及不同安全組件之間的協作關系,建立了安全組件之間的相互通信和聯動,提高了系統的可擴展性,實現整體安全防護。例如,當檢測引擎檢測到某種攻擊后,會自動通知防火墻修改安全策略。從信息安全系統防御的角度出發,這種聯動是必要的。聯動包括了檢測引擎與防火墻的聯動,可封堵源自外部網絡的攻擊; 檢測引擎與網絡管理系統的聯動,可封堵被利用的網絡設備和主機; 檢測引擎與操作系統的聯動,可封堵有惡意的用戶帳號;檢測引擎和備份服務器聯動,可以進行災難恢復。
3 CMDIDS的設計和實現
CMDIDS是一個基于CORBA的應用,那么系統設計的第一步就應該將系統中用到的CORBA對象提煉出來。CORBA對象與我們平常所說的(本地)對象一樣,也包含了對象屬性和對象操作。但區別在于CORBA對象必須用IDL語言定義。IDL定義了應用程序構件之間可互操作的接口。有了這個接口才使對象之間的遠程調用成為可能。而ORB又保證了對象調用對用戶的透明性。換句話說,CORBA對象提供遠程調用的接口,而本地對象則不可以。
3.2.3 安全響應點
didp系統中安全響應模塊采用了主動響應和被動響應兩種方式的混合形式。具體協同如圖3所示:
1) 防火墻組件。當檢測點檢測出入侵時,它在向管理點報告入侵事件的發生時間和攻擊源的同時,也會通知本域中的防火墻組件。防火墻組件修改防火墻的策略,過濾掉攻擊源的地址。然后,防火墻組件再將該消息發送給管理點中的安全響應點管理者,由它再轉發給其他的防火墻組件,相應調整各自的防火墻策略,保護網絡中的其它結點不受攻擊,起到預警的作用。
2) 負載均衡組件。CMDIDS采用地址轉換作為實現負載均衡的方法。具體采用Linux下的防火墻軟件iptables作為地址轉換器NAT,同時根據性能監測引擎所監測到每臺內部主機的性能數據作為挑選內部地址的依據。負載均衡組件每隔一段時間會輪詢每個提供相同服務的服務器的負載情況,從中挑選出一個負載最輕的主機,同時會向防火墻組件發送消息,告知這個負載最輕的地址。當防火墻組件接到這個消息后,立即增加NAT地址轉換策略。當有服務請求發送到防火墻時,就可以根據策略將請求目的地址轉換為那個負載最輕的主機地址,這樣就完成了負載均衡。
3) 災難恢復組件。為了完成災難恢復,需要將主機檢測的文件監測引擎和文件備份協同起來。文件監測主要是通過對文件完整性的監測來完成的,其主要技術主要是根據文件內容提取一個數字摘要,通過對比兩次的計算的數字摘要是否相同來發現文件是否被修改。進一步結合用戶行為的檢測,判斷當前的修改是否非法。若是非法的,就選擇一個文件備份組件對指定文件以流的形式還原。
4 結語
CMDIDS將CORBA、人工智能、協同和IDS技術相結合,有效的解決了當前入侵檢測系統面臨的平臺異構、無統一通信機制和安全策略等問題。
CMDIDS已經被實現,通過在校園網環境的初步應用表明,它基本能滿足大型網絡在性能、狀態監控和入侵檢測等方面的要求。當然,要使系統能夠大范圍推廣應用,還有待完善和改進,例如,應完善對異常入侵的檢測,增強系統的智能性,減少誤報率;增加系統的容錯能力與抗攻擊能力;加強安全響應部件之間工作的協同性。
參考文獻
〔1〕SPAFFORD E. Crisis and After Math[J]. Communications of the ACM, 1989, 32(6): 678-786
〔2〕STEFAN A. Intrusion Detection Systems: A Survey and Taxonomy[OL]
2004-6-9
〔3〕段海新, 吳建平. 分布式協同入侵檢測—系統結構設計與實現問題[J]. 小型微型計算機系統, 2001, 22 (6):646-560
〔4〕汪 蕓. CORBA技術及其應用[M]. 南京:東南大學出版社,1999
〔5〕吳曉南. 基于智能的分布式網絡入侵監測系統[D]. 西安:西北大學計算機科學系, 2003
〔6〕龔 儉, 董 慶, 陸 晟. 面向入侵檢測的網絡安全檢測實現模型[J]. 小型微型計算機系統, 2001, 22(2): 145-148
〔7〕ADBELAZIZ M. Rule-based distributed intrusion detection[D]. University of Namur, Belgium, 1997