大 庆 石 油 学 院 学 报 第3O巷 第1期 2006年2月 JOuRNAL OF DAQING PETROLEUM INSTITUTE Vo1.3O No.1 Feb. 2006 数据挖掘方法在入侵检测系统中的应用 衣治安 ,李 楠 ,彭 敏 (1.大庆石油学院计算机与信息技术学院,黑龙江大庆 163318; 2.大庆石油学院图书馆,黑龙江大庆 163318) 摘要:介绍了入侵检测的概念及其技术方法,比较了异常检测与误用检测方法的优缺点,探讨了数据挖掘技术在 异常检测中的应用,分析了数据挖掘方法中的关联分析、序列模式分析和分类分析在入侵检测系统中的协同工作方式, 通过对用户行为模式的挖掘。得到入侵规则. 关键词:入侵检测l异常检测;误用检测;数据挖掘;关联规则;序列规则;分类分析规则 中豳分类号:TP393.08 文献标识码:A 文章编号:1000—1891(2006)01—0076一O3 l 八1囊裣洲糸轨 随着计算机和网络技术的发展,网络攻击技术也在不断提高,手段变得更加高明和隐蔽.PPDRR模 型_1]从整体上考虑网络安全问题,以安全策略(Policy)为指导,综合运用防护工具(Protection,如防火墙、 身份认证系统、加密设备),并利用检测工具(Detection,如漏洞评估、入侵检测系统)了解和判断系统的安 全状态,通过适当的响应(Response)措施和恢复(Restore)手段将系统调整到最安全和风险最低的状态, 策略、防护、检测、响应和恢复组成了一个完整的、动态的安全循环.入侵检测系统IDS(Intrusion Detec— tion System)为PPDRR模型中重要的组成部分,通过从计算机网络或计算机系统的关键点收集信息并进 行分析,从中发现网络或系统中是否有违反安全策略的行为和被攻击的迹象_2]. 依据侵检测的策略,入侵检测模型主要有误用检测和异常检测.①误用检测(Misuse Detection)是对 利用已知的系统缺陷和入侵方法进行入侵活动的检测.其优点是有针对性地建立高效的入侵检测系统, 精确度较高;缺点是不能检测未知的入侵,也不能检测已知入侵的变种,因此可能发生漏报.常用的检测 方法有模式匹配、专家系统、模型推理、状态转换分析和Petri网等.②异常检测(Anomaly Detection)针对 异常入侵(由用户的异常行为和对计算机资源的异常使用产生),建立目标系统及用户的正常活动模型,基 于该模型对系统和用户的实际活动进行审计,以判定用户的行为是否对系统构成威胁.异常检测的优点 是不需要有系统缺陷的知识,有较强的适应性;缺点是难以提取完整的用户正常行为特征.常用的检测方 法有统计分析、神经网络、计算机免疫学和数据挖掘技术等. 2 数据挖掘与入侵检测的结合 数据挖掘(Data Mining)是知识发现(Knowledge Discovery in Database,简称KDD)概念的深化,是 人工智能、机器学习与数据库相结合的产物.数据挖掘程序处理搜集到的审计数据,为各种入侵行为和正 常操作建立精确的行为模式,是一个自动的过程,不需要人工分析和编码入侵模式.此外,相同的算法可 用于多种证据数据,可增强系统的可适应性.数据挖掘方法的关键在于选取算法和建立体系结构.根据 美国国防部入侵检测评估(DARPA),运用数据挖掘方法的入侵检测系统在性能上优于基于“知识工程” 的系统 Ⅲ]. 数据挖掘方法在入侵检测中的应用:一是发现入侵的规则、模式,与模式匹配检测方法相结合;二是用 收稿日期:2005—05—19;审稿人:袁满;编辑:郑丽芹 基金项目:黑龙江省研究生创新科研资金项目(YJSCX2006—38Hid) 作者简介:衣治安(1964一),男,硕士,教授,主要从事计算机网络与通信、数据库等方面的研究 ・76・ 维普资讯 http://www.cqvip.com
第l期 衣治安等:数据挖掘方法在入侵检测系统中的应用 于异常检测,找出用户正常行为,创建用户的正常行为库.数据挖掘的方法很多,文中分析3个应用于入 侵检测系统中的技术. 2.1关联分析 给定一组记录,每个记录为一组数据项,通过分析记录集合,得到数据项之间的相关性. 一个关联规则定义为:X—y,rc,S].其中,X和y是子数据项,X ny—O;C为置信度(包含x和y 的记录数与X的记录数之比),C:::support(X+y)/support(X):S为支持度(同时包含X和y的记录数 的百分比),S=support(XUy).置信度代表重要程度,其越高,说明规则越重要;支持度代表规则出现频 率,其越高,规则出现频率越高.置信度与支持度阈值的选择会影响挖掘结果,阈值较高,一些有价值的规 则会被删除,阈值较低会挖掘出大量的无用规则 J. 程序的执行和用户活动反映系统特征之间的关联.例如,程序员经常编写和编译C文件,数据库管理 员经常修改数据库等,因此,从历史行为中挖掘出的模式显示用户行为的统计特性,将这些模式添加到入 侵模式数据库中,并将当前用户行为与历史统计特性做比较,与安全策略矛盾的行为即为入侵行为.以 telnet会话阶段的shell命令审计记录为例,将用户向telnet主机递交的所有shell命令作进一步预处理, 去除编辑状态下用户输入的内容,仅保留文件的扩展名,见表1. 表1 telnet会话中的shell命令审计记录 用户名 MaO Mao Wang 时间 主机IP 用户IP .命令 /configure make gcc参数 ——O Mao make install 采用经典的Apriori算法计算关联规则支持度与置信度.Apriori是基于两阶段频集思想的算法.第 1步:迭代识别所有的频繁项目集,要求频繁项目集的支持度均不小于用户设定的阈值.第2步:从频繁项 目集中构造置信度不小于用户设定的最低阈值.识别和发现所有的频繁项目集是关联规则挖掘算法的核 心,是计算量最大的部分.在Apriori算法中,频繁;r/一项集表示为L ,候选;r/一项集表示为C .生成所有 的频繁项目集的过程是,首先产生L ,然后产生L ,直到有某个,一(,一一1,2,…,”),使得L 为空,这时算法 停止.在第k(k一1,2,…,”)次循环过程中产生的C 中的每一个项集,是对两个只有一个项不同的属于 L 一 的频集做(七一2)一连接产生的.C 中的项集是用来产生频集的候选集,最后的频集L 必须是C 的 一个子集.C 中的每个元素需在数据库中进行验证,决定其是否加入L ,其验证过程是算法性能的瓶颈. 表2 shell命令审计记录的关联规则 关联规则 Username ̄Mao—am—Time HostlP ̄192・168・198・1 96 这个方法要求多次扫描可能很大的 数据库,即若频集最多句含1o个 项,则需要扫描数据库1O次.表1 经Apriori算法处理后的shell命 令审计记录的关联规则见表2. 2.2序列模式 U含义 用户Mao 93 是上午登录主机192.168 198.serlP=192.168.198.192 ‘ 196,登录时IP地址是192.168.198 ’…一 ……‘ ‘ [0.93,0.60] 192,且6O 命令数据具有此模式. 与关联分析相似,其目的也是为了挖掘数据问的联系,但序列模式分析的侧重点在于分析数据问的前 因后果关系.序列规则表示为:x,y—z,Ec,S,w],X,Y,Z是数据项,合起来表示一个情节.S为规则的 支持度,S support(XUYUZ).C为置信度,C—support(XUYUZ)/support(XUy).序列(sequence) 是一列排好序的项集.在一个序列集中,如果序列S不包含于任何其他序列中,则称序列5为最大项序列. 序列模式挖掘分为5个步骤:排序阶段(sort phase)、大项阶段(1ite mset phase)、转换阶段(transformation phase)、序列阶段(sequence phase)和最大项序列阶段(maximal phase) . 一个序列规则定义为:X,y—Z,[C,S,w].其中X,y,Z是数据项,合起来表示一个情节;S为规则的 77 ・ 支持度,S_-support(XUYUz);C为置信度,c===support(XUYUz)/support(XUy). . 维普资讯 http://www.cqvip.com
大庆石油学院学报 第3o卷2006年 许多入侵行为都有前因后果,序列模式算法可以提取出不同会话记录中用户所执行命令存在的相关 性.序列模式挖掘采用GSP算法.GSP算法加入分类法、滑动窗口以及时间限制等,使挖掘得到的信息 更有效,其核心思想为:第一次遍历数据库,生成大项序列;第走次遍历时,在第走一1次遍历中产生的候选 序列中寻找种子集,重新遍历数据库寻找候选序列的支持度,故在一次遍历的最后,就可以决定真正的大 项序列,这些序列构成下一次遍历的种子集,当不再发现大项序列时终止.表1中经GSP算法处理后的 shell命令审计记录的序列模式见表3. 表3 shell命令审计记录的序列规则 序列模式 含义 (Username ̄Mao,./configure) 用户Mao 96 执行命令的序列:首先用./configure对软件包进行配置。然后用 (Username=M80,make) make编译一些软件安装过程中必备的文件,最后用make install(2 s内执行该 (Username=Mao,make instal1) 操作)将软件包和它的文件拷人所在系统中的正确位置,且这一序列模式在整 [o.96,0.07,2] 个数据中发生了7 . 2.3分类分析 将关联分析算法和序列分析算法得到的用户的正常和非正常的审计数据,用分类算法得到新的规则 集,并预测新的审计数据属于正常还是异常行为.分类分析的关键是选择正确的系统特征.例如,在关联 规则中,若用户Mao下午登录主机192.168.198.196次数的比例超过了上午正常登录的数值,并且未按 照序列模式规则执行命令,则视该用户盗用了Mao的口令,将该异常行为赋予一个类别的标记.针对其 他的用户行为,可以得到不同的类别标记,对每个类别做出准确描述,挖掘分类规则,然后用分类规则对其 他具有相同属性的记录进行分类. 3 结束语 数据挖掘中的关联分析、序列模式分析和分类分析可以在入侵检测系统中协同工作.利用关联分析 总结出某种操作不同特征属性问存在的相关性;利用序列模式分析对各种入侵行为和某些操作发生的先 后关系做出归纳,然后根据入侵行为的不同目的、不同危害;再利用分类分析进行分类处理.基于数据挖 掘技术的入侵检测系统能有效提取入侵模式和用户特征,提高入侵检测系统的检测效率,具有很强的可扩 展性和环境适应性.数据挖掘技术在入侵检测中有着极大的发展应用空间,将使得实时、自学习、智能的 入侵检测系统成为可能. 参考文献: [1]方滨兴.成熟的网络安全防护模型PPDRR[EB/OI ].http{//www.cert.org.cn/articles/nettech.files/frame.htm。2003. [2]罗守山.入侵检测[M].北京:北京邮电邮电大学出版社,2004. [33 ZAKI M J.Efficient enumeration of frequent sequences.The 7th International Conference on Informati。n and Know1edge Management [c].Washington IX::ACM CIKM,1998:68 75. [43 HOFMEYR S A.An imunologieal model of distributed detection and its application to computer security[D].Ph.D Thesis.US。Uni— versity of New Mexieo。l999. [5]刘君玲,吴小羽,曹岩.采用关联分析改进基于攻击签名的入侵检测的技术[J].吉林工程技术师范学院院报,2004,20(12) 7--9. [6]宋士杰,胡华平,胡笑蕾.关联规则和序列模式算法在入侵检测系统中的应用[J].信息工程学院学报,2004,19(1):32—33.
因篇幅问题不能全部显示,请点此查看更多更全内容