开篇:润墨网以专业的文秘视角,为您筛选了一篇一种改进的Snort系统模型范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!
摘要:针对Snort网络入侵检测系统的不足,该文提出了一种基于数据挖掘技术的Snort改进模型。该模型以snort系统为基础,增加了异常检测模块,在进行规则匹配前,先筛选掉部分正常的数据,减少匹配次数,缩短系统的检测时间。
关键词: Snort;入侵检测;数据挖掘
中图分类号: TP393文献标识码:A文章编号:1009-3044(2011)13-3054-02
开源的snort是目前最著名和使用最广泛的入侵检测系统,在进行检测时要把预处理后的数据和规则库里的规则一个个的匹配过去,而网络数据流量是庞大的,其中大量的数据是正常数据,这样会浪费很多的匹配时间。针对Snort存在的问题,设计了一种基于数据挖掘技术的 Snort网络入侵检测系统的改进模型。该模型在 Snort入侵检测系统的基础上增加了异常检测模块,在规则匹配前先过滤掉一部分的正常数据,减少拿去匹配的数据,从而减少匹配次数。最终达到减少检测时间的效果。
1 入侵检测介绍
入侵检测[6]按照检测方法分为:误用检测和异常检测。其中误用检测是建立攻击特征来识别该入侵行为,通过特征匹配来发现当前活动是否存在攻击。而异常检测通常要建立一个关于系统或用户的正常活动的状态模型,通过观察当前活动与正常模型的差异程度来判断是否存在攻击行为。
2 数据挖掘方法在入侵检测中的应用
数据挖掘技术将入侵检测看作是数据处理过程,从大量的数据中提取出识别对象行为的特征值,并借此进行异常行为的检测。异常检测方法认为任何用户的正常行为都可以通过分析建立它的正常模式或是系统运行的正常期望值,而入侵行为总是能够通过其偏离正常或所期望的正常模式被检测出来。这些入侵行为甚至可能是未知的。基于异常的入侵检测系统针对系统的某个对象,先学习这个对象的行为特征,产生这个对象的行为概貌,以建立该对象的正常运行模式。在检测分析过程中,将当前待检测的对象行为的特征概貌和该对象的正常运行模式相比较,如果超出期望值,则认为它存在异常,进行报警; Lee[5]最先采用数据挖掘方法来进行异常检测。
3 Snort系统介绍
Snort是一个典型的误用型入侵检测系统,Snort分为 5个主要的组件[2],每个组件对入侵检测都很关键。其过程见图1。
1)包捕获器。Snort是依赖于Linpcap程序来抓包的,它采用了运行于内核层的BPF数据包过滤机制,这种过滤机制在对数据包进行过滤后复制到用户内核缓存中,用户进程则通过调用相关的接口从用户缓存中提取数据包进行处理。网络数据包被Linpcap程序捕获后,要送给包解码器。
2)包解码器将特殊协议元素翻译成内部数据结构。
3)在最初的捕包和解码完成后,由预处理程序处理流量。
4)预处理后的结果交给下一个组件:检测引擎。检测引擎对每个包进行检测判断入侵。
5)最后是输出组件。
4 基于数据挖掘的Snort系统改造
由图1可以看出,在预处理器和检测引擎之间存在流量瓶颈,特别在数据流量加大时,检测引擎中要做的规则匹配次数就加大,而且很多都是在做无用功,因为网络中的异常数据相对于正常数据,还是偏少了很多,大部分的数据都是正常的。这样就浪费太多的时间在匹配正常数据包上。
本文的主要思想是在预处理器和检测引擎之间加入异常检测处理器,根据日志文件的正常数据,使用聚类技术构建正常模型,然后把预处理后的结果通过构建的正常模型筛选掉一大部分的正常数据,把筛选后的数据再通过检测引擎进行规则匹配,这样减少了匹配次数,缩短了检测时间。改进后系统模型见图2。
5 实验结果及分析
为了验证改进后的Snort系统在应用中效果,我们利用KDD CUP99数据集进行了实验。该数据集共有41维特征,按类别描述如下:
1)基本特征:包括duration, protocol_type,service,flag,src_bytes,
dst_bytes,land,wrong_fragment, urgent这9个特征。
2)内容特征:包括hot,num_failed_logins,logged_in,num_ comprom
ised,root_shell,su_attempted,num_root,num_file_creations,num_shells,num_access_files,num_outbound_cmds,is_hot_
login,is_guest_login这13种特征。
3)两秒窗口流量特征:包括:count,srv_count,serror_rate,srv_s error_rate,rerror_rate,srv_rerror_rate,same_srv_rate,diff_srv
_rate,srv_diff_host_rate这9个特征。
4)主机流量特征:包括:dst_host_count,dst_host_srv_count, dst _host_same_srv_rate,dst_host_diff_srv_rate,dst_host_same_src_ port_rate, dst_host_srv_diff_host_rate,dst_host_serror_rate,dst_host_srv_serror_rate,dst_host_rerror_rate,dst_host_srv_rerror_rate这10种特征。
对DOS、Probing、R2L、U2R这四类攻击,各选取了这四大类中的一到两个攻击进行训练,以期望能够尽量体现上述41维特征的作用。实验结果表明通过异常检查处理器后,系统检测的总耗时有所减少,在实验中还有一个更有意义的发现,随着检测数据数量的增大,上述的检测结果更为明显 。
6 结束语
在网络应用日益盛行的今天,网络的安全保证成为网络用户最为关心的热点问题,本文在现有的Snort系统基础上,添加了数据挖掘的技术,该模型宗旨是提高检测速度,希望以后继续努力,在自适应方面有所改进。
参考文献:
[1] Li Z,Das A,Zhou J.Theoretical basis for intrusion detection[C]//Proceddings of 6th IEEE Information As surance Workshop(IAW),West Point,NY,2005(7):15-17.
[2] Brain C,Jay B.Snort2.0入侵检测[M].劲松,译.北京:国防工业出版社,2004.
[3] 崔挺,李玉龙.数据挖掘在入侵检测系统中的应用[J].计算机工程与设计,2008(5).
[4] 贾世国,张昌城.基于数据挖掘的网络入侵检测系统设计与实现[J].计算机工程与应用,2008(5).
[5] Lee Wenke,Stolfo Salvatore J.A Framework for Constructing Features and Models for Intrusion Detection Systems[J].ACM Transactionson Information and System Security,2000,3(4).
[6] 唐正军,李建华.入侵检测技术[M].北京:清华大学出版社,2004.
[7] 高平利.基于Snort入侵检测系统的分忻与实现[J].计算机应用与软件,2006(6).
[8] 蒋建春,马恒太,任党恩,等.网络安全入侵检测:研究综述[J].软件学报,2000(7).
注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文