第十二章 入侵檢測技術剖析(1 / 3)

第十二章 入侵檢測技術剖析

CNNIC發布的《中國互聯網絡發展狀況統計報告》顯示,中國現已有幾千萬上網用戶。因此,越來越多的公司將其核心業務向互聯網轉移、服務成為當前IT業另一個生長點,但網絡安全作為一個無法回避的問題呈現在人們麵前。隨著計算機網絡知識的普及,攻擊者越來越多,知識日趨成熟,攻擊工具與手法日趨複雜多樣,單純的防火牆策略已經無法滿足對安全高度敏感的部門的需要,網絡的防衛必須采用一種縱深的、多樣的手段。網絡環境也變得越來越複雜,各式各樣的複雜的設備,需要不斷升級、補漏的係統使得網絡管理員的工作不斷加重,不經意的疏忽便有可能造成安全的重大隱患。於是,入侵檢測係統成為了安全市場上新的熱點,不僅愈來愈多的受到人們的關注,而且已經開始在各種不同的環境中發揮其關鍵作用。

入侵檢測係統(IDS)

由於入侵檢測係統的市場在近幾年中飛速發展,許多公司投入到這一領域上來。InternetSecuritySystem(ISS)、思科、賽門鐵克等公司都推出了自己的產品。

係統組成

IETF將一個入侵檢測係統分為四個組件:事件產生器(Eventgenerators);事件分析器(Eventanalyzers);響應單元(Responseunits);事件數據庫(Eventdatabases)。

事件產生器的目的是從整個計算環境中獲得事件,並向係統的其他部分提供此事件。事件分析器分析得到的數據,並產生分析結果。響應單元則是對分析結果作出作出反應的功能單元,它可以作出切斷連接、改變文件屬性等強烈反應,也可以隻是簡單的報警。事件數據庫是存放各種中間和最終數據的地方的統稱,它可以是複雜的數據庫,也可以是簡單的文本文件。

係統分類

根據檢測對象的不同,入侵檢測係統可分為主機型和網絡型。

基於主機的監測。主機型入侵檢測係統就是以係統日誌、應用程序日誌等作為數據源,當然也可以通過其他手段(如監督係統調用)從所在的主機收集信息進行分析。主機型入侵檢測係統保護的一般是所在的係統。這種係統經常運行在被監測的係統之上,用以監測係統上正在運行的進程是否合法。最近出現的一種ID(intrusiondetection):位於操作係統的內核之中並監測係統的最底層行為。所有這些係統最近已經可以被用於多種平台。

網絡型入侵檢測。它的數據源是網絡上的數據包。往往將一台機子的網卡設於混雜模式(promiscmode),對所有本網段內的數據包並進行信息收集,並進行判斷。一般網絡型入侵檢測係統擔負著保護整個網段的任務。

係統通信協議

IDS係統內部各組件之間需要通信,不同廠商的IDS係統之間也需要通信。因此,有必要定義統一的協議。目前,IETF目前有一個專門的小組IntrusionDetectionWorkingGroup(idwg)負責定義這種通信格式,稱作IntrusionDetectionExchangeFormat,但還沒有統一的標準。

以下是設計通信協議時應考慮的問題:1、係統與控製係統之間傳輸的信息是非常重要的信息,因此必須要保持數據的真實性和完整性。必須有一定的機製進行通信雙方的身份驗證和保密傳輸(同時防止主動和被動攻擊)。2.通信的雙方均有可能因異常情況而導致通信中斷,IDS係統必須有額外措施保證係統正常工作。

入侵檢測技術

對各種事件進行分析,從中發現違反安全策略的行為是入侵檢測係統的核心功能。從技術上,入侵檢測分為兩類:一種基於標誌(signature-based),另一種基於異常情況(anomaly-based)。

對於基於標識的檢測技術來說,首先要定義違背安全策略的事件的特征,如網絡數據包的某些頭信息。檢測主要判別這類特征是否在所收集到的數據中出現。此方法非常類似殺毒軟件。

而基於異常的檢測技術則是先定義一組係統"正常"情況的數值,如CPU利用率、內存利用率、文件校驗和等(這類數據可以人為定義,也可以通過觀察係統、並用統計的辦法得出),然後將係統運行時的數值與所定義的"正常"情況比較,得出是否有被攻擊的跡象。這種檢測方式的核心在於如何定義所謂的"正常"情況。

兩種檢測技術的方法、所得出的結論有非常大的差異。基於異常的檢測技術的核心是維護一個知識庫。對於已知的攻擊,它可以詳細、準確的報告出攻擊類型,但是對未知攻擊卻效果有限,而且知識庫必須不斷更新。基於異常的檢測技術則無法準確判別出攻擊的手法,但它可以(至少在理論上可以)判別更廣範、甚至未發覺的攻擊。

入侵檢測過程

從總體來說,入侵檢測係統可以分為兩個部分:收集係統和非係統中的信息然後對收集到的數據進行分析,並采取相應措施。

信息收集

信息收集包括收集係統、網絡、數據及用戶活動的狀態和行為。而且,需要在計算機網絡係統中的若幹不同關鍵點(不同網段和不同主機)收集信息,這除了盡可能擴大檢測範圍的因素外,還有一個就是對來自不同源的信息進行特征分析之後比較得出問題所在的因素。

入侵檢測很大程度上依賴於收集信息的可靠性和正確性,因此,很有必要隻利用所知道的真正的和精確的軟件來報告這些信息。因為黑客經常替換軟件以搞混和移走這些信息,例如替換被程序調用的子程序、記錄文件和其它工具。黑客對係統的修改可能使係統功能失常並看起來跟正常的一樣。例如,unix係統的PS指令可以被替換為一個不顯示侵入過程的指令,或者是編輯器被替換成一個讀取不同於指定文件的文件(黑客隱藏了初試文件並用另一版本代替)。這需要保證用來檢測網絡係統的軟件的完整性,特別是入侵檢測係統軟件本身應具有相當強的堅固性,防止被篡改而收集到錯誤的信息。入侵檢測利用的信息一般來自以下三個方麵(這裏不包括物理形式的入侵信息):