基于数据挖掘的入侵检测系统研究

2009-10-19 09:07
新媒体研究 2009年17期
关键词:聚类算法入侵检测数据挖掘

张 敏

[摘要]基于数据挖掘技术,针对当前入侵检测系统的不足,把层次聚类算法与模糊c-均值算法相结合,设计出一种较优的入侵检测系统,实验证明该系统具有较高的检测率和良好的自适性。

[关键词]数据挖掘 入侵检测 聚类算法

中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0910047-01

一、引言

随着网络的发展,网络安全问题越来越受到人们的关注。能够保障系统安全的入侵检测(Intrusion Detection)技术应运而生。入侵检测系统是一种用于检测计算机网络或主机中违反安全策略行为的技术[1]。数据挖掘(Data Mining)是随着数据库技术和人工智能发展起来的一门新兴的数据库技术[2]。近年来,随着网络安全的要求不断提高,新的入侵检测研究成果不断出现[3]。本文把层次聚类算法与模糊c-均值算法相结合,设计出一种较优的入侵检测引擎,实验表明,该入侵检测系统具有较高的检测率和较低的误警率。

二、一种新型聚类算法设计

为适应网络发展的需要,要求入侵检测算法在满足高效要求的同时,能够及时发现新的攻击,为克服单纯使用一种算法的局限性,本文综合各种算法的优势,设计出一种新型的聚类算法。

根据模糊c-均值法易于陷入局部最优解的缺点,需要一种能在全局范围寻找一个较优解的快速算法用于确定模糊c-均值法的初始聚类中心,避免其只在局部寻求最优解,我们采用一种较好的层次聚类算法,它复杂度低,易于实现,适合大数据量的入侵检测系统的应用。算法描述如下:

Step1:计算任意两个对象之间的距离d(i,j),并将之存储在一线性结构d中;Step2:对线性结构d按从小到大的次序进行排序;Step3:对d中的当前元素,首先判断这两个对象是否已被合并到类中,如果没有,就将这两个对象合成一个类;如果其中一个已被合并到某一类,则将另一个也合并到那个类中;如果它们已分别被合并到两个不同的类,则将它们所在的那两个类合并成一个类;Step4:取d中的下一个元素,如果其值大于某一阈值,则算法停止,否则重复Step3,直到线性结构中所有的元素处理完毕。

将该算法的聚类结果作为模糊c-均值法的初始聚类中心,能够有效克服模糊c-均值法易陷入局部最优解的缺点。

模糊c-均值法在数据维数较低的时候有更好的检测性能,因此,在相同条件下,降低输入数据的维数也是提升算法性能的一个重要方法。我们采用一种基于主成份分析的特征选择方法,用于降低数据的特征维数,提升算法的性能。

三、入侵检测引擎设计

当前的商用入侵检测系统90%以上基于特征检测,特征检测技术检测正确率高,但是它只能检测已知的攻击,异常检测可以弥补特征检测的不足,它可以检测到未知的攻击,因而,我们把特征检测技术与异常检测技术相结合设计入侵检测引擎。

基于上面对算法的分析,我们设计一种新型的聚类算法,其流程如下:步骤一:利用主成份分析,降低源数据特征维数;步骤二:将步骤一中得到的结果使用较优层次聚类算法获得聚类结果;步骤三:将步骤二得到的聚类结果作为模糊c-均值法的初始类心,运行模糊c-均值法,得到最终聚类结果。

下面是基于新型聚类算法的入侵检测系统的检测模块,流程图如下:

首先,使用层次聚类算法找出要进行聚类的初始点,在第一次聚类后,将聚类结果作为模糊c-均值法的初始类心,然后用模糊c-均值法动态的进行聚类,不断调整类心,直至聚类满足给出的停止条件。由于挖掘算法对入侵检测系统的相对独立性,算法不依赖于特定的数据及特定的系统,所以基于数据挖掘的入侵检测系统对数据源要求很低,不仅适用于网络数据,各种样本数据,还可用于各种审计数据,用户行为数据等,具有很强的通用性。特别在网络入侵检测系统中,使用数据挖掘方法中的聚类算法可以利用数据源的原有信息,即在一个正常的网络数据中,正常的数据占绝大部分,入侵数据只占极少的一部分(一般不超过2%),利用该知识可以在无需经验的基础上对源数据进行判断,检测出攻击纪录。

四、总体性能测试

我们使用KDD99数据作为测试集,共采用3种数据集进行实验。每组数据中设置约5万个数据连接,其中DOS类型的攻击占460条,U2R类型的攻击20条,R2L类型的攻击约140条,PROBE类型的攻击约占310条。使用聚类算法进行入侵检测,系统检测性能如下:

检测结果表明,系统在保持较低误检率的情况下检测出入侵行为,特别是对DOS攻击及PROBE攻击类型有较高的检测率,对U2R和R2L的检测率也有所提高,由于U2R和R2L类型的攻击其数据特征与正常数据包特征类似,增加了检测的难度。

五、结束语

随着计算机网络的不断发展,入侵检测技术在网络安全体系中发挥着日趋重要的作用。本文把特征检测技术与异常检测技术相结合,设计出高性能的入侵检测系统,在入侵检测引擎中,把层次聚类算法与模糊c-均值法相结合,进一步提高了算法的效率。整个入侵检测系统具有学习能力,能够及时更新检测规则库,具有较强的自适应性和扩展性。今后,我们将进一步考虑高性能的挖掘算法,以及把入侵检测技术和其他安全技术相结合,进一步增强系统的安全性。

参考文献:

[1]唐正军、李建华,入侵检测技术[M].北京:清华大学出版社,2004.

[2](加)Jiawei Han,Micheline Kamber著,数据挖掘概念与技术[M].北京:机械工业出版社,2001.

[3]罗敏,基于聚类和支持向量机的网络入侵检测研究[博士学位论文].武汉:武汉大学,2003.

[4]Pal N R,Pal K,Keller J M,et al.A Possibilistic Fuzzy c-Means Clustering Algorithm[J].IEEE Transactions on Fuzzy Systems,2005,13(4):517-530.

[5]段明秀、杨路明,对层次聚类算法的改进[J].湖南理工学院学报(自然科学版),2008,21(2).

[6]http://kdd.ics.uci.edu/databases/kddcup99/kddcup99.html.KDD Cup 1999 Data.

猜你喜欢
聚类算法入侵检测数据挖掘
数据挖掘综述
软件工程领域中的异常数据挖掘算法
K—Means聚类算法在MapReduce框架下的实现
基于K?均值与AGNES聚类算法的校园网行为分析系统研究
基于入侵检测的数据流挖掘和识别技术应用
艺术类院校高效存储系统的设计
基于关联规则的计算机入侵检测方法
基于R的医学大数据挖掘系统研究
基于改进的K_means算法在图像分割中的应用
大规模风电场集中接入对电力系统小干扰稳定的影响分析