人工智能集成学习方法在入侵检测中的运用
2018-03-29金雅晴丁振兴姬庆庆
金雅晴,丁振兴,姬庆庆
(1. 北京工业大学 北京未来网络科技高精尖创新中心,北京 100124;2. 中国科学院大学 计算技术研究所前瞻研究实验室,北京 100190)
0 引言
随着互联网的快速发展,网络攻击行为不断涌现,保护网络信息安全的问题日益迫切。信息系统具有完整性、机密性、可用性,任何破坏以上性质的网络活动都被认为是网络入侵[1]。因此,安全信息需要经历一些阶段(1)保护:自动防止入侵;(2)检测:自动检测入侵;(3)反应:当系统被侵入时自动反应或报警;(4)恢复:修复或恢复由于入侵造成的损失[2]。这些阶段中对入侵的精确检测是最重要的,只有经过精确的入侵检测,才能进入信息安全恰当的反应和恢复阶段。
一些入侵检测系统的开发基于单分类技术,而其他入侵检测系统的开发(称为混合/集成入侵检测系统)应用了多分类技术。基于集成学习的入侵检测系统与单一技术实现的入侵检测系统相比有许多优点。一些研究者利用弱分类器和数据集的不同特性,提出了解决入侵检测问题的不同集成学习方法。为了覆盖集成学习的各个方面,一些研究者提出了不同的分类系统。通过结合基于人工智能技术相对于其他技术的优势和集成学习的优势,一些研究者提出了基于人工智能的集成学习以解决入侵检测问题。但是,目前还没有一篇应对入侵检测问题的关于通用集成学习的分类系统和基于人工智能集成学习方法的综述。
本文有三个目的。第一个目的是提出关于基于监督分类器的集成学习及其通用分类系统的更新的综述。第二个目的是提出近年来针对入侵检测的各种基于人工智能的混合/集成入侵检测系统的综述,这些系统通过以下一系列的评价指标进行对比:(1)遵循的体系结构和方法;(2)在集成学习的不同阶段使用的不同方法;(3)用于评估集成学习分类性能的其他方法。第三个目的是介绍关于开发入侵检测的高效集成系统的研究问题和方向。
本文首先介绍了入侵检测系统的概念、目的和分类,然后介绍了集成学习的相关概念和其对于解决入侵检测问题的优点,接着重点介绍了近年来为入侵检测提供的各种基于人工智能的集成学习方法,最后总结本文并提出未来的研究方向。
1 入侵检测系统
入侵检测系统(IDS)被定义为“一种有效的安全防护技术,可以对计算机攻击行为进行检测、预防和采取主动反应措施”,是安全基础设施的标准组件之一。它监视计算机或网络系统中的目标活动源(如审计和网络流量数据),之后通过部署各种技术提供安全服务。入侵检测系统的主要目标是用有效的方式对侵入式和非侵入式网络活动进行分类。入侵检测的过程涉及以下任务:(1)数据采集或收集;(2)数据预处理和特征选择; (3)数据分析的模型选择;(4)分类和结果分析[3]。为了完成这些任务,入侵检测系统分为用于高效入侵检测的不同模块,包括数据采集和存储单元、数据分析和处理单元以及信号[4-5],如图1所示。
图1 入侵检测系统模块
基于这些模块,入侵检测系统可以分为不同的类型,如基于主机的入侵检测系统(HIDS)与基于网络的入侵检测系统(NIDS),基于误用或基于特征的入侵检测系统与基于异常的入侵检测系统,被动入侵检测系统与主动入侵检测系统等[5]。入侵检测系统通过基于评估数据集的多种不同方式来进行评估[6]。可以通过性能、正确性、可用性等多种特征来评估入侵检测系统。但是,相关文献中大多数实验主要集中在测量入侵检测系统的准确性和有效性,即误报率和成功检测率。研究人员也利用其他一些指标来衡量入侵检测系统的性能,这些指标可以分为三类:阈值、排序和概率[7-8]。基于人工智能的集合/混合分类器提高了单分类器的性能,但是还存在一些问题需要研究,包括基本分类器的多样性、集成规模、计算开销、输入特征空间和组合策略等。
2 集成学习
集成涉及多个基分类器的使用,需要结合它们的预测数据来获得可靠和更准确的预测。通过利用不同数据集训练的多个分类器并利用问题的不同特点,即使缺乏足够数量的高质量训练数据,集成也能够提高检测准确性和降低误报率。集成有助于解决以下入侵检测的问题
(1)集成由多个弱分类器而不是单一分类器组成,多个分类器结合可以提高整体性能。
(2)集成使用综合知识在不同子集的数据集或特征子空间上对问题的假设进行建模,即使缺乏足够的高质量训练数据,弱分类器的结合也有助于提高性能。
(3)由于集成使用了多个分类器,所以有助于找到能够降低误报率,提高检测精度的全局解决方案。
(4)不稳定的基分类器有助于生成有效集成的各种基分类器。
(5)用相同数据集训练的分类器表现出不同的性能,有助于保持基分类器的多样性。集成学习过程有三个阶段:集成生成、集成选择和集成整合。如果集成中的分类器所用的都是同一种学习算法,那么这种集成生成是同质的。如果集成中包含不同类型的分类器,那么这种集成生成是异质的。在集成生成阶段,会生成一个不同的基分类器池。集成选择需要从不同的基分类器池中选择分类器。集成整合涉及在集成选择阶段中选择的一组基分类器的最终预测。
简而言之,可能有不同的特征集、训练集、分类方法或训练过程,通过这些可以产生一组分类器,它们的输出可以结合起来用以改善整个分类性能[9]。如果这组分类器是固定的,那么问题集中在集成整合阶段。也可以使用固定的组合并优化输入分类器的组合,这时问题集中在生成和选择阶段。
3 入侵检测中基于人工智能的集成方法
许多研究人员采用基于人工智能的集成混合方法来提高入侵检测系统的性能。重点是关于分类器的组合和相关的警报,以减少网络安全管理员的警报[3]。分类器的结合涉及集成在学习生成和选择阶段的发展,而集成整合阶段涉及多个分类器的不同预测。 接下来介绍了近年来提出的重要的基于人工智能集成学习的综合研究。
文献[10]提出了一个基于多分类器系统的方法。该方法基于人类专家使用不同特征集来检测不同类型攻击的动机。文中使用KDD cup 99数据集的不同特征子集(即intrinsic、content和traffic特征)进行训练,从而生成不同的基于神经网络的分类器。被训练分类器的预测结合在一起,通过使用多数同意规则、平均规则和信度函数等方法产生集合的最终预测。结果表明这些多策略技术,特别是信度函数,比单独的三个神经网络都要好,整体性能也与在整个特征集上训练的单个神经网络近似或更好。然而,单一的神经网络可以更好地识别潜在攻击。Didaci等人也进行了类似的实验[11]。文献[12]提出了一种多分类器方法来检测入侵,利用不同的分类器即ANN、K-means聚类和高斯分类器,通过使用KDD cup 1999数据集对不同类型的入侵进行分类,用训练数据集的所有特征进行训练生成了多个分类器,得到的集成在不同类型的入侵中得到了最高的准确率,被用来检测相应的入侵类别。结果表明分类器的集成提高了分类性能。
在文献[13]提出了一种检测入侵的混合方法,利用贝叶斯网络(BN)和分类和回归树(CART)及其集成来生成混合系统。文献[14]提出了DT、SVM的集成和DT、SVM组成的混合系统,这些分类器是通过对KDD cup 99数据集的训练生成的。文献[15]提出了一种多模式方法,使用多种不同的异常检测技术(贝叶斯方法)来检测针对Web服务器和基于Web的应用程序的攻击。多模有助于减少检测过程在模仿攻击方面的脆弱性。CORONA I等人也提出了类似的方法[16],解决了与训练集中存在噪声(如攻击)有关的问题。所提出的模型由一组独立的专用模块组成。文献[17]提出了一个基于聚类的混合模块来结合多重报警,有助于减少入侵检测系统产生的警报量。文献[18]提出了一个三层混合方法来检测入侵。文献[19]提出了一种基于柔性神经树、进化算法和粒子群优化算法(PSO)的混合柔性神经树入侵检测系统,通过减少输入特征和用于组合基本分类器的混合方法来改善入侵检测的性能。 文献[20]提出了SVM和聚类的混合方法来减少训练时间。
文献[21]基于改进的MOGA(改进NSGA-II)提出了用于入侵检测的神经网络集成,使用改进的MOGA来选择数据集的相关特征子集,选择的特征子集用于训练准确和多样的基分类器,最后的集成通过使用集成选择方法来构建。文献[22]提出了一个涉及多级混合分类器的分层混合系统,该分类器结合了监督决策树分类器和无监督贝叶斯分类方法来检测入侵行为。文献[11]提出了一个基于AdaBoost算法的集成,它依次使用决策树作为基分类器,分别利用连续和分类的特征,没有任何强制转换。文献[23]提出了一个基于微观模型的异常传感器集成,以净化训练数据。文献[24]提出了由线性遗传程序设计(LGP)、自适应神经模糊推理系统(ANFIS)和随机森林(RF)集合的异质集成,基分类器是使用KDD cup 99数据集的类特定功能生成的。实证证明,通过在集成方法中为分类器分配适当的权重,比单个分类器各类网络流量的检测精度有所提高。文献[2]提出了一种迭代布尔组合(IBC)技术,用于有效融合在ROC空间中固定大小数据集上训练的任何清晰或软检测器的响应。所提出的技术应用所有布尔函数来组合与多个分类器对应的ROC曲线。不需要先验假设,其时间复杂度与分类器的数量成线性关系。文献[25]提出了多层感知器和径向基函数的混合体系结构及其入侵检测集成,通过训练减少的数据集生成不同的集成模块。最后的报告指出,所提出的方法显著提高了入侵检测的预测准确性。文献[26]提出了一种聚类和分类的组合方法。聚类是通过使用K-means算法在早期阶段形成相似数据组。接下来,在第二阶段,使用朴素贝叶斯分类器将聚类数据按攻击类别分类。报告中表明与KDD cup 1999数据集相比,提出的混合方法在单个奈奎尔贝叶斯分类器上表现的性能更好,但是所提出的方法受限于它不能检测类似U2R和R2L的攻击。
这些相关研究可以通过以下一系列评估指标进行比较:(1)遵循的架构和方法;(2)集成学习的不同阶段采用不同的方法;(3)用于评估集合的分类性能的其他方法。系统的体系结构可以是并行的、级联的或分层的[24],分类器可以通过集合/混合方法进行组合。集成层次是指在不同的集成学习阶段(集成生成、集成选择和集成整合)中使用的不同层次(组合层次、分类器层次、特征层次或数据层次)。 基本分类器之间的多样性可以通过隐式或显式方法来测量[27]。为了评估性能,可以基于基准数据集来计算不同的性能指标。
4 结论
人工智能技术及集成学习方法目前正吸引研究界对入侵检测越来越多的关注,其灵活性、适应性、新模式识别、容错性、学习能力、高计算速度和对噪声数据的错误恢复能力,都是构建高效入侵检测系统的前提。集成方法模仿人类天性,在作出重要决定之前先寻找一些建议。其基本原则是评估几个单独的模式分类器,并将它们整合以达到比单个分类器获得更好的性能。
本文介绍了近年提出的监督学习中基于人工智能的入侵检测集成,历史上这是一个较早被研究并应用于多个领域的方法。更准确地说,本文提出了一种通用的分类法,区分决策和覆盖优化集成,考虑到不同的监督式基本分类器可以生成或组合在一起,介绍了近年来提出的基于人工智能的入侵检测系统。
但是,基于人工智能的分类器的运用表明,每个分类器对于入侵检测问题都会有各自的优点和缺点。集成可以将这些分类器的优点结合起来,以弥补它们的缺点,从而提供更好的解决方案。因此,把集成学习作为本文的一个主题。总结并比较了每项研究中的成果,使得能够清楚地认识到入侵检测方面现有的研究挑战和研究方向。希望本文可以帮助读者梳理入侵检测中基于人工智能方法的集成学习方法。
[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.