摘要:在剖析生物免疫機理的基礎上并受其啟示,提出了一種基于生物免疫機理的分布式agent入侵檢測系統的新模型。該模型系統通過多層次分布式代理的相互協作實現主機/網絡的實時入侵檢測,其具有多樣性、分布性、自適應性、容錯性、動態性和可擴展性等特性。在整個設計過程中,充分考慮了最適合生物免疫特性的算法和模型,將agent機制作為一個通信和監測的手段,盡量少地占用系統的開銷,提高了系統的效率,保證了較高的安全水平。同時也給網絡安全領域提出了一種新的研究思路。
關鍵詞:入侵檢測; 生物免疫; 免疫機理; 信息安全; 代理; 分布式
中圖分類號:TP393.08文獻標志碼:A
文章編號:1001-3695(2008)03-0895-04
0引言
近年來,生物免疫系統已成為一個新興的生物信息研究課題。網絡入侵檢測系統與生物免疫系統所遇到的問題具有驚人的相似性,兩者均要在不斷變化的環境中維持系統的穩定性。生物免疫系統天生具有很強的自我保護能力,特別是它能夠識別并消滅外來病原體的能力。免疫系統在信息處理中表現出了分布式保護、多樣性、自組織性、健壯性、可擴展性、記憶能力、容錯能力、動態穩定性以及異常檢測等良好特性。這些正是當前入侵檢測研究領域中所期望得到的,有利于克服當前入侵檢測系統的缺陷,極具挑戰性、發展性和廣闊的應用前景。因此借鑒生物免疫系統的免疫原理進行入侵檢測技術研究具有得天獨厚的優勢[1~3]。
本文在剖析生物免疫機理的基礎上受其啟示,結合計算機網絡入侵檢測系統自身的特點,提出了基于生物免疫機理的分布式agent入侵檢測系統模型。該模型具有較強的容錯能力、自適應性、動態性和可擴展性。
1生物免疫機理
生物體的免疫系統能夠識別并消除絕大多數的病原體。生物體的免疫系統具有分層結構,能夠在多個層次上起到防護作用。最外層的是皮膚,它可以將某些類型的抗原拒之門外;第二層是生理環境,一般生物體內的pH值和溫度等方面提供了不適于外界有機體生存的環境,這將使某些抗原難以存活;第三層是先天性免疫系統,又稱為非特異性免疫,是機體在長期種系發育和進化過程中逐漸形成的一種天然防御功能,這種經遺傳獲得的防御功能有防御多種病菌的能力,但對病菌無特殊針對性;最后一層是適應性免疫系統,又稱為特異性免疫,它通過學習可以適應并識別特定種類的抗原,并且保留對此類抗原的記憶以便將來快速反應[4]。
先天性免疫系統主要包括具有吞噬病原體功能的噬菌細胞,并負責清除體內殘骸和病原體。適應性免疫系統主要包括若干類型的白血細胞,稱為淋巴細胞(lymphocyte)。淋巴細胞分為兩類,即B細胞和T細胞。成熟B細胞來源于骨髓(bone marrow),成熟T細胞來源于胸腺(thymus)。淋巴細胞可以看做是移動的獨立檢測器,隨著血液和淋巴系統在生物體內循環。生物體有上百萬個淋巴細胞,組成了一個分布式檢測系統,隨時動員并聚集于病原體入侵處,進行免疫應答。
適應性免疫系統還能夠學習和識別特殊種類的病原體,并保持記憶,從而加速未來的免疫應答。免疫系統在遭遇新類型病原體時發生初次應答(primary response),初次應答是緩慢的。當初次免疫應答清除感染后,免疫系統對引起感染的病原體保留了記憶。如果生物體下次再遭遇同樣病原體的感染,由于免疫系統已經記住了病原體的特殊性狀,于是就能夠進行更加快速有效的二次應答。適應性免疫系統也稱做獲得性免疫系統(acquired immune system),因為它是生物體在一生中動態獲得的免疫功能。
免疫系統是自組織的、高度分布式的系統,它沒有中心控制節點或者層次式結構,眾多檢測器通過簡單的、本地化的規則相互聯系,共同檢測和清除入侵抗原。免疫系統的特征特別適合于處理大規模數據的模式分類,并為網絡入侵檢測與防御機制提供了有力的借鑒[5]。
2生物免疫機理對網絡入侵檢測的啟示
一個優秀的網絡入侵檢測系統(network intrusion detection system,NIDS)應該是魯棒的、可配置的、可擴展和高效的,而生物免疫系統所具有的分布式、自組織和輕量級特性正好滿足了網絡入侵檢測系統的要求,因此生物免疫系統在網絡入侵檢測中的應用具有得天獨厚的優勢。
生物免疫系統與網絡入侵檢測系統具有本質的相似性:生物免疫系統負責識別生物體的self(自體)與nonself(非自體)細胞,并清除異常細胞;網絡入侵檢測系統則辨別正常與異常行為模式,并采取適當的措施阻止對系統的入侵行為。
生物免疫學與計算機科學的交叉滲透也非常有益。通過研究和借鑒生物免疫系統的運行機制有助于設計更安全的計算機系統。特別值得一提的是Forrest等人[6]、Kim等人[7]及其課題組投身于基于免疫學的NIDS研究,并借鑒生物免疫系統的初次應答與二次應答,提出了計算機免疫學的概念和層次式的NIDS等,為進一步研究基于免疫學的NIDS奠定了堅實的基礎。
因此,生物免疫系統的特性對架構基于免疫機理的網絡入侵檢測系統模型有很多啟示。
2.1多層次保護機制
生物免疫系統為機體提供多層保護以防止病原微生物的入侵。初級保護——表皮和粘膜組織,它阻擋了絕大多數有害物質;二級保護——生理環境,如pH值和溫度,使許多不適應此條件的有害物質死亡;三級保護——非特異性免疫應答,如噬菌細胞等,它是與生俱來的一種免疫能力;四級保護——特異性免疫應答,如淋巴細胞,其能夠粘附病原體并消滅它。這使筆者聯想到構建一個安全有效的網絡防護體系也應當是多層次、多技術的結合。
借鑒這一特點,可以用防火墻等技術作為第一道防線,防止絕大多數的非授權連接;可采用密碼認證技術進一步確保系統的安全;通過采用端口掃描、脆弱性分析等工具可以主動地分析系統的弱點和安全,及時修補存在的漏洞;可采用信息偽裝和誘騙技術來欺騙和捕獲入侵者;還可采用入侵檢測與預警系統來實時地監控被保護系統,在入侵發生之初便及時作出相應的反應,防止入侵繼續;最后還應采用系統備份和恢復方法,使系統即使在經歷了入侵之后也能將損失減至最小。
Dasgupta[8]提出的基于免疫的入侵檢測系統的總體框架,在監控網絡中的計算機活動時利用了多層次防護的概念,同時從用戶層(如用戶登錄地點、時間、擊鍵模式等)、系統層(如CPU使用峰值、可用內存量等)、進程層(如進程數目、類型、狀態等)、數據包層(如連接數目、狀態、所用協議等)多個層次進行監控,能更準確地檢測到入侵。
Jiang Jianchun等人[9]提出的用于大規模計算機網絡系統的防御框架(DFLCNS)也提到了多層次防護以及被動阻止與主動防護相結合的思想。
2.2高度分布式檢測
免疫系統是一個包括免疫器官、免疫細胞和免疫分子的高度分布的龐雜系統,其各組成成分分布于生物體的全身,不存在某個中心控制點來管理整個免疫系統的檢測和響應工作。它通過分布在全身眾多的鄰近免疫成分之間的相互作用,為機體提供全方位的分布式保護。
對于網絡安全防護的許多技術而言,分布性意味著無中心控制,不會發生單點失效,這是其追求的重要目標之一。例如傳統入侵檢測技術一般局限于單一的主機或網絡架構,對異構系統及大規模網絡的檢測明顯不足。因此,基于分布式和監視大規模網絡的入侵檢測系統亟待研究。此類系統的優勢在于它具有高效性、容錯性和易配置性。目前,已有人提出了分布式入侵檢測系統以實現對這一特性的應用。例如Kim等人[7]給出了將免疫思想應用到網絡入侵檢測中的方案;Burroughs等人[10]采用貝葉斯方法來分析和研究分布式入侵檢測系統;Xue等人[11]提出了分布式網絡的入侵檢測體系結構,他們均采用了這種分布式的思想。
2.3多樣性的更替檢測
免疫系統是一個多樣性的系統。每個機體的免疫系統各不相同,因而對同一種抗原的反應能力也不同。免疫系統的這一特性提高了生物的存活率。不僅如此,單個機體的免疫細胞也具有多樣性。當每一種抗原侵入機體時,均能在機體內選擇出可識別和消滅相應抗原的免疫細胞,并使之激活、分化和增殖,進行免疫應答,最終清除抗原。這種多樣性能夠保證當有個體對某病菌呈現脆弱性時,不會出現所有個體均對同一病菌呈現脆弱性的情況。因此,免疫系統的多樣性可大大增強個體和群體的健壯性。
與之相對的情況是在不同的站點或網絡采用不同的安全系統或檢測方法,以確保當單一站點或網絡受到攻擊破壞時,其他站點或網絡避免受到同樣的攻擊和破壞。Anchor等人在文獻[12]中提供了一種實現多樣性的思路和方法。
2.4良好的容錯能力
生物免疫系統是一個強壯的入侵病毒檢測系統,由于結構的分布式,各免疫細胞各自相對獨立地進行病毒檢測,因而某一部分免疫功能的失效并不會影響到整個免疫系統的工作。這一特性對于網絡入侵檢測系統十分重要,它可以使得 NIDS具有良好的容錯能力,同時能夠抵御其本身受到的入侵攻擊。筆者認為,真正意義上的分布性有助于容錯性的提高。比如分布式防火墻的提出就能夠從根本上避免傳統防火墻的單點失效,而Kim等人[7]和Dasgupta[8]提出的基于免疫機理的分布入侵檢測系統均具有良好的容錯性。
2.5較強的自適應性
免疫系統能夠學習識別新型的病原體,而且當一種新的病原體出現時,對它識別程度越高的淋巴細胞繁殖得越快,這大大增強了免疫系統的檢測能力。這個特點用入侵檢測的術語來講,就是免疫系統具有異常檢測的能力,所謂異常檢測是指建立正常系統行為的模式輪廓(profile)來檢測入侵活動的一種檢測方法。免疫系統通過正確建立自身的特征輪廓后(自身),所有與輪廓相異的行為均被視為異常(非自身)。這一點完全類似Denning[13]所建立的異常檢測模型。
免疫系統這個特點給人們的啟發主要有兩點:a)如何能在具體的應用環境下準確完備地定義自身。Forrest等人[6]給出了關于靜態數據、動態進程、局部廣播網絡中計算機間連接的自我定義,可以給出許多參考。b)考慮如何能自適應地調節該檢測器,使其數目和類型能根據入侵的類型自適應地變化。借鑒生物免疫學中與免疫細胞產生相關的基因庫進化、陽性選擇和陰性選擇機制建立輪廓,實現檢測算法。Lu等人[14]提供了一些實現自適應的實施入侵檢測的思路和方法,但還有許多值得思考的問題。在本文正在建立的基于生物免疫機理的網絡入侵檢測系統中,利用此特點的初步想法是能夠根據檢測代理的檢測能力決定所生成的檢測代理的數量。
2.6檢測的動態性
生物免疫系統處于一個動態檢測過程,通過陰性選擇、克隆選擇等機制不斷產生新的T細胞或B細胞,同時將檢測性能低下的免疫細胞予以淘汰。這不僅使得免疫細胞呈現動態多樣性,同時也提高了入侵病原體的檢測效率。反映在網絡入侵檢測系統中,檢測的動態性可以使得NIDS跟隨入侵模式的變化,以盡快的速度檢測網絡中最有可能發生的入侵模式。
2.7良好的擴展性
T細胞或B細胞的分散排列以及相對獨立的病原體檢測使得生物免疫系統具有良好的擴展性能。對于入侵檢測,新的入侵模式的出現使得問題的規模日益增大,這要求NIDS具有良好的擴展性能。
上述特性是建立基于生物免疫機理的網絡入侵檢測系統的指導方針。本課題基于生物免疫系統原理并結合網絡入侵檢測系統自身的特點進行研究。但是,網絡入侵檢測系統和生物免疫系統面對的問題并不完全一致,這是應該清楚的一點。例如,計算機網絡安全問題主要針對機密性、完整性和有效性,而生物免疫系統所面向的只是生存問題,這可以被看做是完整性和有效性問題。另外,生物免疫系統并不是一個非常完善的保護系統,它還有許多機制由于復雜性尚未被理解,但這些機制均可以從特異和非特異兩個方面來進行劃分。同樣,計算機網絡安全措施也可以被劃分為特異的(基于特征的檢測)和非特異的(防火墻、加密算法等)方法[15]。特異的方法對不斷出現的新的入侵手段和技術,以及面對層出不窮的關于網絡協議、操作系統和應用程序的漏洞方面存在很大的困難,如果基于豐富的入侵知識,其在檢測特定的已知攻擊時非常準確而高效;非特異方法雖然存在準確性、有效性和效率上的不足,但其優點在于不需要關于入侵的先驗知識,可以捕捉未知特征的入侵行為,并由于通用性而可以被應用于許多環境中。特異的和非特異的方法各有其優勢和不足,均具有不可替代的重要作用。任何單一的保護機制都是薄弱的,只有綜合的方法才是最合適的,這與生物免疫系統是相似的,即無論特異的還是非特異的保護機制均能發揮作用。探索生物免疫系統中存在的未知機制,并將已知的機制設法應用到入侵檢測系統中,以達到較高的檢測率和準確性以及許多其他的理想特性,是需要深入、細致和長期研究的課題。
3基于生物免疫機理的分布式agent入侵檢測系統模型及工作原理
3.1模型的體系結構
建立一個基于生物免疫機理的網絡安全模型,首要考慮采取怎樣的安全策略。該模型在實現時會采用鑒別和認證、監視策略、安全日志和安全審計等特殊的安全策略,保障系統能夠達到C2或C2以上的安全級別。模型采用multiagents[16~18]結構,以陰性選擇和克隆選擇算法為基礎,充分考慮主機與網絡之間的通信機制,保證對異常行為的監測(包括異常檢測、網絡入侵檢測、病毒的檢測和清除、木馬檢測等);并且保證系統能夠動態更新入侵/病毒規則庫,從而滿足免疫系統對學習性和記憶性的要求,滿足免疫系統中的固有性免疫應答和自適應免疫應答在網絡安全系統的實現。
模型中的免疫agent可以自由地在網絡各節點之間漫游和檢測網絡,可以相互識別各自的行為并產生特定的響應,并可以根據環境進行學習和動態變化。每種類型的agent無論是從功能上還是目的來說均與生物免疫系統中的免疫細胞相似。
a)檢測agent。巡邏于網絡內部的在線主機與服務器之間,對網絡運行環境變化、數據包發送情況和異常行為進行實時監控;同時還要與特定意圖(如查找功能失常、缺陷、異常等)的設備進行通信與監視不同層次上的多個參數,如在用戶級搜索異常用戶的行為模式,在系統級統計資源使用情況等。
b)決策agent。按照所采用的安全策略作出決策或采取行動,還會根據入侵的特征與嚴重性作出相應的響應;同時也會根據入侵的特征與強度激活一個適當的反應代理集合,包括助手代理和殺手代理。(a)助手代理由響應代理通過通信代理激活。一旦激活后,助手代理向用戶報告環境狀態或顯示決策報告。如果在目標網絡行為出現偏離或者違例時,助手代理可以通過email等方式發出預警信息,報告入侵時間。(b)殺手代理在出現真實入侵或惡意行動時采取強烈的反應措施。
c)通信agent。保持在主機/網絡環境下與其余代理的聯絡和信息傳遞,從而保證各個主機和服務器之間檢測集的同步更新,相當于生物免疫系統中刺激B細胞和抗體的淋巴因子。
d)響應agent。清除和抑制計算機病毒及網絡入侵,將入侵信息記錄到系統日志中并產生告警,相當于生物免疫系統中的T細胞。
基于生物免疫機理的分布式agent入侵檢測系統模型架構如圖1所示。
3.2模型的工作原理
在基于生物免疫機理的分布式agent入侵檢測與防御系統中,免疫主機根據系統特征及系統內進程特征描述通過克隆選擇生成本地入侵/病毒規則庫,并向本地通信agent報告檢測集。同時,免疫服務器根據一段時間所獲的數據包生成網絡檢測入侵/病毒規則庫。免疫服務器規則庫中的檢測規則會不斷地通過通信agent被傳送(克?。┑礁鱾€免疫主機上的規則庫中,以保證檢測agent能夠識別發生在免疫主機上的網絡入侵行為。在檢測agent檢測入侵行為過程中,如果某一條檢測規則成功地綁定了某一種入侵模式,決策agent就會通過陰性選擇向本地的檢測規則庫發送消息,將其升級為記憶檢測規則;同時也會通過通信agent向其他免疫主機上的檢測規則庫發送該規則的副本。如果當地節點的規則庫不存在該檢測規則,就會將該規則添加到本地規則庫中;如果該規則已在規則庫中,那么就將該規則定義為記憶規則。記憶規則中存儲了曾經被檢測到的入侵方式信息,所以檢測系統可以迅速識別出已知的入侵。隨著入侵的不斷進行,免疫主機上的記憶規則會遞進地增加,而需要傳送到其他主機的檢測規則集的數量則會逐漸地減少。各個檢測規則庫的非記憶規則庫中的規則會定期被更新,那些在設定的時間內未綁定任何入侵的檢測規則會逐漸被刪除。
圖1基于生物免疫機理的分布式agent入侵檢測系統模型
3.3模型的主要特色
該模型主要是針對計算機網絡,尤其是保障計算機局域網的安全,要求實現網絡入侵檢測系統(NIDS)的功能;要求能夠對異常信息進行檢測;對計算機病毒進行檢測和清除,從而加強網絡的安全性。在整個設計過程中,充分地考慮到最適合于生物免疫特性的算法和模型,將agent機制作為一個通信和監測的手段,盡量少地占用系統開銷,提高系統的效率,保證較高的安全水平。
免疫服務器和主機具有不同的應用模式,但需要保證兩者之間的入侵/病毒規則庫的一致性,設計時就考慮到不通過網絡的復雜檢查過程,而是系統中直接通過規則庫的克隆來實現,這樣的話,只占用很小的系統資源;也可以保證在網絡服務器不能工作時,主機依然具有免疫功能,最大限度地保證系統的安全;還可以擴展到分布式網絡環境下的網絡入侵檢測和病毒防護之中。
4結束語
網絡安全是一個非常重要而又很棘手的問題。現有網絡入侵檢測技術難以檢測到未知模式的入侵。將生物免疫系統的思想和機制應用到網絡入侵檢測上來是一個新興的研究領域。本文受生物免疫機制的啟發,提出了一種基于生物免疫機理的分布式agent入侵檢測系統模型,顯示了生物免疫在網絡安全領域的應用潛力。在模型中,網絡節點之間設置了不同功能的免疫agent,一旦發現異常,各個agent通過相互合作在網絡局部內采用的安全策略進行相應的處理,并且實時更新入侵/病毒規則庫。在設計過程中,考慮到了multiagents之間的負載均衡,避免了某些agent負荷過重形成瓶頸,影響整個系統的性能和處理能力。但是由于復雜性的考慮,本系統沒有專門設置用于agent進化和協調的agent管理單元,以及克隆增殖變化的條件,這有待于進一步的深入研究。
參考文獻:
[1]肖人彬,王磊. 人工免疫系統:原理、模型、分析與展望[J].計算機學報,2002,25(12):12811293.
[2]焦李成, 杜海峰. 人工免疫系統進展和展望[J]. 電子學報, 2003,31(10):15401548.
[3]卿斯漢,蔣建春,馬恒太. 入侵檢測技術研究綜述[J]. 通信學報,2004,25(7):19-29.
[4]陳慰峰. 醫學免疫學[M]. 北京:人民衛生出版社,2001.
[5]TIMMIS J. Artificial immune systems: a novel data analysis technique inspired by the immune network theory[D]. Wales: Department of Computer Science, University of Wales,2000.
[6]FORREST S, HOFMEYR S A, SOMAYAJI A. Computer immunology[J]. Communications of the ACM, 1997,40(10):88-96.
[7]KIM J, BENTLEY P. The human immune system and network intrusion detection[C]//Proc of the 7th European Conference on Intelligent Techniques and Soft Computing. Aachen:[s.n.], 1999.
[8]DASGUPTA D. Immunitybased intrusion detection system: a general framework[C]//Proc of the 22th National Information on Systems Security Conference. 1999:147160.
[9]JIANG Jianchun, CHEN Weifeng, QING Sihan, et al. The defense framework for large scale computer network system[C]//Proc of IFIP/SEC2000.Beijing:[s.n.],2000:68-78.
[10]BURROUGHS D J, WILSON L F, CYBENKO G V. Analysis of distributed intrusion detection systems using Bayesian methods[C]//Proc of the 21st IEEE International Performance, Computing, and Communications Conference. 2002: 329-334.
[11]XUE Q, SUN J Z, WEI Z C. TJIDS: an intrusion detection architecture for distributed network[C]//Proc of IEEE Conference on Electrical and Computer Engineering. 2003: 709-712.
[12]ANCHOR K P, WILLIAMS P D, GUNSCH G H, et al. The compu ̄ter defense immune system: current and future research in intrusion detection[C]//Proc of Congress on Evolutionary Computation.2002:10271032.
[13]DENNING D E. An intrusion detection model[J]. IEEE Trans on Software Engineering, 1987,13(2):222-232.
[14]LU K N, CHEN Z H, JIN Z Q. et al. An adaptive realtime intrusion detection system using sequences of system call[C]//Proc of IEEE Conference on Electrical and Computer Engineering. 2003: 789-792.
[15]HWANG K, GANGADHARAN M. Microfirewalls for dynamic network security with distributed intrusion detection[C]//Proc of IEEE International Symposium on Network Computing and Applications. 2001: 68-79.
[16]OKAMOTO T, ISHIDA Y. Multiagent approach against computer virus: an immunitybased system[C]//Proc of the 4th International Symposium on Artificial Life and Robotics. Hajime: Tokyo Press, 1999.
[17]ZAKI M, TAREK S S. Attack abstraction using a multiagent system for intrusion detection[J]. Journal of Intelligent Fuzzy Systems, 2005,16:141150.
[18]DASGUPTA D, GONZALEZ F, YALLAPU K, et al. CIDS: an agentbased intrusion detection system[J].Computers Security, 2005,24:387-398.
“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文”