第一章 入侵檢測系統(tǒng)概念
當(dāng)越來越多的公司將其核心業(yè)務(wù)向互聯(lián)網(wǎng)轉(zhuǎn)移的時候,網(wǎng)絡(luò)安全作為一個無法回避的問題呈現(xiàn)在人們面前。傳統(tǒng)上,公司一般采用防火墻作為安全的第一道防線。而隨著攻擊者知識的日趨成熟,攻擊工具與手法的日趨復(fù)雜多樣,單純的防火墻策略已經(jīng)無法滿足對安全高度敏感的部門的需要,網(wǎng)絡(luò)的防衛(wèi)必須采用一種縱深的、多樣的手段。與此同時,當(dāng)今的網(wǎng)絡(luò)環(huán)境也變得越來越復(fù)雜,各式各樣的復(fù)雜的設(shè)備,需要不斷升級、補(bǔ)漏的系統(tǒng)使得網(wǎng)絡(luò)管理員的工作不斷加重,不經(jīng)意的疏忽便有可能造成安全的重大隱患。在這種環(huán)境下,入侵檢測系統(tǒng)成為了安全市場上新的熱點(diǎn),不僅愈來愈多的受到人們的關(guān)注,而且已經(jīng)開始在各種不同的環(huán)境中發(fā)揮其關(guān)鍵作用。
本文中的“入侵”(Intrusion)是個廣義的概念,不僅包括被發(fā)起攻擊的人(如惡意的黑客)取得超出合法范圍的系統(tǒng)控制權(quán),也包括收集漏洞信息,造成拒絕訪問(Denial of Service)等對計算機(jī)系統(tǒng)造成危害的行為。
入侵檢測(Intrusion Detection),顧名思義,便是對入侵行為的發(fā)覺。它通過對計算機(jī)網(wǎng)
絡(luò)或計算機(jī)系統(tǒng)中得若干關(guān)鍵點(diǎn)收集信息并對其進(jìn)行分析,從中發(fā)現(xiàn)網(wǎng)絡(luò)或系統(tǒng)中是否有違反安全策略的行為和被攻擊的跡象。進(jìn)行入侵檢測的軟件與硬件的組合便是入侵檢測系統(tǒng)(Intrusion Detection System,簡稱IDS)。與其他安全產(chǎn)品不同的是,入侵檢測系統(tǒng)需要更多的智能,它必須可以將得到的數(shù)據(jù)進(jìn)行分析,并得出有用的結(jié)果。一個合格的入侵檢測系統(tǒng)能大大的簡化管理員的工作,保證網(wǎng)絡(luò)安全的運(yùn)行。
bitsCN#com中國網(wǎng)管聯(lián)盟
具體說來,入侵檢測系統(tǒng)的主要功能有([2]):
a.監(jiān)測并分析用戶和系統(tǒng)的活動;
b.核查系統(tǒng)配置和漏洞;
c.評估系統(tǒng)關(guān)鍵資源和數(shù)據(jù)文件的完整性;
d.識別已知的攻擊行為;
e.統(tǒng)計分析異常行為;
f.操作系統(tǒng)日志管理,并識別違反安全策略的用戶活動。
由于入侵檢測系統(tǒng)的市場在近幾年中飛速發(fā)展,許多公司投入到這一領(lǐng)域上來。除了國外的ISS、axent、NFR、cisco等公司外,國內(nèi)也有數(shù)家公司(如中聯(lián)綠盟,中科網(wǎng)威等)推出了自己相應(yīng)的產(chǎn)品。但就目前而言,入侵檢測系統(tǒng)還缺乏相應(yīng)的標(biāo)準(zhǔn)。目前,試圖對IDS進(jìn)行標(biāo)
準(zhǔn)化的工作有兩個組織:IETF的Intrusion Detection Working Group (idwg)和Common Int
rusion Detection Framework (CIDF),但進(jìn)展非常緩慢,尚沒有被廣泛接收的標(biāo)準(zhǔn)出臺。
第二章 入侵檢測系統(tǒng)模型
2.1 CIDF模型
Common Intrusion Detection Framework (CIDF)(http://www.gidos.org/)闡述了一個入侵檢測系統(tǒng)(IDS)的通用模型。它將一個入侵檢測系統(tǒng)分為以下組件:
l事件產(chǎn)生器(Event generators) [bitsCN_com]
l 事件分析器(Event analyzers
l 響應(yīng)單元(Response units )
l 事件數(shù)據(jù)庫(Event databases )
CIDF將IDS需要分析的數(shù)據(jù)統(tǒng)稱為事件(event),它可以是網(wǎng)絡(luò)中的數(shù)據(jù)包,也可以是從系統(tǒng)
日志等其他途徑得到的信息。
事件產(chǎn)生器的目的是從整個計算環(huán)境中獲得事件,并向系統(tǒng)的其他部分提供此事件。事件分析器分析得到的數(shù)據(jù),并產(chǎn)生分析結(jié)果。響應(yīng)單元則是對分析結(jié)果作出作出反應(yīng)的功能單元,它可以作出切斷連接、改變文件屬性等強(qiáng)烈反應(yīng),也可以只是簡單的報警。事件數(shù)據(jù)庫是存放各種中間和最終數(shù)據(jù)的地方的統(tǒng)稱,它可以是復(fù)雜的數(shù)據(jù)庫,也可以是簡單的文本文件。
在這個模型中,前三者以程序的形式出現(xiàn),而最后一個則往往是文件或數(shù)據(jù)流的形式。
在其他文章中,經(jīng)常用數(shù)據(jù)采集部分、分析部分和控制臺部分來分別代替事件產(chǎn)生器、事件分析器和響應(yīng)單元這些術(shù)語。且常用日志來簡單的指代事件數(shù)據(jù)庫。如不特別指明,本文中兩套術(shù)語意義相同。
2.2 IDS分類
一般來說,入侵檢測系統(tǒng)可分為主機(jī)型和網(wǎng)絡(luò)型。
主機(jī)型入侵檢測系統(tǒng)往往以系統(tǒng)日志、應(yīng)用程序日志等作為數(shù)據(jù)源,當(dāng)然也可以通過其他手段(如監(jiān)督系統(tǒng)調(diào)用)從所在的主機(jī)收集信息進(jìn)行分析。主機(jī)型入侵檢測系統(tǒng)保護(hù)的一般是所在的系統(tǒng)。 www@bitscn@com
網(wǎng)絡(luò)型入侵檢測系統(tǒng)的數(shù)據(jù)源則是網(wǎng)絡(luò)上的數(shù)據(jù)包。往往將一臺機(jī)子的網(wǎng)卡設(shè)于混雜模式(promisc mode),監(jiān)聽所有本網(wǎng)段內(nèi)的數(shù)據(jù)包并進(jìn)行判斷。一般網(wǎng)絡(luò)型入侵檢測系統(tǒng)擔(dān)負(fù)著保護(hù)整個網(wǎng)段的任務(wù)。
不難看出,網(wǎng)絡(luò)型IDS的優(yōu)點(diǎn)主要是簡便:一個網(wǎng)段上只需安裝一個或幾個這樣的系統(tǒng),便可以監(jiān)測整個網(wǎng)段的情況。且由于往往分出單獨(dú)的計算機(jī)做這種應(yīng)用,不會給運(yùn)行關(guān)鍵業(yè)務(wù)的主機(jī)帶來負(fù)載上的增加。但由于現(xiàn)在網(wǎng)絡(luò)的日趨復(fù)雜和高速網(wǎng)絡(luò)的普及,這種結(jié)構(gòu)正受到越來越大的挑戰(zhàn)。一個典型的例子便是交換式以太網(wǎng)。
而盡管主機(jī)型IDS的缺點(diǎn)顯而易見:必須為不同平臺開發(fā)不同的程序、增加系統(tǒng)負(fù)荷、所需安裝數(shù)量眾多等,但是內(nèi)在結(jié)構(gòu)卻沒有任何束縛,同時可以利用操作系統(tǒng)本身提供的功能、并結(jié)合異常分析,更準(zhǔn)確的報告攻擊行為。參考文獻(xiàn)[7]對此做了描述,感興趣的讀者可參看。
入侵檢測系統(tǒng)的幾個部件往往位于不同的主機(jī)上。一般來說會有三臺機(jī)器,分別運(yùn)行事件產(chǎn)生器、事件分析器和響應(yīng)單元。在安裝IDS的時候,關(guān)鍵是選擇數(shù)據(jù)采集部分所在的位置,因為它決定了“事件”的可見度。
對于主機(jī)型IDS,其數(shù)據(jù)采集部分當(dāng)然位于其所監(jiān)測的主機(jī)上。 bitsCN.nET*中國網(wǎng)管博客
對于網(wǎng)絡(luò)型IDS,其數(shù)據(jù)采集部分則有多種可能:
(1)如果網(wǎng)段用總線式的集線器相連,則可將其簡單的接在集線器的一個端口上即可;
(2)對于交換式以太網(wǎng)交換機(jī),問題則會變得復(fù)雜。由于交換機(jī)不采用共享媒質(zhì)的辦法,傳統(tǒng)的采用一個sniffer來監(jiān)聽整個子網(wǎng)的辦法不再可行。可解決的辦法有:
a.交換機(jī)的核心芯片上一般有一個用于調(diào)試的端口(span port),任何其他端口的進(jìn)出信息都可從此得到。如果交換機(jī)廠商把此端口開放出來,用戶可將IDS系統(tǒng)接到此端口上。
優(yōu)點(diǎn):無需改變IDS體系結(jié)構(gòu)。
缺點(diǎn):采用此端口會降低交換機(jī)性能。
b.把入侵檢測系統(tǒng)放在交換機(jī)內(nèi)部或防火墻內(nèi)部等數(shù)據(jù)流的關(guān)鍵入口、出口。
優(yōu)點(diǎn):可得到幾乎所有關(guān)鍵數(shù)據(jù)。
缺點(diǎn):必須與其他廠商緊密合作,且會降低網(wǎng)絡(luò)性能。
c.采用分接器(Tap),將其接在所有要監(jiān)測的線路上。
優(yōu)點(diǎn):再不降低網(wǎng)絡(luò)性能的前提下收集了所需的信息。
缺點(diǎn):必須購買額外的設(shè)備(Tap);若所保護(hù)的資源眾多,IDS必須配備眾多網(wǎng)絡(luò)接口。
d.可能唯一在理論上沒有限制的辦法就是采用主機(jī)型IDS。
bitsCN~com
2.3 通信協(xié)議
IDS系統(tǒng)組件之間需要通信,不同的廠商的IDS系統(tǒng)之間也需要通信。因此,定義統(tǒng)一的協(xié)議,使各部分能夠根據(jù)協(xié)議所致訂的的標(biāo)準(zhǔn)進(jìn)行溝通是很有必要的。
IETF目前有一個專門的小組Intrusion Detection Working Group (idwg)負(fù)責(zé)定義這種通信
格式,稱作Intrusion Detection Exchange Format。目前只有相關(guān)的草案(internet draft),并未形成正式的RFC文檔。盡管如此,草案為IDS各部分之間甚至不同IDS系統(tǒng)之間的通信提供了一定的指引。
IAP(Intrusion Alert Protocol)是idwg制定的、運(yùn)行于TCP之上的應(yīng)用層協(xié)議,其設(shè)計在很大程度上參考了HTTP,但補(bǔ)充了許多其他功能(如可從任意端發(fā)起連接,結(jié)合了加密、身份驗證等)。對于IAP的具體實(shí)現(xiàn),請參看 [9],其中給出了非常詳盡的說明。這里我們主要討論一下設(shè)計一個入侵檢測系統(tǒng)通信協(xié)議時應(yīng)考慮的問題:
1. 分析系統(tǒng)與控制系統(tǒng)之間傳輸?shù)男畔⑹欠浅V匾男畔ⅲ虼吮仨氁3謹(jǐn)?shù)據(jù)的真實(shí)性和完整性。必須有一定的機(jī)制進(jìn)行通信雙方的身份驗證和保密傳輸(同時防止主動和被動攻擊)。
2. 通信的雙方均有可能因異常情況而導(dǎo)致通信中斷,IDS系統(tǒng)必須有額外措施保證系統(tǒng)正常工作。 bitsCN~com
2.4入侵檢測技術(shù)
對各種事件進(jìn)行分析,從中發(fā)現(xiàn)違反安全策略的行為是入侵檢測系統(tǒng)的核心功能。從技術(shù)上,入侵檢測分為兩類:一種基于標(biāo)志(signature-based),另一種基于異常情況(anomaly-based)。
對于基于標(biāo)識的檢測技術(shù)來說,首先要定義違背安全策略的事件的特征,如網(wǎng)絡(luò)數(shù)據(jù)包的某些頭信息。檢測主要判別這類特征是否在所收集到的數(shù)據(jù)中出現(xiàn)。此方法非常類似殺毒軟件。
而基于異常的檢測技術(shù)則是先定義一組系統(tǒng)“正常”情況的數(shù)值,如CPU利用率、內(nèi)存利用率、文件校驗和等(這類數(shù)據(jù)可以人為定義,也可以通過觀察系統(tǒng)、并用統(tǒng)計的辦法得出),然后將系統(tǒng)運(yùn)行時的數(shù)值與所定義的“正常”情況比較,得出是否有被攻擊的跡象。這種檢測方式的核心在于如何定義所謂的“正常”情況。
兩種檢測技術(shù)的方法、所得出的結(jié)論有非常大的差異。基于異常的檢測技術(shù)的核心是維護(hù)一個知識庫。對于已知得攻擊,它可以詳細(xì)、準(zhǔn)確的報告報告出攻擊類型,但是對未知攻擊卻效果有限,而且知識庫必須不斷更新。基于異常的檢測技術(shù)則無法準(zhǔn)確判別出攻擊的手法,但它可以(至少在理論上可以)判別更廣范、甚至未發(fā)覺的攻擊。
如果條件允許,兩者結(jié)合的檢測會達(dá)到更好的效果。 www_bitscn_com中國.網(wǎng)管聯(lián)盟
第四章 存在的問題
盡管有眾多的商業(yè)產(chǎn)品出現(xiàn),與諸如防火墻等技術(shù)高度成熟的產(chǎn)品相比,入侵檢測系統(tǒng)還存在相當(dāng)多的問題。這一章我們便要討論一下對其進(jìn)行威脅的主要因素,值得注意的是,這些問題大多是目前入侵檢測系統(tǒng)的結(jié)構(gòu)所難以克服的(包括waRcher),而且這些矛盾可能越來越尖銳。



