摘要
设立防火墙和杀毒软件是保护计算机安全的主要手段,但随着操作系统的安全隐患被越来越多的发现,攻击者往往能绕开防火墙和杀毒软件来对目标进行攻击。从其他方面提高计算机安全性越来越迫切。基于该思想,设计了一个IDS(基于特征的入侵检测系统),目的是通过这个IDS监视并分析网络流量来发现攻击企图或者攻击行为,采取报警、回复假的不可达信息或断开连接等手段,来保护计算机安全。http://www.16sheji8.cn/
本次设计完成了一个IDS的设计和实现,详细论述了该IDS的结构和功能,阐述了相关概念和设计原理,并给出了部分关键代码。最后总结了本次设计的IDS的优点和缺陷,从性能方面对本次设计进行了评价。
关键词:IDS;NIDS;入侵检测系统;snort;网络安全
The Design and Implement of the Intrusion Detection Systems Based on the Characteristic
Abstract
We can use the firewalls and antivirus to protect the computer’s security. But with the potential security hazards are more and more regard, the attacker can keep away from the firewalls and antivirus to attack the computer. To reinforce the computer’s security become more and more exigent. Base on this idea, I designed an IDS (Intrusion Detection Systems) to guard and analyze the network flux and find the attacking intentions or attacking behaviors. To apply an alarm or retrain the false untouched information or disconnection could keep the security of computer.
This design implements an IDS, including its structure, functions, and principles as well. It also showed some important code. At last, it evaluated this IDS.
Key words: IDS; NIDS; Intrusion Detection Systems; snort; Network security
目 录
论文总页数:25页
1 引言 1
1.1课题背景 1
1.2国内外研究现状 1
1.3本课题研究的意义 2
1.4本课题的研究方法 3
2 相关开发环境及技术 3
2.1 C++语言 3
2.2 VC++开发环境 3
3 基于特征的IDS的设计与实现 4http://www.16sheji8.cn/
3.1 基于特征的IDS的特征 4
3.2包捕获模块 7
3.3包解码模块 8
3.4 预处理模块 10
3.4.1 初始化插件函数 10
3.4.2 预处理模块 12
3.5 检测模块 13
3.5.1 三维链表 13
3.5.2 ParseRule初始化函数 15
4 IDS的测试与评估 18
4.1 IDS的测试 18
4.2 本次IDS分析 22
结 论 22
参考文献 22
致 谢 24
声 明 25
1 引言
1.1课题背景
随着网络信息时代的到来,各个行业都不同程度的与网络挂上了钩。互联网甚至成为了某些行业赖以生存的工具(电子商务、网站、网络游戏行业)因此其安全性不言而喻。虽然如今的安全软件层出不穷,但大多都是防火墙、杀毒软件的类型。虽然该类软件从质量得到了提升,但是依然难以为处于网络上的计算机提供完整的安全保障。其原因在于计算机安全软件的发展处于了理论瓶颈,如何从理论上寻求突破口,拓展安全理论范围便成为了人们讨论的重点。基于这种情况,IDS的出现让人们的眼睛恍然一亮。什么是IDS: “IDS是英文“Intrusion Detection Systems”的缩写,中文意思是入侵检测系统。专业上讲就是依照一定的策略,对网络、系统的运行情况进行监视,尽可能发现各种攻击企图、行为或攻击结果。以保证网络资源系统的机密性、完整性和可用性。” [1]入侵检测的定义为:“发现非授权使用计算机的个体(如“黑客”)或计算机系统的合法用户滥用其访问系统的权利以及企图实施上述行为的个体。执行入侵检测任务的程序即是入侵检测系统。入侵检测系统也可以定义为:检测企图破坏计算机资源的完整性,真实性和可用性的行为的软件“。[2]
入侵检测系统与传统防火墙的优势在于IDS不是被动保护而是主动检测,”入侵检测系统是对防火墙的必要补充……在国内,随着关键部门、关键业务越来越多,迫切需要具有自主版权的入侵检测产品,但现状是入侵检测技术还不成熟,处于发展阶段,需要进一步研究”。[3]http://www.16sheji8.cn/
1.2国内外研究现状
从国内外IDS的技术发展来看,IDS可以分2种技术:”基于特征的和非正常的入侵检测系统”。 [4]
基于特征的是指IDS以计算机正常运行时的各种参数为依据,对搜集来的信息加以对比,不匹配的就进行相关的操作,如报警、记录、忽略等,该技术的优点是能发现未知的攻击,但是误报率高;基于非正常的则相对应以受到各种网络攻击时的数据为依据,对搜集来的信息加以比较,匹配则采取相关操作。这种技术的优点是误报率低,但是却不能发现未知攻击。
无论从规模与方法上入侵技术近年来都发生了变化。入侵的手段与技术也有了“进步与发展”。入侵技术的发展与演化主要反映在下列几个方面:
入侵或攻击的综合化与复杂化。入侵的手段有多种,入侵者往往采取多种攻击手段。由于网络防范技术的多重化,攻击的难度增加,使得入侵者在实施入侵或攻击时往往同时采取多种入侵的手段,以保证入侵的成功几率,并可在攻击实施的初期掩盖攻击或入侵的真实目的。
入侵主体对象的间接化,即实施入侵与攻击的主体的隐蔽化。通过一定的技术,可隐藏攻击主体的源地址及主机位置。即使用了隐蔽技术后,对于被攻击对象攻击的主体是较难直接确定的。
入侵或攻击的规模扩大。对于网络的入侵与攻击,在其初期往往是针对于某公司或一个网站,其攻击的目的可能为某些网络技术爱好者的猎奇行为,也不排除商业的盗窃与破坏行为。由于战争对电子技术与网络技术的依赖性越来越大,随之产生、发展、逐步升级到电子战与信息战。对于信息战,无论其规模与技术都与一般意义上的计算机网络的入侵与攻击都不可相提并论。信息战的成败与国家主干通信网络的安全是与任何主权国家领土安全一样的国家安全。
入侵或攻击技术的分布化。以往常用的入侵与攻击行为往往由单机执行。由于防范技术的发展使得此类行为不能奏效。所谓的分布式拒绝服务(DDoS)在很短时间内可造成被攻击主机的瘫痪。且此类分布式攻击的单机信息模式与正常通信无差异,所以往往在攻击发动的初期不易被确认。分布式攻击是近期最常用的攻击手段。 http://www.16sheji8.cn/
攻击对象的转移。入侵与攻击常以网络为侵犯的主体,但近期来的攻击行为却发生了策略性的改变,由攻击网络改为攻击网络的防护系统,且有愈演愈烈的趋势。现已有专门针对IDS作攻击的报道。攻击者详细地分析了IDS的审计方式、特征描述、通信模式找出IDS的弱点,然后加以攻击。
目前IDS技术尚处于发展阶段,相关技术还没有防火墙技术成熟。所以缺点还是比较明显,不同类型的IDS会存在不同程度的误报或者漏抱。所以现在对于IDS的争论还是比较多, “ ……Gartner公司副总裁Richard Stiennon发布的那篇研究报告《入侵检测寿终正寝,入侵防御万古长青》来批驳入侵检测系统(IDS)……”。[5]