正確區分網絡及主機入侵檢測系統
入侵檢測系統中最普遍的兩種產品是基于網絡的網絡入侵檢測系統(NIDS)和基于主機的主機入侵檢測系統(HIDS)。那么,NIDS與HIDS到底區別在哪里?用戶在使用時該如何選擇呢?
先來回顧一下IDS的定義:所謂入侵檢測,就是通過從計算機網絡或計算機系統中的若干關鍵點收集信息并對其進行分析,從中發現網絡或系統中是否有違反安全策略的行為和遭到襲擊的跡象,并對此做出適當反應的過程。而入侵檢測系統則是實現這些功能的系統。
這個定義是ICSA入侵檢測系統論壇給出的。不難看出,IDS應該是包含了收集信息、分析信息、給出結論、做出反應四個過程。在IDS發展初期,想要全部實現這些功能在技術上是很難辦到的,所以大家都從不同的出發點,開發了不同的IDS。
一般情況下,我們都按照“審計來源”將IDS分成基于網絡的NIDS和基于主機的HIDS,這也是目前應用最普遍的兩種IDS,尤以NIDS應用最為廣泛。大部分IDS都采用“信息收集系統-分析控制系統”結構,即由安裝在被監控信息源的探頭(或代理)來收集相關的信息,然后按照一定方式傳輸給分析機,經過對相關信息的分析,按照事先設定的規則、策略等給出反應。
核心技術有差別
HIDS將探頭(代理)安裝在受保護系統中,它要求與操作系統內核和服務緊密捆綁在一起,監控各種系統事件,如對內核或API的調用,以此來防御攻擊并對這些事件進行日志;還可以監測特定的系統文件和可執行文件調用,以及Windows NT下的安全記錄和Unix環境下的系統記錄。對于特別設定的關鍵文件和文件夾也可以進行適時輪詢的監控。HIDS能對檢測的入侵行為、事件給予積極的反應,比如斷開連接、封掉用戶賬號、殺死進程、提交警報等等。如果某用戶在系統中植入了一個未知的木馬病毒,可能所有的殺病毒軟件、IDS等等的病毒庫、攻擊庫中都沒有記載,但只要這個木馬程序開始工作,如提升用戶權限、非法修改系統文件、調用被監控文件和文件夾等,就會立即被HIDS的發現,并采取殺死進程、封掉賬號,甚至斷開網絡連接。現在的某些HIDS甚至吸取了部分網管、訪問控制等方面的技術,能夠很好地與系統,甚至系統上的應用緊密結合。
HIDS技術要求非常高,要求開發HIDS的企業對相關的操作系統非常了解,而且安裝在主機上的探頭(代理)必須非常可靠,系統占用小,自身安全性要好,否則將會對系統產生負面影響。HIDS關注的是到達主機的各種安全威脅,并不關注網絡的安全。
因為HIDS與操作系統緊密相聯,美國等發達國家對于HIDS技術都是嚴格控制的,而獨自進行有關HIDS系統的研發,成本非常高,所以國內專業從事HIDS的企業非常少。國內市場上能見到的HIDS產品只有:理工先河的“金海豚”、CA的eTrust(包含類似于HIDS的功能模塊)、東方龍馬HIDS(純軟件的)、曙光GodEye等屈指可數的幾個產品,而且能支持的操作系統也基本上都是Solaris、Linux、Wondows 2000非常少的幾個。
NIDS則是以網絡包作為分析數據源。它通常利用一個工作在混雜模式下的網卡來實時監視并分析通過網絡的數據流,其分析模塊通常使用模式匹配、統計分析等技術來識別攻擊行為。一旦檢測到了攻擊行為,IDS的響應模塊就作出適當的響應,比如報警、切斷相關用戶的網絡連接等。與SCANER收集網絡中的漏洞不同,NIDS收集的是網絡中的動態流量信息。因此,攻擊特征庫數目多少以及數據處理能力,就決定了NIDS識別入侵行為的能力。大部分NIDS的處理能力還是100兆級的,部分NIDS已經達到1000兆級。NIDS設在防火墻后一個流動崗哨,能夠適時發覺在網絡中的攻擊行為,并采取相應的響應措施。
目前市場上最常見的入侵檢測系統,絕大多數大都是NIDS,比如東軟NetEye、聯想網御、上海金諾KIDS、啟明星辰天闐、NAI McAfee IntruShied、安氏LinkTrust等等。
HIDS與NIDS雖然基本原理一樣,但實現入侵檢測的方法、過程和起到的作用都是不相同的,他們區別主要如上表所示。
性能和效能標準不同
在衡量IDS性能和效能的有關標準方面,HIDS和NIDS也有很大的不同。
HIDS由于采取的是對事件和系統調用的監控,衡量它的技術指標非常少,一般用戶需要考慮的是,該HIDS能夠同時支持的操作系統數、能夠同時監控的主機數、探頭(代理)對主機系統的資源占用率、可以分析的協議數,另外更需要關注的是分析能力、數據傳輸方式、主機事件類的數目、響應的方式和速度、自身的抗攻擊性、日志能力等等,一般我們采購HIDS需要看的是研發企業的背景、該產品的應用情況和實際的攻擊測試。
而NIDS就相對比較簡單。NIDS采取的基本上都是模式匹配的形式,所以衡量NIDS的技術指標可以數量化。對于NIDS,我們要考察的是:支持的網絡類型、IP碎片重組能力、可以分析的協議數、攻擊特征庫的數目、特征庫的更新頻率、日志能力、數據處理能力、自身抗攻擊性等等。尤其要關注的是數據處理能力,一般的企業100兆級的足以應付;還有攻擊特征庫和更新頻率,國內市場常見的NIDS的攻擊特征數大概都在1200個以上,更新也基本上都是每月,甚至每周更新。采購NIDS需要注意的是漏報和誤報,這是NIDS應用的大敵,也會因各開發企業的技術不同有所不同,所以,在采購時最好要做實際的洪水攻擊測試。
HIDS和NIDS這兩個系統在很大程度上是互補的,許多機構的網絡安全解決方案都同時采用了基于主機和基于網絡的兩種入侵檢測系統。實際上,許多用戶在使用IDS時都配置了基于網絡的入侵檢測,但不能保證檢測并能防止所有的攻擊,特別是一些加密包的攻擊,而網絡中的DNS、Email和Web服務器經常是攻擊的目標,但是,它們又必須與外部網絡交互,不可能對其進行全部屏蔽,所以,應當在各個服務器上安裝基于主機的入侵檢測系統。因此,即便是小規模的網絡結構,也常常需要基于主機和基于網絡的兩種入侵檢測能力。
應用領域分化明顯
在應用領域上,HIDS和NIDS有明顯的分化。NIDS的應用行業比較廣,現在的電信、銀行、金融、電子政務等領域應用得最好。由于我國的主要電信骨干網都部署了NIDS,所以2002年的大規模DoS攻擊時,我們的骨干網并沒有遭到破壞,而且以此為契機,NIDS迅速地推廣到各個應用領域,甚至可以說,“2004年NIDS的應用是沿著防火墻走的”。
但在NIDS的應用過程中,最大的敵人就是誤警和漏警。漏警不影響應用環境的可用性,只是用戶的投資失誤;而誤警則有可能導致警報異常、網絡紊亂,甚至應用的癱瘓。誤警很多時候是設置不當造成的,許多用戶簡單把這些都歸結為檢測錯誤率(False Positives),這是不正確的。由于技術的發展,NIDS的檢測錯誤率實際上已經很低了,我們要努力做的是與用戶一起,深入理解應用,科學的配置,這才能有效減少誤警率。所有說,應用不僅是NIDS廠商的事情,真正的主角應該是用戶。
HIDS的應用,遠比NIDS要復雜的多。由于HIDS不像NIDS有許多可以數據化的技術指標,而且又要在被監控的主機上安裝探頭(代理),使得應用對它都有一定的擔憂。所以對于系統穩定性比較高的一些行業像銀行、電信等對其應用,都非常謹慎。而對于國防、軍工、機要保密等領域,對系統的安全、特別是信息安全要求比較高,而對系統的穩定性不是太敏感,而且更關注來自內部的攻擊(一般這些領域的信息系統是不與公網相連的),所以對HIDS的應用比較容易接受,反而NIDS不是很看重。實際上,目前中國的HIDS市場也主要在這些領域。
由于技術進步和信息安全威脅的增加,從2003年下半年開始,HIDS在其他領域的應用也慢慢多起來了。大型商業企業、數據中心企業以及電子政務系統也都將HIDS納入了基本的安全架構當中。
【編輯推薦】