金雅晴,丁振興,姬慶慶
(1. 北京工業(yè)大學(xué) 北京未來網(wǎng)絡(luò)科技高精尖創(chuàng)新中心,北京 100124;2. 中國科學(xué)院大學(xué) 計(jì)算技術(shù)研究所前瞻研究實(shí)驗(yàn)室,北京 100190)
隨著互聯(lián)網(wǎng)的快速發(fā)展,網(wǎng)絡(luò)攻擊行為不斷涌現(xiàn),保護(hù)網(wǎng)絡(luò)信息安全的問題日益迫切。信息系統(tǒng)具有完整性、機(jī)密性、可用性,任何破壞以上性質(zhì)的網(wǎng)絡(luò)活動都被認(rèn)為是網(wǎng)絡(luò)入侵[1]。因此,安全信息需要經(jīng)歷一些階段(1)保護(hù):自動防止入侵;(2)檢測:自動檢測入侵;(3)反應(yīng):當(dāng)系統(tǒng)被侵入時自動反應(yīng)或報(bào)警;(4)恢復(fù):修復(fù)或恢復(fù)由于入侵造成的損失[2]。這些階段中對入侵的精確檢測是最重要的,只有經(jīng)過精確的入侵檢測,才能進(jìn)入信息安全恰當(dāng)?shù)姆磻?yīng)和恢復(fù)階段。
一些入侵檢測系統(tǒng)的開發(fā)基于單分類技術(shù),而其他入侵檢測系統(tǒng)的開發(fā)(稱為混合/集成入侵檢測系統(tǒng))應(yīng)用了多分類技術(shù)?;诩蓪W(xué)習(xí)的入侵檢測系統(tǒng)與單一技術(shù)實(shí)現(xiàn)的入侵檢測系統(tǒng)相比有許多優(yōu)點(diǎn)。一些研究者利用弱分類器和數(shù)據(jù)集的不同特性,提出了解決入侵檢測問題的不同集成學(xué)習(xí)方法。為了覆蓋集成學(xué)習(xí)的各個方面,一些研究者提出了不同的分類系統(tǒng)。通過結(jié)合基于人工智能技術(shù)相對于其他技術(shù)的優(yōu)勢和集成學(xué)習(xí)的優(yōu)勢,一些研究者提出了基于人工智能的集成學(xué)習(xí)以解決入侵檢測問題。但是,目前還沒有一篇應(yīng)對入侵檢測問題的關(guān)于通用集成學(xué)習(xí)的分類系統(tǒng)和基于人工智能集成學(xué)習(xí)方法的綜述。
本文有三個目的。第一個目的是提出關(guān)于基于監(jiān)督分類器的集成學(xué)習(xí)及其通用分類系統(tǒng)的更新的綜述。第二個目的是提出近年來針對入侵檢測的各種基于人工智能的混合/集成入侵檢測系統(tǒng)的綜述,這些系統(tǒng)通過以下一系列的評價(jià)指標(biāo)進(jìn)行對比:(1)遵循的體系結(jié)構(gòu)和方法;(2)在集成學(xué)習(xí)的不同階段使用的不同方法;(3)用于評估集成學(xué)習(xí)分類性能的其他方法。第三個目的是介紹關(guān)于開發(fā)入侵檢測的高效集成系統(tǒng)的研究問題和方向。
本文首先介紹了入侵檢測系統(tǒng)的概念、目的和分類,然后介紹了集成學(xué)習(xí)的相關(guān)概念和其對于解決入侵檢測問題的優(yōu)點(diǎn),接著重點(diǎn)介紹了近年來為入侵檢測提供的各種基于人工智能的集成學(xué)習(xí)方法,最后總結(jié)本文并提出未來的研究方向。
入侵檢測系統(tǒng)(IDS)被定義為“一種有效的安全防護(hù)技術(shù),可以對計(jì)算機(jī)攻擊行為進(jìn)行檢測、預(yù)防和采取主動反應(yīng)措施”,是安全基礎(chǔ)設(shè)施的標(biāo)準(zhǔn)組件之一。它監(jiān)視計(jì)算機(jī)或網(wǎng)絡(luò)系統(tǒng)中的目標(biāo)活動源(如審計(jì)和網(wǎng)絡(luò)流量數(shù)據(jù)),之后通過部署各種技術(shù)提供安全服務(wù)。入侵檢測系統(tǒng)的主要目標(biāo)是用有效的方式對侵入式和非侵入式網(wǎng)絡(luò)活動進(jìn)行分類。入侵檢測的過程涉及以下任務(wù):(1)數(shù)據(jù)采集或收集;(2)數(shù)據(jù)預(yù)處理和特征選擇; (3)數(shù)據(jù)分析的模型選擇;(4)分類和結(jié)果分析[3]。為了完成這些任務(wù),入侵檢測系統(tǒng)分為用于高效入侵檢測的不同模塊,包括數(shù)據(jù)采集和存儲單元、數(shù)據(jù)分析和處理單元以及信號[4-5],如圖1所示。
圖1 入侵檢測系統(tǒng)模塊
基于這些模塊,入侵檢測系統(tǒng)可以分為不同的類型,如基于主機(jī)的入侵檢測系統(tǒng)(HIDS)與基于網(wǎng)絡(luò)的入侵檢測系統(tǒng)(NIDS),基于誤用或基于特征的入侵檢測系統(tǒng)與基于異常的入侵檢測系統(tǒng),被動入侵檢測系統(tǒng)與主動入侵檢測系統(tǒng)等[5]。入侵檢測系統(tǒng)通過基于評估數(shù)據(jù)集的多種不同方式來進(jìn)行評估[6]??梢酝ㄟ^性能、正確性、可用性等多種特征來評估入侵檢測系統(tǒng)。但是,相關(guān)文獻(xiàn)中大多數(shù)實(shí)驗(yàn)主要集中在測量入侵檢測系統(tǒng)的準(zhǔn)確性和有效性,即誤報(bào)率和成功檢測率。研究人員也利用其他一些指標(biāo)來衡量入侵檢測系統(tǒng)的性能,這些指標(biāo)可以分為三類:閾值、排序和概率[7-8]?;谌斯ぶ悄艿募?混合分類器提高了單分類器的性能,但是還存在一些問題需要研究,包括基本分類器的多樣性、集成規(guī)模、計(jì)算開銷、輸入特征空間和組合策略等。
集成涉及多個基分類器的使用,需要結(jié)合它們的預(yù)測數(shù)據(jù)來獲得可靠和更準(zhǔn)確的預(yù)測。通過利用不同數(shù)據(jù)集訓(xùn)練的多個分類器并利用問題的不同特點(diǎn),即使缺乏足夠數(shù)量的高質(zhì)量訓(xùn)練數(shù)據(jù),集成也能夠提高檢測準(zhǔn)確性和降低誤報(bào)率。集成有助于解決以下入侵檢測的問題
(1)集成由多個弱分類器而不是單一分類器組成,多個分類器結(jié)合可以提高整體性能。
(2)集成使用綜合知識在不同子集的數(shù)據(jù)集或特征子空間上對問題的假設(shè)進(jìn)行建模,即使缺乏足夠的高質(zhì)量訓(xùn)練數(shù)據(jù),弱分類器的結(jié)合也有助于提高性能。
(3)由于集成使用了多個分類器,所以有助于找到能夠降低誤報(bào)率,提高檢測精度的全局解決方案。
(4)不穩(wěn)定的基分類器有助于生成有效集成的各種基分類器。
(5)用相同數(shù)據(jù)集訓(xùn)練的分類器表現(xiàn)出不同的性能,有助于保持基分類器的多樣性。集成學(xué)習(xí)過程有三個階段:集成生成、集成選擇和集成整合。如果集成中的分類器所用的都是同一種學(xué)習(xí)算法,那么這種集成生成是同質(zhì)的。如果集成中包含不同類型的分類器,那么這種集成生成是異質(zhì)的。在集成生成階段,會生成一個不同的基分類器池。集成選擇需要從不同的基分類器池中選擇分類器。集成整合涉及在集成選擇階段中選擇的一組基分類器的最終預(yù)測。
簡而言之,可能有不同的特征集、訓(xùn)練集、分類方法或訓(xùn)練過程,通過這些可以產(chǎn)生一組分類器,它們的輸出可以結(jié)合起來用以改善整個分類性能[9]。如果這組分類器是固定的,那么問題集中在集成整合階段。也可以使用固定的組合并優(yōu)化輸入分類器的組合,這時問題集中在生成和選擇階段。
許多研究人員采用基于人工智能的集成混合方法來提高入侵檢測系統(tǒng)的性能。重點(diǎn)是關(guān)于分類器的組合和相關(guān)的警報(bào),以減少網(wǎng)絡(luò)安全管理員的警報(bào)[3]。分類器的結(jié)合涉及集成在學(xué)習(xí)生成和選擇階段的發(fā)展,而集成整合階段涉及多個分類器的不同預(yù)測。 接下來介紹了近年來提出的重要的基于人工智能集成學(xué)習(xí)的綜合研究。
文獻(xiàn)[10]提出了一個基于多分類器系統(tǒng)的方法。該方法基于人類專家使用不同特征集來檢測不同類型攻擊的動機(jī)。文中使用KDD cup 99數(shù)據(jù)集的不同特征子集(即intrinsic、content和traffic特征)進(jìn)行訓(xùn)練,從而生成不同的基于神經(jīng)網(wǎng)絡(luò)的分類器。被訓(xùn)練分類器的預(yù)測結(jié)合在一起,通過使用多數(shù)同意規(guī)則、平均規(guī)則和信度函數(shù)等方法產(chǎn)生集合的最終預(yù)測。結(jié)果表明這些多策略技術(shù),特別是信度函數(shù),比單獨(dú)的三個神經(jīng)網(wǎng)絡(luò)都要好,整體性能也與在整個特征集上訓(xùn)練的單個神經(jīng)網(wǎng)絡(luò)近似或更好。然而,單一的神經(jīng)網(wǎng)絡(luò)可以更好地識別潛在攻擊。Didaci等人也進(jìn)行了類似的實(shí)驗(yàn)[11]。文獻(xiàn)[12]提出了一種多分類器方法來檢測入侵,利用不同的分類器即ANN、K-means聚類和高斯分類器,通過使用KDD cup 1999數(shù)據(jù)集對不同類型的入侵進(jìn)行分類,用訓(xùn)練數(shù)據(jù)集的所有特征進(jìn)行訓(xùn)練生成了多個分類器,得到的集成在不同類型的入侵中得到了最高的準(zhǔn)確率,被用來檢測相應(yīng)的入侵類別。結(jié)果表明分類器的集成提高了分類性能。
在文獻(xiàn)[13]提出了一種檢測入侵的混合方法,利用貝葉斯網(wǎng)絡(luò)(BN)和分類和回歸樹(CART)及其集成來生成混合系統(tǒng)。文獻(xiàn)[14]提出了DT、SVM的集成和DT、SVM組成的混合系統(tǒng),這些分類器是通過對KDD cup 99數(shù)據(jù)集的訓(xùn)練生成的。文獻(xiàn)[15]提出了一種多模式方法,使用多種不同的異常檢測技術(shù)(貝葉斯方法)來檢測針對Web服務(wù)器和基于Web的應(yīng)用程序的攻擊。多模有助于減少檢測過程在模仿攻擊方面的脆弱性。CORONA I等人也提出了類似的方法[16],解決了與訓(xùn)練集中存在噪聲(如攻擊)有關(guān)的問題。所提出的模型由一組獨(dú)立的專用模塊組成。文獻(xiàn)[17]提出了一個基于聚類的混合模塊來結(jié)合多重報(bào)警,有助于減少入侵檢測系統(tǒng)產(chǎn)生的警報(bào)量。文獻(xiàn)[18]提出了一個三層混合方法來檢測入侵。文獻(xiàn)[19]提出了一種基于柔性神經(jīng)樹、進(jìn)化算法和粒子群優(yōu)化算法(PSO)的混合柔性神經(jīng)樹入侵檢測系統(tǒng),通過減少輸入特征和用于組合基本分類器的混合方法來改善入侵檢測的性能。 文獻(xiàn)[20]提出了SVM和聚類的混合方法來減少訓(xùn)練時間。
文獻(xiàn)[21]基于改進(jìn)的MOGA(改進(jìn)NSGA-II)提出了用于入侵檢測的神經(jīng)網(wǎng)絡(luò)集成,使用改進(jìn)的MOGA來選擇數(shù)據(jù)集的相關(guān)特征子集,選擇的特征子集用于訓(xùn)練準(zhǔn)確和多樣的基分類器,最后的集成通過使用集成選擇方法來構(gòu)建。文獻(xiàn)[22]提出了一個涉及多級混合分類器的分層混合系統(tǒng),該分類器結(jié)合了監(jiān)督?jīng)Q策樹分類器和無監(jiān)督貝葉斯分類方法來檢測入侵行為。文獻(xiàn)[11]提出了一個基于AdaBoost算法的集成,它依次使用決策樹作為基分類器,分別利用連續(xù)和分類的特征,沒有任何強(qiáng)制轉(zhuǎn)換。文獻(xiàn)[23]提出了一個基于微觀模型的異常傳感器集成,以凈化訓(xùn)練數(shù)據(jù)。文獻(xiàn)[24]提出了由線性遺傳程序設(shè)計(jì)(LGP)、自適應(yīng)神經(jīng)模糊推理系統(tǒng)(ANFIS)和隨機(jī)森林(RF)集合的異質(zhì)集成,基分類器是使用KDD cup 99數(shù)據(jù)集的類特定功能生成的。實(shí)證證明,通過在集成方法中為分類器分配適當(dāng)?shù)臋?quán)重,比單個分類器各類網(wǎng)絡(luò)流量的檢測精度有所提高。文獻(xiàn)[2]提出了一種迭代布爾組合(IBC)技術(shù),用于有效融合在ROC空間中固定大小數(shù)據(jù)集上訓(xùn)練的任何清晰或軟檢測器的響應(yīng)。所提出的技術(shù)應(yīng)用所有布爾函數(shù)來組合與多個分類器對應(yīng)的ROC曲線。不需要先驗(yàn)假設(shè),其時間復(fù)雜度與分類器的數(shù)量成線性關(guān)系。文獻(xiàn)[25]提出了多層感知器和徑向基函數(shù)的混合體系結(jié)構(gòu)及其入侵檢測集成,通過訓(xùn)練減少的數(shù)據(jù)集生成不同的集成模塊。最后的報(bào)告指出,所提出的方法顯著提高了入侵檢測的預(yù)測準(zhǔn)確性。文獻(xiàn)[26]提出了一種聚類和分類的組合方法。聚類是通過使用K-means算法在早期階段形成相似數(shù)據(jù)組。接下來,在第二階段,使用樸素貝葉斯分類器將聚類數(shù)據(jù)按攻擊類別分類。報(bào)告中表明與KDD cup 1999數(shù)據(jù)集相比,提出的混合方法在單個奈奎爾貝葉斯分類器上表現(xiàn)的性能更好,但是所提出的方法受限于它不能檢測類似U2R和R2L的攻擊。
這些相關(guān)研究可以通過以下一系列評估指標(biāo)進(jìn)行比較:(1)遵循的架構(gòu)和方法;(2)集成學(xué)習(xí)的不同階段采用不同的方法;(3)用于評估集合的分類性能的其他方法。系統(tǒng)的體系結(jié)構(gòu)可以是并行的、級聯(lián)的或分層的[24],分類器可以通過集合/混合方法進(jìn)行組合。集成層次是指在不同的集成學(xué)習(xí)階段(集成生成、集成選擇和集成整合)中使用的不同層次(組合層次、分類器層次、特征層次或數(shù)據(jù)層次)。 基本分類器之間的多樣性可以通過隱式或顯式方法來測量[27]。為了評估性能,可以基于基準(zhǔn)數(shù)據(jù)集來計(jì)算不同的性能指標(biāo)。
人工智能技術(shù)及集成學(xué)習(xí)方法目前正吸引研究界對入侵檢測越來越多的關(guān)注,其靈活性、適應(yīng)性、新模式識別、容錯性、學(xué)習(xí)能力、高計(jì)算速度和對噪聲數(shù)據(jù)的錯誤恢復(fù)能力,都是構(gòu)建高效入侵檢測系統(tǒng)的前提。集成方法模仿人類天性,在作出重要決定之前先尋找一些建議。其基本原則是評估幾個單獨(dú)的模式分類器,并將它們整合以達(dá)到比單個分類器獲得更好的性能。
本文介紹了近年提出的監(jiān)督學(xué)習(xí)中基于人工智能的入侵檢測集成,歷史上這是一個較早被研究并應(yīng)用于多個領(lǐng)域的方法。更準(zhǔn)確地說,本文提出了一種通用的分類法,區(qū)分決策和覆蓋優(yōu)化集成,考慮到不同的監(jiān)督式基本分類器可以生成或組合在一起,介紹了近年來提出的基于人工智能的入侵檢測系統(tǒng)。
但是,基于人工智能的分類器的運(yùn)用表明,每個分類器對于入侵檢測問題都會有各自的優(yōu)點(diǎn)和缺點(diǎn)。集成可以將這些分類器的優(yōu)點(diǎn)結(jié)合起來,以彌補(bǔ)它們的缺點(diǎn),從而提供更好的解決方案。因此,把集成學(xué)習(xí)作為本文的一個主題。總結(jié)并比較了每項(xiàng)研究中的成果,使得能夠清楚地認(rèn)識到入侵檢測方面現(xiàn)有的研究挑戰(zhàn)和研究方向。希望本文可以幫助讀者梳理入侵檢測中基于人工智能方法的集成學(xué)習(xí)方法。
[1] MCCUMBR J. Information system security: a comprehensive model[C]// Proceedings of the 14th National Computer Security Conference, Baltimore, MD, USA, 1991.
[2] KHREICH W. GRANGER E. MIRI A, et al. Iterative Boolean combination of classifiers in the ROC space: an application toanomalydetectionwithHMMs[J]. Pattern Recognition, 2010, 43(8): 2732-2752.
[3] CORANA I, GIACINTO G, MAZZARIELLO C, et al. Information fusion for computer security: state of the art and open issues[J]: Information Fusion, 2009, 10(4): 274-284.
[4] AXELSSON S. Research in intrusion detection system—a survey[R]. Chalmers University of Technology, CMU/SEI, 1999.
[5] KUMAR G, KUMAR K, SACHDEVA M. The use of artificial intelligence based techniques for intrusion detection—a review. Artificial Intelligence Review, vol. 34, no. 4, pp. 369-387, 2010.
[6] KRUEGEL C, VALUER F, VIGNAi G, Intrusion detection and correlation: challenges and solution[M]. Springer, 2005.
[7] CARUANA R, NICULESCU-MIZIL A. Data mining in metric space: an empirical analysis of supervised learning performance criteria[C]//Proceedings of the 10th ACM SIGMOD International Conference on Knowledge Discovery and Data Mining (KDD-2004), 2004:69-78.
[8] KUMAR G, KUMAR K. AI based supervised classifiers an analysis for intrusion detection[C]// Proceedings of the International Conference on Advances in Computing and Artificial Intelligence (ACAI `11), Chitkara, India, 2011: 170-174.
[9] JAIN A K, DUIN R P W, MAO J. Statistical pattern recognition: a review[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2000, 22(1): 4-37.
[10] GIACINTO G, ROLI F. Anapproach to the automatic design of multiple classifier systems[J]. Pattern Recognition Letters, 2001, 22(1): 25-33.
[11] HU W M, HU W, MAYBANK S. AdaBoost-based algorithm for network intrusion detection[J]. IEEE Transactions on Systems, Man, and Cybernetics B, 2008, 38(2): 577-583.
[12] SABHNANI M, SERPEN G. Application of machine learning algorithms to KDD intrusion detection dataset within misuse detection context[C]// Proceedings of the International Conference on Machine Learning; Models, Technologies and Applications (MLMTA `03), 2003: 209-215.
[13] CHEBROLU S, ABRAHAM S, THOMAS J P. Feature deduction and ensemble design of intrusion detection systems[J]. Computers and Security, 2005, 24(4): 295-307.
[14] ABRAHAM A, THOMAS V. Distributed intrusion detection systems: a computational intelligence approach[M]. Applications of Information Systems to Homeland Security and Defense New York: Idea Group, 2005: 105-135.
[15] KRUEGEL C, VIGNA G, ROBERTSON W. A multi-model approach to the detection of web-based attacks[J]. Computer Networks, 2005,48(5): 717-738.[16] CORONA V, ARIU V, GIACINTO G. HMM-web: a framework for the detection of attacks against web applications[C]// Proceedings of the IEEE International Conference on Communications (ICC `09), 2009, 15(1): 747-752.
[17] PERDISCI R, GIACINTO G, ROLI F. Alarm clustering for intrusion detection systems in computer networks[J]. Engineering Applications of Artificial Intelligence, 2006, 19(4): 429-438.
[18] HWANG T S, LEE T J, LEE Y J. A three-tier IDS via data mining approach[C]// Proceedings of the 3rd Annual ACM Workshop on Mining Network Data (MineNet `07), 2007: 1-6.
[19] CHEN Y, ABRAHAM A, YANG B. Hybrid flexible neural-tree-based intrusion detection systems[J]. International Journal of Intelligent Systems, 2007, 22(4): 337-352.
[20] KHAN L, AWAD V, THURAISINGHAM B. A new intrusion detection system using support vector machines and hierarchical clustering[J]. The International Journal on Very Large Data Bases, 2007, 16(4): 507-521.
[21] YAN Y, HAO H. An ensemble approach to intrusion detection based on improved multi-objective genetic algorithm[J]. Journal of Software, 2007, 18(6): 1369-1378.
[22] XIANG C, YONG P C, MENG L S. Design of multiple-level hybrid classifier for intrusion detection system using Bayesian clustering and decision trees[J]. Pattern Recognition Letters, 2008, 29(7): 918-924.
[23] CRETU G F,STAVROU A, LOCASTO M E, et al. Casting out demons: sanitizing training data for anomaly sensors[C]// Proceedings of the IEEE Symposium on Security and Privacy (SP `08), IEEE Computer Society, 2008:81-95.
[24] ZAINAL A, MAAROF M A, SHAMSUDDIN S M. Ensemble classifiers for network intrusion detection system[J]. Journal of Information Assurance and Security, 2009,4: 217-225.
[25] GOVINDARAJAN M, CHANDRASEKARAN R M. Intrusion detection using neural based hybrid classification methods,”Computer Networks, 2011, 55(8): 1662-1671.
[26] MUDA Z, YASSIN W, SULAIMAN M N, et al. A K-Means and Naive Bayes learning approach for better intrusion detection[J]. Information Technology Journal, 2011,10(3): 648-655.
[27] BROWN G, WYATT J, HARRIS R, et al. Diversity creation methods: asurveyand categorisation[J]. JournalofInformation Fusion, 2005,6(1): 5-20.