摘要:現(xiàn)有的基于免疫機(jī)制的NIDS模型有著諸多缺陷。針對(duì)這些缺陷,同時(shí)借鑒關(guān)于免疫識(shí)別的最新理論(危險(xiǎn)模式理論),本文提出了一個(gè)新型的NIDS模型。其中,改變了自體庫的角色,以減輕檢測(cè)代理的負(fù)擔(dān);引入了基于異常信號(hào)的免疫識(shí)別,降低了虛警率,同時(shí)增強(qiáng)了系統(tǒng)的適應(yīng)性;提出了新的親和力算法,通過“關(guān)鍵基因片段控制串” 提高了識(shí)別的效率和準(zhǔn)確率。
關(guān)鍵詞:網(wǎng)絡(luò)入侵檢測(cè);免疫;危險(xiǎn)模式理論;親和力計(jì)算
中圖分類號(hào):TP393文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2008)10-1pppp-0c
A New NIDS Model based on Dangerous Model Theory
YAN Yan
(Computer Teaching And Research Section,North Campus,Anyang Institute Of Technology,Anyang 455001,China)
Abstract:The NIDS models based on immunity have many deficiencies.For these deficiencies,a new NIDS model in which the new immune recognition theory (Dangerous Model Theory) was used has been put forward in this paper.In this model,role of the self library has been changed to release Detection Agents;Immune recognition mechanism based on abnormal signals has been introduced,the rate of mis-alarm was reduced and the adaptability was advanced; A new affinity algorithm has been put forward,efficiency and veracity has been advanced depend on \"key gene snippet control string\".
Key words: Network Intrusion Detection;Immunity;Dangerous Model Theory;Affinity algorithm
1 引言
入侵檢測(cè)系統(tǒng)(IDS, Intrusion Detection System)現(xiàn)已成為不可或缺的網(wǎng)絡(luò)安全基礎(chǔ)設(shè)施之一。當(dāng)前投入實(shí)際應(yīng)用的IDS大都基于特征庫和模式匹配,能夠準(zhǔn)確檢測(cè)出所有的已知入侵。但這種傳統(tǒng)的入侵檢測(cè)方法存在著兩個(gè)致命的缺陷[1]:一是,隨著特征庫規(guī)模的不斷擴(kuò)大,難以滿足對(duì)IDS的實(shí)時(shí)性要求;二是,智能性太低,無法應(yīng)對(duì)日益復(fù)雜的網(wǎng)絡(luò)環(huán)境。于是,具備更高適應(yīng)性和智能性的IDS已成為當(dāng)前網(wǎng)絡(luò)安全界的研究熱點(diǎn)。
關(guān)于如何維護(hù)系統(tǒng)自身安全和穩(wěn)定的問題,大自然已給了我們一個(gè)幾乎完美的例子——自然免疫系統(tǒng)(NIS)。NIS是一個(gè)自學(xué)習(xí)、自適應(yīng)的“適應(yīng)性系統(tǒng)”,能夠根據(jù)環(huán)境的變化,依靠眾多免疫成員的相互協(xié)作,通過各種免疫機(jī)制對(duì)自身進(jìn)行調(diào)節(jié),以維持機(jī)體的安全和穩(wěn)定[2]。而IDS的研究目標(biāo)也正是建立這樣一種高度自治的適應(yīng)性系統(tǒng)。于是,許多學(xué)者投入到借鑒NIS構(gòu)建IDS的研究之中。大部分相關(guān)研究?jī)A向于完全模擬NIS的運(yùn)行機(jī)制,如基因的高頻變異和隨機(jī)重組、自體耐受、親合力成熟等等。但這些機(jī)制的成功運(yùn)作是建立在機(jī)體的高度并行處理能力基礎(chǔ)上的,并不適合在現(xiàn)有的計(jì)算機(jī)系統(tǒng)中模擬。而且,網(wǎng)絡(luò)系統(tǒng)的自體行為并不像機(jī)體那樣穩(wěn)定[3],而是隨著時(shí)間推移和用戶習(xí)慣的變化而動(dòng)態(tài)變化。
關(guān)于免疫識(shí)別的機(jī)制,Matzinger提出了不同于傳統(tǒng)的Self/Nonself機(jī)制的危險(xiǎn)模式理論 [4,5],認(rèn)為NIS是根據(jù)機(jī)體產(chǎn)生的各種危險(xiǎn)信號(hào)而不是通過簡(jiǎn)單的Self/Nonself方式來實(shí)現(xiàn)對(duì)病原體的識(shí)別。這為IDS的研究提供了新的啟示。
應(yīng)用智能方法解決問題時(shí),相關(guān)領(lǐng)域的先驗(yàn)知識(shí)對(duì)問題的有效解決往往起著重要的作用[3]。經(jīng)過入侵檢測(cè)技術(shù)多年來的發(fā)展,人們已建立了豐富的攻擊特征庫,而新的攻擊方法大都是現(xiàn)有攻擊的變種[1],具有類似的特征。所以,應(yīng)盡量將這些關(guān)于已知攻擊特征的先驗(yàn)知識(shí)融入到對(duì)新型IDS的構(gòu)建中。
本文沿襲了Kim提出的IDS模型[6],借鑒危險(xiǎn)理論的思想,構(gòu)建了一個(gè)新型的NIDS——aiIDS。其中,改變了自體庫的角色,以減輕檢測(cè)代理的負(fù)擔(dān);引入了基于異常信號(hào)的免疫識(shí)別,降低了虛警率,同時(shí)增強(qiáng)了系統(tǒng)的適應(yīng)性;提出了新的親和力算法,通過“關(guān)鍵基因片段控制串” 提高了識(shí)別的效率和準(zhǔn)確率。
2 aiIDS的總體設(shè)計(jì)
2.1 傳統(tǒng)的基于免疫機(jī)制的NIDS
由于NIS和IDS所面臨問題的天然相似性,近年來已有許多學(xué)者和機(jī)構(gòu)投入到相關(guān)的研究中,并取得了一些成功。最具代表性的是S. Forrest、J. Kim、P. Bentley、D. Dasgupta等人的研究成果。這些成果大都傾向于完全模擬機(jī)體的免疫機(jī)制。但這些免疫機(jī)制的成功運(yùn)作是建立在機(jī)體高度并行處理能力基礎(chǔ)上的,并不適合當(dāng)前計(jì)算機(jī)的運(yùn)算水平。為了提高檢測(cè)器的生成效率,人們提出了基因庫進(jìn)化[7]的策略,將逝去的成熟檢測(cè)器的基因片段收入基因庫,通過變異和重組生成新的檢測(cè)器。但該策略仍然存在著盲目性的問題,幾個(gè)成熟檢測(cè)器的基因片段重組后仍是有效檢測(cè)器的概率很低;另外,攻擊行為一般只在一段時(shí)間內(nèi)集中發(fā)生,那么,即使利用基因庫生成的檢測(cè)器是有效的,相應(yīng)攻擊再次發(fā)生的概率一般也是很低的,因而檢測(cè)代理中的檢測(cè)器的使用率很低,不利于提高系統(tǒng)的適應(yīng)性;而且,一個(gè)曾經(jīng)有效的檢測(cè)器在一段時(shí)間后可能恢復(fù)為正常行為(這在當(dāng)前的分布式攻擊中是很常見的),那么,基于基因庫生成的檢測(cè)器可能影響這些正常通信。
現(xiàn)有的識(shí)別算法也不適于入侵檢測(cè)問題。大多相關(guān)文獻(xiàn)將檢測(cè)器和抗原進(jìn)行二進(jìn)制編碼,利用各種親和力算法進(jìn)行識(shí)別。常用的親和力算法有[8]:r-連續(xù)位匹配、歐氏距離、海明距離等。然而,對(duì)于不同的檢測(cè)器,其個(gè)基因片段的重要性是不同的。例如,對(duì)于Land攻擊,待檢流量的源IP和目的IP是否相同便成為確定流量是否為入侵行為的關(guān)鍵片斷,其他的屬性則無關(guān)緊要。許多文獻(xiàn)還提出了各種加權(quán)的親和力算法,但權(quán)值需要根據(jù)檢測(cè)器的不同及網(wǎng)絡(luò)的當(dāng)前狀況動(dòng)態(tài)變化,故這些算法仍未解決根本問題。
總結(jié)上面的分析,我們知道了當(dāng)前基于免疫機(jī)制的IDS所存在的一些缺陷:(1)生成檢測(cè)器的有效率低,檢測(cè)代理的負(fù)荷較重,難以滿足實(shí)時(shí)性要求;(2)生成的檢測(cè)器不能反映網(wǎng)絡(luò)系統(tǒng)當(dāng)前所處的狀況,適應(yīng)性差;(3)現(xiàn)有識(shí)別算法無法準(zhǔn)確高效的識(shí)別入侵行為。
2.2 aiIDS中引入的新型免疫算子
針對(duì)前面總結(jié)的缺陷,我們?cè)赼iIDS中引入了幾個(gè)新型的免疫算子,來克服這些缺陷。首先介紹aiIDS的總體架構(gòu)(Figure 1)。aiIDS主要由三個(gè)部件組成:初級(jí)IDS、異常監(jiān)視器和檢測(cè)代理。
(1)初級(jí)IDS(Primary IDS, PIDS)
不同于Kim的模型[6],PIDS的主要作用不再是生成成熟的檢測(cè)器,PIDS維護(hù)著一個(gè)動(dòng)態(tài)更新的自體庫,其中記錄著近期發(fā)生的正常流量。PIDS利用自體庫對(duì)待檢測(cè)流量進(jìn)行過濾,而后交于檢測(cè)代理進(jìn)行檢測(cè)。這樣做有兩個(gè)好處,一是減輕了檢測(cè)代理的負(fù)荷,提高了整個(gè)系統(tǒng)的實(shí)時(shí)性;二是在網(wǎng)絡(luò)系統(tǒng)受到DDoS攻擊時(shí),在進(jìn)行應(yīng)急處理的同時(shí)不影響已知的正常服務(wù)。
(2)異常監(jiān)視器(Abnormal Monitor)
異常監(jiān)視器是系統(tǒng)的核心,是借鑒危險(xiǎn)模式理論而引入的部件。負(fù)責(zé)對(duì)網(wǎng)絡(luò)中的流量進(jìn)行統(tǒng)計(jì)分析,以一些事先定義的規(guī)則判斷是否出現(xiàn)異常。一方面將出現(xiàn)的異常以異常信號(hào)的形式送至檢測(cè)代理;另一方面將正常的網(wǎng)絡(luò)行為反饋至PIDS更新自體庫。這樣做降低了虛警率,同時(shí)提高了系統(tǒng)的適應(yīng)性。異常監(jiān)視器中統(tǒng)計(jì)項(xiàng)和異常規(guī)則都是根據(jù)關(guān)于攻擊特征的先驗(yàn)知識(shí)選取和定義的。
(3)檢測(cè)代理(Detection Agent)
檢測(cè)代理是負(fù)責(zé)檢測(cè)的部件,接收PIDS發(fā)來的待檢流量,根據(jù)自身維護(hù)的檢測(cè)器集合以及來自異常監(jiān)視器的異常信號(hào)來確定是否發(fā)生入侵。當(dāng)有檢測(cè)器識(shí)別某一流量,但未出現(xiàn)相應(yīng)的異常信號(hào)時(shí),該檢測(cè)器將被刪除;而在檢測(cè)代理收到了異常信號(hào),但沒有相應(yīng)的檢測(cè)器時(shí),會(huì)根據(jù)異常信號(hào)提供的信息自動(dòng)生成相應(yīng)的檢測(cè)器,我們稱此過程為疫苗的制作和注射。這樣,檢測(cè)代理中始終維護(hù)著一個(gè)足以應(yīng)付當(dāng)前環(huán)境的輕量級(jí)檢測(cè)器集合,使得檢測(cè)代理處于輕量級(jí)水平,提高了系統(tǒng)的實(shí)時(shí)性和適應(yīng)性。也正是由于檢測(cè)代理的輕量級(jí)特點(diǎn),我們可以以很小的代價(jià)增加檢測(cè)代理以提高系統(tǒng)的魯棒性。
在aiIDS中,我們引入了自體庫動(dòng)態(tài)更新、待檢流量的否定選擇、基于異常信號(hào)協(xié)同刺激的免疫識(shí)別、疫苗的自動(dòng)制作和注射以及根據(jù)先驗(yàn)知識(shí)的異常統(tǒng)計(jì)分析等新型免疫算子。圖2顯示了aiIDS的詳細(xì)組成。
3 檢測(cè)器和異常信號(hào)的設(shè)計(jì)
3.1 檢測(cè)器的設(shè)計(jì)及新型親和力算法
NIDS主要負(fù)責(zé)對(duì)網(wǎng)絡(luò)中的流量進(jìn)行實(shí)時(shí)的檢測(cè),以發(fā)現(xiàn)針對(duì)各層網(wǎng)絡(luò)協(xié)議漏洞的入侵行為。簡(jiǎn)單起見,我們把檢測(cè)對(duì)象限制在運(yùn)輸層的流量。在運(yùn)輸層,主要流量有三種:TCP、UDP和ICMP。為了提高檢測(cè)的效率和準(zhǔn)確性,我們?cè)O(shè)計(jì)三種類型的檢測(cè)器。檢測(cè)器的結(jié)構(gòu)應(yīng)在能夠充分反應(yīng)流量特異性的基礎(chǔ)上盡可能的簡(jiǎn)單。于是,我們對(duì)三種檢測(cè)器的基因結(jié)構(gòu)作如下設(shè)計(jì)(圖3)。
其中,src_ip和dst_ip分別為源IP和目的IP,src_port和dst_port分別為源端口號(hào)和目的端口號(hào),type和code分別為ICMP報(bào)文的類型和代碼(ICMP包頭的字段)。mark的結(jié)構(gòu)如圖4所示。
除了基因型外,檢測(cè)器還有生成時(shí)間、生存期、濃度以及指向處理函數(shù)的指針等結(jié)構(gòu)成員。為了克服當(dāng)前親和力算法的缺陷,我們?cè)跈z測(cè)器中加入了“關(guān)鍵基因片段控制串”。控制串中的每一位代表一個(gè)基因片段,當(dāng)某一位為1時(shí),相應(yīng)的基因片段即為關(guān)鍵基因片斷。識(shí)別時(shí)只進(jìn)行關(guān)鍵基因片段的匹配。當(dāng)檢測(cè)器中有不止一個(gè)關(guān)鍵基因片段時(shí),這些基因位都需匹配,才能發(fā)生識(shí)別。
例如,對(duì)應(yīng)于Land攻擊的檢測(cè)器基因片段LAND位對(duì)應(yīng)的控制串位為1,在識(shí)別時(shí),只需對(duì)該基因片段進(jìn)行匹配即可。而在IPsweep攻擊對(duì)應(yīng)的檢測(cè)器中,src_ip、type和code均為關(guān)鍵基因片斷,所以,在識(shí)別時(shí)這些基因片段都需匹配。
3.2 異常統(tǒng)計(jì)項(xiàng)的選取及異常信號(hào)的結(jié)構(gòu)
aiIDS的成功運(yùn)行依賴于準(zhǔn)確的異常信號(hào)以及異常信號(hào)所反映的信息。根據(jù)現(xiàn)已掌握的攻擊特征,是可以選取一組能夠全面反映網(wǎng)絡(luò)狀況的統(tǒng)計(jì)項(xiàng)的。異常信號(hào)的結(jié)構(gòu)分兩部分:異常信號(hào)類型和異常信號(hào)的特征描述串。下面選取3種常見的攻擊,舉例說明如何選取統(tǒng)計(jì)項(xiàng)和異常信號(hào)。
(1)IPsweep
攻擊者向子網(wǎng)中各可能的IP地址發(fā)送ICMP回顯請(qǐng)求,尋找網(wǎng)絡(luò)中的有效IP地址。當(dāng)出現(xiàn)這種攻擊時(shí),網(wǎng)絡(luò)中在短時(shí)間內(nèi)會(huì)出現(xiàn)大量的來自同一源IP地址的ICMP回顯請(qǐng)求。于是,選取統(tǒng)計(jì)項(xiàng)same_src_ip(過去2s內(nèi)源IP地址相同的數(shù)據(jù)報(bào)個(gè)數(shù))。
相應(yīng)的異常信號(hào)為{ICMP_TOOMANY_ECHO_REQ,”src_ip=x.x.x.x”}。
(2)smurf
攻擊者以目標(biāo)機(jī)的IP為源IP向大量的網(wǎng)絡(luò)地址發(fā)送ICMP回顯請(qǐng)求,使得攻擊目標(biāo)會(huì)因收到大量的ICMP回顯應(yīng)答而無法正常工作。選取統(tǒng)計(jì)項(xiàng)same_dst_ip(過去2s內(nèi)目的IP地址相同的數(shù)據(jù)包數(shù)目)。
相應(yīng)的異常信號(hào)為{ICMP_TOOMANY_ECHO_REP,”dst_ip=x.x.x.x”}
(3)SYNflood
攻擊者利用大量的半連接來耗盡目標(biāo)機(jī)的資源。目標(biāo)機(jī)會(huì)在短時(shí)間內(nèi)收到大量的SYN請(qǐng)求,可選取統(tǒng)計(jì)項(xiàng)same_srv_syn(過去2s內(nèi)向相同服務(wù)的SYN請(qǐng)求)。
異常信號(hào)為{TCP_TOOMANY_ERRSYN,”dst_ip=x.x.x.x and dst_port=x”}。
4 總結(jié)與展望
本文通過對(duì)現(xiàn)有基于免疫機(jī)制的IDS的分析,指出了其中的缺陷。根據(jù)這些缺陷,借鑒最新的免疫識(shí)別理論,提出了一種新型的NIDS架構(gòu)。該架構(gòu)創(chuàng)新點(diǎn)有三:(1)改變了自體庫的作用,將否定選擇算法的對(duì)象改為待檢流量,從而極大減輕了檢測(cè)代理的負(fù)荷;(2)借鑒危險(xiǎn)模式理論的思想,提出了基于危險(xiǎn)信號(hào)的免疫識(shí)別,降低了虛警率,同時(shí)提高了系統(tǒng)對(duì)當(dāng)前網(wǎng)絡(luò)環(huán)境的適應(yīng)性;(3)在識(shí)別算法中引入了“關(guān)鍵基因片段控制串”,克服了現(xiàn)有親和力計(jì)算方法的缺陷,使識(shí)別的效率和準(zhǔn)確率都得到了很大提升。這些改進(jìn)使得基于免疫機(jī)制的IDS更加貼近實(shí)際應(yīng)用。
在aiIDS中,異常監(jiān)視器是核心部件,其性能關(guān)系到整個(gè)系統(tǒng)的實(shí)用性。如何更加有效地從關(guān)于攻擊特征的先驗(yàn)知識(shí)中提取統(tǒng)計(jì)項(xiàng),如何進(jìn)行統(tǒng)計(jì)分析以及如何確定異常閾值是今后的研究重點(diǎn)。
參考文獻(xiàn):
[1]羅守山.入侵檢測(cè)[M].北京:北京郵電大學(xué)出版社,2003.ISBN 7-5635-0649-7.
[2]L.Sompayrac. How the Immune System Works: 2nd Edition[M].Oxford: Blackwell Science Limited.ISBN: 0-632-04702-X,2003.
[3]焦李成,杜海峰.人工免疫系統(tǒng)進(jìn)展與展望[J].電子學(xué)報(bào),2003,31(10)1540-1548.
[4]P.Matzinger.The danger model in it s historical context[J].Scandinavian Journal of Immunology,2001(4):4-9.
[5]P.Matzinger.The danger model:A renewed sense of self[J].Science,2002,296:301-305.
[6]J.Kim,J.P.Bentley.The Artificial Immune Model for Network Intrusion Detection[C].7th European Conference on Intelligent Techniques and Soft Computing (EUFIT'99), Aachen, Germany,1999.
[7]J.Kim, J.P.Bentley.A Model of Gene Library Evolution in the Dynamic Clonal Selection[C].In: Proceedings of the first International Conference on Artificial Immune Systems (ICARIS) Canterbury,2002:175-182.
[8]Stephanie Forrest,A.S.Perelson,L Allen, R Cherukuri.Self-Nonself Discrimination in a Computer[C].Proceedings of IEEE Symposium on Research in Security an Privacy,Oakland,1994.5.
收稿日期:2008-01-29