IDS在結構上可劃分為數據收集和數據分析兩部分。
一、 數據收集機制
數據收集機制在IDS中占據著舉足輕重的位置。如果收集的數據時延較大,檢測就會失去作用;如果數據不完整,系統的檢測能力就會下降;如果由于錯誤或入侵者的行為致使收集的數據不正確,IDS就會無法檢測某些入侵,給用戶以安全的假象。
1. 分布式與集中式數據收集機制
分布式數據收集:檢測系統收集的數據來自一些固定位置而且與受監視的網元數量無關。
集中式數據收集:檢測系統收集的數據來自一些與受監視的網元數量有一定比例關系的位置。
集中式和分布式數據收集方式的區別通常是衡量IDS數據收集能力的標志,它們幾乎以相同的比例應用于當前的IDS產品中。據專家預言,分布式數據收集機制在若干年后將會占有優勢。
2. 直接監控和間接監控
如果IDS從它所監控的對象處直接獲得數據,則稱為直接監控;反之,如果IDS依賴一個單獨的進程或工具獲得數據,則稱為間接監控。
就檢測入侵行為而言,直接監控要優于間接監控,由于直接監控操作的復雜性,目前的IDS產品中只有不足20%使用了直接監控機制。
3. 基于主機的數據收集和基于網絡的數據收集
基于主機的數據收集是從所監控的主機上獲取的數據; 基于網絡的數據收集是通過被監視網絡中的數據流獲得數據。
總體而言,基于主機的數據收集要優于基于網絡的數據收集。
4. 外部探測器和內部探測器
外部探測器是負責監測主機中某個組件(硬件或軟件)的軟件。它將向IDS提供所需的數據,這些操作是通過獨立于系統的其他代碼來實施的。
內部探測器是負責監測主機中某個組件(硬件或軟件)的軟件。它將向IDS提供所需的數據,這些操作是通過該組件的代碼來實施的。
外部探測器和內部探測器在用于數據收集時各有利弊,可以綜合使用。
由于內部探測器實現起來的難度較大,所以在現有的IDS產品中,只有很少的一部分采用它。
二、 數據分析機制
根據IDS如何處理數據,可以將IDS分為分布式IDS和集中式IDS。
分布式IDS:在一些與受監視組件相應的位置對數據進行分析的IDS。
集中式IDS:在一些固定且不受監視組件數量限制的位置對數據進行分析的IDS。
請注意這些定義是基于受監視組件的數量而不是主機的數量,所以如果在系統中的不同組件中進行數據分析,除了安裝集中式IDS外,有可能在一個主機中安裝分布式數據分析的IDS。分布式和集中式IDS都可以使用基于主機、基于網絡或兩者兼備的數據收集方式。
特性 集中式 分布式
可靠性 僅需運行較少的組件 需要運行較多的組件
容錯 容易使系統從崩潰中恢復,但也容易被故障中斷。 由于分布特性,所有數據存儲時很難保持一致性和可恢復性。
增加額外的系統開銷 僅在分析組件中增加了一些開銷,那些被賦予了大量負載的主機應專門用作分析。 由于運行的組件不大,主機上增加的開銷很小,但對大部分被監視的主機增加了額外開銷。
可擴容性 IDS的組件數量被限定,當被監視主機的數量增加時,需要更多的計算和存儲資源處理新增的負載。 分布式系統可以通過增加組件的數量來監視更多的主機,但擴容將會受到新增組件之間需要相互通信的制約。
平緩地降低服務等級 如果有一個分析組件停止了工作,一部分程序和主機就不再被監視,但整個IDS仍在繼續工作。 如果有一個分析組件停止了工作,整個IDS就有可能停止工作。
動態地重新配置 使用很少的組件來分析所有的數據,如果重新配置它們需要重新啟動IDS。 很容易進行重新配置,不會影響剩余部分的性能。
由于分布式不易實現,目前的IDS產品多是集中式的。
三、 縮短數據收集與數據分析的距離
在實際操作過程中,數據收集和數據分析通常被劃分成兩個步驟,在不同的時間甚至是不同的地點進行。但這一分離存在著缺點,在實際使用過程中,數據收集與數據分析功能之間應盡量縮短距離。