1、 本科毕业论文 题 目: 关联分析在网络入侵检测技术中的应用 姓 名: 学 院: 软件学院 系: 专 业: 软件工程 年 级: 学 号: 指导教师(校内): 职称: 指导教师(校外): 职称: 年 月 日 厦门大学本科毕业论文 关联分析在网络入侵检测技术中的应用 中文摘要 入侵检测系统 (IDS)是防火墙的必要补充,与传统的加密和访问控制方法相 比, IDS 是全新的计算机安全措施。在收集到系统和网 络的原始数据后,如何建立 入侵检测模型是入侵检测领域的研究重点。通过手工书写规则和其它特殊方式实现 的检测模型,使多数入侵检测系统只具有有限的有效性和适应性。将数据挖掘技术 应用于入侵检测,其思想
2、是:尽可能除去在入侵检测系统构建过程中的人工行为, 用一种以数据为中心的观点 ,将入侵检 测过程看作分析数据的过程,从而提高入侵检测系统构建过程的自动化程度 设计并实现了一个入侵检测原型系统。 通过 WINPCAP截包并 通过 Apriori算法提取规则 ,根据生成的规则集, 建立入侵检测系统 ,检测输入的审计数据,来判断是否有入侵行为。系 统对已知的攻击方法的检测是有效的。 关键词 入侵检测 数据 挖掘 关联规则 Apriori算法 厦门大学本科毕业论文 Abstract Intrusion Detection System(IDS), is a reasonable supplement
3、for Fire Wall Different from traditional access control and encryption technology, IDS is a latestsecurity measure. It is the focus of the intrusion detection research field that how to construct the intrusion detection model after the raw system and network audit data is obtained. Currently buildin
4、g an effective Intrusion Detection System is an enormous knowledge engineering task. System builders rely on their intuition and experience to construct the intrusion detection models. There for, we apply data mining techniques to intrusion detection. The central idea is that taking a data-centric p
5、oint of view and considering intrusion detection as a data analysis process. The intrusion detection system uses WINPCAP to catch packet and use Apriiori algorithm to get rule.and use the rule to design the system then inspect the data to decide if there is a aggressor. Key words: intrusion detectio
6、n data mining sequence rule Apriiori algorithm 厦门大学本科毕业论文 目录 0. 文摘 .1 1. 绪论 .6 1.1 研究的目的和意义 .7 1.2 研究背景 .8 1.3 组织结构 .8 2:基础知识 .10 2.1 Winpcap.10 2.1.1 Winpcap 的结构 .10 2.1.2 Winpcap 的功能、缺 陷及优势 .11 2.2 拒绝服务攻击 .12 2.3 数据挖掘的基本概念 .13 3. 系统的设计方案及其实现 .14 3.1 检测样本的获取 .14 3.2 关联规则挖掘算法 .14 3.2.1 关联分析算法 .14 3.
7、2.2 基本概念 .15 3.2.3 关联规则的挖掘步骤 .15 3.2.4 Apriori算法 .16 3.3 基于关联分析的网络入侵检测技术的实现 .17 3.3.1 传统的网络入侵检测模型 .17 3.2.2 关联分析模块工作过程 .17 3.3.3关联分析应用在入侵检测技术中的关键问题 .18 3.4 挖掘结果的处理 .19 3.5 实验结果 .20 3.5.1 规则挖掘结果 .20 3.5.2 DOS 攻击检测结果 .20 4. 总结 .21 致谢 .22 参考文献 .23 厦门大学本科毕业论文 第一章:绪论 1.1 选题的目的和意义 因特网 (Internet)起源于 1969年的
8、 ARPANet,最初用于军事目的, 1993年开 始用于商业应用,进入快速发展阶段 .到目前为止,互联网 己经履盖了 175个国家 和地区的数千万台计算机,用户数量超过一亿。随着计算机网络的普及,计算机网 络的应用向深度和广度不断发展。企业上网、政府上网、网上学校、网上购物等, 一个网络化社会的雏形己经展现在我们面前。在网络给人们带来巨大的便利的同时,也带来了一些不容忽视的问题,网络信息的安全保密问题就是其中之一。 一个安全系统至少应该满足用户系统的保密性、完整性及可用性要求。但是, 随着网络连接的迅速扩展,特别是 Internet大范围的开放以及金融领域网络的接 入,越来越多的系统遭到入侵
9、攻击的威胁。这些威胁大多是通 过挖掘操作系统和应 用程序的弱点或者缺陷 (bug)来实现的。目前,对付破坏系统企图的理想方法是建立一个完全安全系统。但这样的话,就要求所有的用户能识别和认证自已,还要采用 各种各样的加密技术和强访问控制策略来保护数据 . 目前,网络安全技术主要包括 , 1数据加密技术 : 加密算法是网络安全的基石 .数据加密实质上是对以符号为基础的数据进行移位和置换的变换算法。这种变换是被称为密钥的符号串控制的。一般情况下,我们用公开密钥算法建立通信,用对称密钥算法存储或传输中的数据进行加密,而用 MD5等报文摘要算法来验证数据的完整性 。加密技术可运用于链路层、网络层、传输层
10、和应用层。加密产品主要包括链路密码机、 IP协议密码机、邮件 /文件加密产品、 交易 /处理过程加密系统等。 2身份鉴别和认证技术 : 鉴别是确保所有安全应用和服务的基础,认证就是将特定实体从任意实体的集 合中识别出来的行为,而鉴别则是为认证提供充分保证的手段。鉴别和认证产品主 厦门大学本科毕业论文 2.传统的安全防护措施对网络管理人员的素质要求较高。要想保证现有的安全 防范措施能完全充分地发挥作用,要想检测网络安全措施是否真正地发挥了作用, 就必须要求网络管理人员要有很高的业务素质,而这一点也常常不 容易达到 要较好地解决上面两个问题,就必须在现有的安全体系中引入入侵检测系统 (Intrus
11、ion Detection System,简称 IDS)。入侵检测系统就是按此思路建立的安全系统, 即 :先建立比较容易实现的安全系统,同时按照一定的安全策略建立相应的安全辅助系统。现在安全软件的开发方式基本上就是按照这个思路进行的 .就目前系统安全状况而言,系统存在被攻击的可能性。如果系统遭到攻击,只要尽可能地检测到,甚至是实时地检测到,然后采取适当的处理措施 .IDS一般不是采取预防的措施以 防止入侵事件的发生,入侵检测作为 安全技术其作用在于 :识别入侵者 ;识别入侵 行为 ;检测和监视己成功的安全突破 ;为对抗入侵及时提供重要信息,阻止事件的 发生和事态的扩大。因此,入侵检测非常必要。
12、 1.2国内外研究概况 入侵检测的概念最早由 James Andersgn于 1980年提出。而 Dorothy Denning 于 19841987早提出并实现一个通用的入侵检测模型 IDES (IntrusionDetectionExpert System)。受 Anderson和 Dorothy的影响在 20世纪80年代出现 T大量的 原型系统如 IDAudit Analysis Project, Discovery, Haystack, MIDAS, NADIR, NSM,Wisdom and Sense等 ;商业化的入侵检测系统直到 20世纪 80年代后期才出现,比 如目前较有影响的
13、公司 ISS是在 1994年成立的 .国内的研究则从九十年代未起步, 至今方兴未艾 . 然而,到目前为止,入侵检测技术仍然很不完善。一方面随着计算机技术、网 络技术自身的高速发展、千兆高速网、 KCD技术等的出现,又增加了入侵检测实现 的难度 ;另一方面,入侵技术也在不断地更新变化。可以说网络入侵检测技术又面 临者一个新的挑战 .在大型网络中,入侵检测所面临的问题可以总结为 :大型分布、 异构环境 :庞大、时变、噪音信息数据 :不完整信息的推理 :处理不同类型的探测器 ;网络结构的复杂性,致使协作、通讯的困难 :大型网络中的信任关系复杂 ;进 攻模式的不断变化。在目前入侵检测技术的研究中,一方
14、面在检测技术上,针对越来越复杂的攻击 方法,如何提高人、检测能力。另一方面,利用 Agent技厦门大学本科毕业论文 术在检测系统结构设计上,实现对大型网络、高速千兆网、分布式异构平台环境的适应。目前的技术研究主要集中在如下几个方面 :检测系统的攻击反应机制 ;高度分布式的入 侵检测系统结构 ;入侵检测系统的互操作标准 ;新的入侵检测方法。 其中在新的入侵检测方法方面主要的研究方向有 sleI91 基于特征选择异常检测方法 ; 基于贝叶斯推理的异常检测方法 ; 基于贝叶斯网络的异常检测方法 ; 基于模式预测的异常检测方法 : 基于贝叶斯聚类的异常检测方法 ; 基于机器学习的异常检测方法 : 基于
15、数据挖掘的异常检测方法 ; 基于统计异常的检测方法 ; 基于神经网络的检测方法 ; 基于条件概率的误用检测方法 ; 基于状态迁移分析的误用入侵检测方法 ; 基于键盘监控的误用入侵检测方法 ; 基于专家系统的误用入侵 检测方法 ; 基于模型误用推理的误用入侵检测方法 ; 基于 Petri网状态转换的误用入侵检测方法 . 1.3论文的组织结构 本课题主要探讨了在入侵检测系统的设计和实现中应用数据挖掘技术的方法。下面介绍一下论文的内容安排。 第 一 章简要地介绍了国内外网络安全和入侵检测技术的研究现状,阐述了本课 题的研究目的和意义 . 第二章介绍了 数据挖掘的基本概念 ,关于 WIMPCIP 的截
16、包协议以及拒绝服务攻击的概念和危害性。 第三章 展示了几种类型的数据挖掘技术 .并 阐述了在该课题中研究的如何使厦门大学本科毕业论文 用 APRIORI算法来提取入侵特征 .APRIORI算法主要用于关联规则挖掘 ,在该课题中主要是利用其挖掘频繁项集的方法来提取候选特征序列 .之后编写入侵检测规则 ,设计检测模块。然后根据编写的规则组建系统进行试验,并得出实验结果。 第四章讨 论了当前入侵检测系统的发展趋势及主要难点,并提出本文的不足之处及未来的工作 厦门大学本科毕业论文 第二章:基础知识 引言 本章主要介绍了数据挖掘 , WIMPCIP的截包协议以及拒绝服务攻击的基本概念 . 2.1 WIN
17、PCAP的概念 WinPcap 提供了一套标准的 抓包接口 。 WinPcap 包括三个部分 第一个模块 NPF(Netgroup Packet Filter),是一个虚拟设备驱动程序文件。它的功能是过滤数据包,并把这些数据包原封不动地传给用户态模块,这个过程中包括了一些操作系统特有的代码 第二个模块 packet.dll为 win32平台提供了一个公共的接口。不同版本的Windows系统都有自己的内核模块和用户层模块。 Packet.dll用于解决这些不同。调用 Packet.dll的程序可以运行在不同版本的 Windows平台上,而无需重新编译 第三个模块 Wpcap.dll是不依赖于操作
18、系统的。它提供了更加高层、抽象的函数。 packet.dll和 Wpcap.dll packet.dll直接映射了内核的调用 Wpcap.dll 提供了更加友好、功能更加强大的函数调用 2.1.1 WINPCAP 的结构 操作系统所提供的分组捕获机制主要有 3种 :BPF(Berkeley Packet Filter), DILPI(DataLink Provider Interface)和 SOCK PACKET类型套接口 .基于 BSD的系统使用 BPF,基于 SVR4的系统一般使用 DLPI, Linux使用 SOCK_PACKET。从性能上看BPF比 DLPI好很多,而 SOCK PA
19、CKET最弱。 SCO OpenServer虽然本身没有内核过滤模块 BPF, 同系统架构 F. Packet.dll会相应有些变化。 第三个模块 wpcap.dll是系统无关的,它提供了更加高层、抽象的函数。它包括了一些 比如过滤器生成、用户级缓冲等其它的高层函数,增加了比如统计和包发送等更高级的特性。因此程序员能处理两种类型的 API:一套原始函数集,包含在 packet.dll中,直接与内核层 调用匹配 ;另一套高层函数由 wpcap.dll提 供,便于用户调用,功能更强大。wpcap.dll能 自动调用 packet.dll;一个简单的“高层调用”可以看成是几个 NPF系统调用。程序员
20、能随 意使用 wpcap.dll,但只能在受限的环境中直接使用packet.dll.总的说来, Packet.dll直接映射了内核的调用。 Wpcap.dll提供了更加友好、功能更加 强大的函数调用。 Winpcap的具体结构如图 2-1所示 : 厦门大学本科毕业论文 图 2-1 2.1.2 Winpcap的功能、缺陷及优势 Winpoap的主要功能在于独立于主机协议 (如 TCP-IP)而发送和接收原始数 据报。也就是说, Winpcap不能阻塞,过滤或控制其他应用程序数据报的发收,它仅仅只是监听共享网络上传送的数据报。因此,它不能用于 QOS调度程序或个人防火墙 .目前, Winpcap开
21、发的主要对象是 Windows NT/2000/XP,这主要是因为在使用 Winpcap的用户中只有一小 部分是仅使用 Windows 95/98/Me,并且 Microsoft也已经放弃了对 Win9x的开发。但 Winpcap中的面向 9x系统的概念和 NT系统的非常相似,只是在某些实现上有点差异,比 如说 9x只支持 ANSI编码,而 NT系统则提倡使用 Unicode编码。 WinPcap的优势在于 : 1.提供了一套标准的抓包接口,与 libpeap兼容,可使得原来许多 UNIX平台下的网 络分析工具快速移植过来 2、便于开发各种网络分析工具 3、充分考虑 各种性能和效率的优化,包括对于 NPF内核层次上的过滤器支持 4、支持内核态的统计模式 5、 提供了发送数据包的能力