入侵防御技术研究毕业论文.docx
《入侵防御技术研究毕业论文.docx》由会员分享,可在线阅读,更多相关《入侵防御技术研究毕业论文.docx(37页珍藏版)》请在冰点文库上搜索。
入侵防御技术研究毕业论文
摘要
入侵防御系统(IntrusionPreventionSystem,IPS)是一种能够主动保护自己不受攻击的网络安全技术,它从计算机网络的某些关键点收集并分析数据包,从而发现危害安全网络的行为。
入侵防御系统弥补了网络安全领域中防火墙和入侵检测系统的不足,综合了防火墙防御功能和入侵检测系统的网络数据包检测功能,紧密实现上述两种安全系统的互动互利,对受保护网络进行更为完善的保护。
本文首先陈述了入侵检测系统和防火墙这两种相关技术基础,并对各自进行分类,同时分析了各自的优缺点。
然后对入侵防御系统进行了系统的阐述,分别概述了入侵防御系统的体系结构以及HIPS、NIPS这两种不同入侵防御系统,并通过将Netfilter防火墙框架及Snort入侵检测系统有机的结合来实现入侵防御原型系统。
关键字:
入侵防御入侵检测防火墙
Abstract
IntrusionPreventionSystem(IPS),anetworksecuritytechnologywhichcanSpontaneouslyprotectitselffrombeenattacked,selectsandanalyzesdatapacketsfromsomekeypointsincomputernetworktofindoutactivitieswhichharmthenetwork.IntrusionPreventionSystemovercomestheshortageofthefirewallandtheIDSinthefieldofnetworksecurity,andintegratesdefensefunctionofthefirewallandmeasuringsystemofthenetworkpacketsoftheIDS.Itachievesbothmeritsofthesecuritysystemstosafeguardthespecifiednetworkcompletely.
ThethesisfirststatestherelativefundamentaltopicsofthefirewallandtheIDS,classifiesthemandanalyzestherelativemerits.ThenitmakesadetailedexplanationoftheIntrusionPreventionSystem,separatelystatesthestructuresoftheIPS,HIPSandNIPS.Atlast,throughcombinesNetfilterwithSnort,prototypeofintrusionpreventionsystemcanbeachieved.
Keywords:
IPSIDSFirewall
Contents
第一章引言
研究背景与意义
随着互联网络的普及和网络技术的高速发展,人们在信息利用和资源共享上都有了很多便利,但与此同时也带来了日益严重的安全问题。
为了保障网络安全,人们采用了很多保护措施,其中防火墙,入侵检测系统是当今使用最为广泛的两种网络安全技术。
根据VANDYKESOFTWARE的调查显示,目前网络安全事件中,病毒破坏占78%,系统渗透占50%,拒绝服务攻击占40%,内部误用占29%,欺骗攻击占28%,笔记本电脑遭窃占22%,数据/网络遭破坏占20%,非授权访问占16%;其中86%的用户使用了防火墙,42%的用户使用了人侵检测系统。
由此可见防火墙和IDS对于网络安全来说是远远不够的。
这是因为防火墙和IDS两者相互独立,不能相互利用,取长补短,从而不能充分发挥各部分的功效。
要实现完全的入侵防御,首先需要对各种攻击能准确发现,其次需要实时的阻断防御与响应。
入侵防御系统(IPS)正是结合了防火墙防御功能和入侵检测系统的网络数据包检测功能,紧密实现两安全系统的互动互利。
它是一种主动,积极的入侵防范,组织系统,online式在线部署,深层分析网络数据,当检测到攻击企图后,会自动地将攻击包丢掉或采用措施将攻击阻断,这样攻击包将无法达到目标主机,从而可以从根本上避免入侵攻击,对受保护的网络进行更为完善的保护。
本论文主要研究的内容
本论文首先介绍了入侵检测技术和防火墙技术,并讨论了两者在网络安全领域中各自存在的缺陷,引入了入侵防御技术,该技术综合了入侵检测系统的检测技术和防火墙的防御技术。
然后给出了入侵防御系统的体系结构及其分类。
最后介绍了开源项目Netfilter/Iptables和Snort,并以此为基础实现了一个入侵防御系统的原型。
论文组织结构
论文余下章节内容安排如下:
第二章主要介绍了入侵防御系统的基本原理与技术。
第三章主要阐述了入侵防御系统的设计及核心模块。
第四章主要论述了基于Netfiter和Snort的入侵防御系统的实现。
第五章进行了全文总结与展望。
第二章基本原理和技术
入侵防御系统(IPS)
由于入侵检测技术和防火墙技术都存在着不足,入侵防御技术则应用而生,它是一个能够对入侵进行检测和响应的主动防御系统,实时地保护信息系统不受实质性攻击的一种智能化安全产品。
它最大的改进就是能够发现未知类型的网络攻击,并做出准确的判断。
入侵防御系统(IntrusionPreventionSystem,IPS),相对于入侵检测系统而言,更倾向于提供主动的防护。
它通过直接嵌入到网络流量中实现这一功能,即通过一个网络接口来接受来自外部系统的流量,经过检查,确认不含有异常活动或可以内容后,再通过另外一个网络接口将它传递到内部系统中。
这样有问题的数据包,以及所有来自同一数据流的后续数据包,都会被IPS给彻底清除掉。
入侵防御系统的原理如图2-1所示
图2-1入侵防御系统的原理
2.1.1入侵防御系统的体系结构
入侵防御系统的体系结构如图2-2所示。
图2-2入侵防御系统的体系结构图
在检测攻击时,IPS体系结构能使系统执行以下功能:
阻止攻击IPS体系结构允许IDS以嵌入式方式工作,它能实时阻止攻击源和目标主机之间的单一报文、单一会话或网络流量,提前拦截攻击而不影响别的流量。
终止会话IPS体系结构允许初始化到目标主机的TCP复位信号,网络安全管理员可配置复位信号,以便它们能被发送到源IP地址或目标IP地址。
修改防火墙策略当攻击发生时,IPS体系结构允许用户临时改变其指定的访问控制策略来重新配置网络防火墙,同时向安全管理员报警。
实时报警当网络流违反安全策略时,IPS体系结构会实时产生并发送一个报警给管理系统。
正确配置报警对维护有效防御至关重要,缓冲区溢出和拒绝服务攻击要求实时响应。
日志报文基于IPS体系结构的系统能捕获报文并对报文作日志记录,在攻击发生时,它能把流量重定向到空闲的系统端口用于详细的取证分析。
2.1.2入侵防御系统的分类
根据入侵防御系统操作平台的不同,IPS可分为两种,即基于主机的入侵防御系统(HIPS)和基于网络的入侵防御系统(NIPS)。
(1)基于主机的入侵防御系统(HIPS)
基于主机的入侵防御系统通过在主机/服务器上安装软件代理程序,防止网路攻击入侵操作系统以及应用程序。
服务器因为受到基于主机的入侵防御系统的保护,使其的安全弱点不会被不法分子所利用。
它根据自定义的安全策略以及分析学习机制来阻断对服务器、主机发起的恶意入侵;还可以阻断缓冲区溢出、改变登陆口令、改写动态链接库以及其他试图从操作系统夺取控制权的入侵行为,整体提升主机的安全水平。
HIPS采用独特的服务器保护途径,利用又包过滤、状态包检测和实时入侵检测组成分层保护体系。
既可以以软件形式嵌入到应用程序对操作系统的调用当中,通过拦截针对操作系统的可以调用,提供对主机的安全防护;也可以以更改操作系统内核程序的方式,提供比操作系统更加严谨的安全控制机制。
所有的HIPS工作原理基本相同,但不同的生产厂家有不同的实现方法。
本文仅以OKENA公司生产的StormWatch为例。
StormWatch是一个典型的基于主机的入侵防御系统,它一般安装在服务器或工作站上,采用策略和基于可接受行为的访问控制规则进行入侵检测和阻止。
StormWatch具有四个可供系统调用的拦截机。
其中,文件系统拦截机负责拦截所有的文件读写请求;网络拦截机是在驱动(NDIS)或者传输(TDI)层拦截数据包事件;配置拦截机专门拦截对Windows注册表或UNIX的rc文件的读写请求;执行空间(运行环境)拦截机用于拦截对不属于宿主应用程序的内存空间进行写操作的请求。
StormWatch通过四个系统调用拦截机拦截对文件、网络、配置和运行环境进行控制,然后把它们与特定的应用程序访问控制规则和策略进行比较,将正常的系统调用传送给内核,而恶意的系统调用则予以阻止。
(2)基于网络的入侵防御系统(NIPS)
基于网络的入侵防御系统(NIPS),通过检测网络流量,提供对网络系统的安全保护。
由于它采用串联连接方式,所以一旦辨别出入侵行为,NIPS就可以阻止整个网络会话,而不仅仅是复位会话。
因此NIPS通常被设计成类似于交换机的网络设备,提供限速、吞吐速率以及多个网络端口。
基于网络的入侵防御系统(NIPS)的工作原理是采取在线安装的方式嵌入网络流量中,通过其中的一个网络端口接收来自外部的系统的流量,经过自身过滤器的检查,再把已确认其中不包含异常活动或可疑内容的流量通过另一个端口转发到内部系统中,而那些恶意的数据包以及来自同一会话中其他后续数据包将被NIPS丢弃。
NIPS之所以能够检测并阻止大量的外部攻击,关键在于其拥有数量众多的过滤器引擎。
以TopLayer公司生产的AttackMitigator为例,它是一个可靠的、基于ASIC的转发设备。
它能够对不断增长的网络攻击和入侵行为进行准确和可靠的检测,可以通过转发、限制或者丢弃等操作精确地控制流量。
它由五个模块组成。
其中,安全核心引擎是一个基于47层的状态检测引擎,这个引擎可以过滤单包攻击和IP分段攻击,能够阻塞通过使用IP地址和TCP/UDP端口策略识别的信息流:
属于已知正常会话的流量将以高速率转发出去,被认为是恶意的流量将被送到入侵响应引擎,被怀疑的流量将被送到下一个引擎;抗DoS/DDoS引擎用来识别并阻止拒绝服务攻击;抗蠕虫和80端口攻击引擎主要用于使用状态规格化匹配算法识别蠕虫及其变种,使用HTFP协议验证,格式化字符串匹配和URI长度检查识别HTFP攻击;流量异常引擎供使用智能流量分析系统进行流量异常检测;入侵响应引擎用来设置响应措施并且负责转发、限制、阻止、报告等具体措施的实行。
相关技术
2.2.1入侵检测技术
入侵检测技术是在80年代提出来的。
入侵检测技术提出后,得到了很大的重视,被认为是解决网络安全行之有效的方法。
入侵检测(IntrusionDetect)就是当入侵事件发生时,入侵行为能立即被发现。
入侵检测系统作为一种积极主动的安全防护工具,它通过计算机网络或计算机系统的关键点收集信息并进行分析,一方面检测XX的对象对系统的入侵,另一方面还监视授权对象对系统的非法操控。
由于仅依赖于防火墙网络的组织往往是外紧内松,无法阻止内部人员所做的攻击,对信息流的控制,缺乏灵活性,内部缺乏必要的安全措施。
入侵检测系统就成为了系统的第二道安全防线。
它是防火墙的合理补充,首先它迅速检测到入侵,能使入侵者在破坏发生前被逐出系统。
即使为能足够迅速检测出入侵并加以阻止,但能越早检测出入侵,也为尽可能减少入侵创造条件。
其次它能够实时地对检测到的攻击行为进行响应,检测系统的正确性和安全漏洞并提示系统管理员及时修补漏洞。
另外它入侵检测收集到的有关信息,对客户非正常活动的统计分析,发现攻击行为的规律,都可以用来加强阻止入侵行为。
从而提高了信息安全基础结构的完整性。
入侵检测系统可以按照分析方法和信息来源进行分类。
◆按分析方法分类
(1)异常入侵检测(Anomalydetection)
异常入侵检测是指能够根据异常行为和使用计算机资源情况检测出来的入侵.要解决的问题就是构造异常活动集并从中发现入侵性活动子集。
异常入侵检测假设入侵者的活动异于正常的活动,由此可建立主体正常活动的“行为模型”。
试图用定量方式描述可接受的行为特征,来区分非正常的、潜在的入侵性行为。
进行检测时,将当前主体活动状况与“行为模型”比较,若违反其统计规律,则认为该活动可能是入侵行为。
目前出现的具体方法有:
基于特征选择,基于贝叶斯推理,基于模式预测,基于机器学习,基于神经网络和概率统计等方法。
图2-3是一种异常检测模型图
图2-3异常检测模型图
异常检测的优点:
具有抽象系统正常行为从而检测异常行为的能力。
这种能力的适应力好,不要求系统漏洞知识,不受是否知道这种入侵的限制,可以检测新的入侵行为。
问题在于:
入侵者可以逐步了解到检测规律,小心避免系统指标的突变,再使用逐渐改变系统指标的方法逃避检测;异常行为是相对的,难以确定正常和异常之间的分别,容易漏报和误报;计算量大,设计的入侵度量众多;检测效率不高;检测时间也较长。
(2)误用入侵检测(MisuseDetection)
是指利用已知系统和应用软件的弱点攻击模式来检测入侵。
误用入侵检测的主要假设是具有能够被精确地按某种方式编码的攻击,并可以通过捕获攻击及重新整理,确认入侵活动是基于同一弱点进行攻击的入侵方法的变种。
则可检测系统的活动是否符合这一模型(特征),由此可以判断是否又入侵活动。
目前出现的具体方法:
模式匹配,模型推理,基于条件概率,基于状态迁移和键盘控制等。
图2-4是一种误用检测模型图
图2-4误用检测模型图
误用入侵的优点是:
1.准确性好,可以针对某个具体的系统建立高效的检测系统;2.以实现和应用,检测准确率高,误报少,处理速度快,是目前最有效最流行的检测方法。
问题在于:
对于未知的攻击无效,容易漏报需要对入侵特征库进行升级。
◆按信息来源分类
(1)基于主机的入侵检测系统(Host-basedIntrusionDetectionSystem,HIDS)
基于主机的入侵检测系统主要依靠主机行为特征进行检测。
可监测系统,事件和WindowsNT下的安全记录以及Unix环境下的系统记录。
在被监测的主机(宿主主机)上运行一个代理程序,该代理程序扮演着检测引擎的角色,它根据主机行为特征库对宿主主机上的可疑行为进行采集,分析和判断。
当有文件被修改时,IDS将新的记录条目与已知的攻击特征相比较,看它们是否匹配,就会相系统管理员报警或者做出适当的响应。
基于主机的IDS在发展过程中融入了其他技术。
对关键系统文件和可执行文件的入侵检测的一个常用方法,是通过定期检查校验来进行的,以便发现意外的变化,反应的快慢与轮询间隔的频率又直接的关系。
许多产品都是监听端口的活动,并在特定端口被访问时向管理员报警这类检测的方法将基于网络的入侵检测的基本方法融入到基于主机的检测环境中。
HIDS也有它的局限性:
1.操作系统的局限,不像NIDS可以制定一个足够安全的操作系统来保证自身的安全性,HIDS的安全性完全受宿主主机操作系统的安全性限制;2.系统日志限制,HIDS通过检测系统日志来发现可疑的行为,但有些程序的系统日志并不详细,或者没有日志。
有些入侵行为本身不会被具有系统日志的程序记录下来。
(2)基于网络的入侵检测系统(Network-basedIntrusionDetectionSystem,NIDS)
基于网络的入侵检测系统,以网络包作为分析数据源。
它通常利用一个工作在混合模式下的网卡来实时的监视并分析通过网络的数据流,其分析模块通常使用模式匹配、统计分析等技术来识别攻击行为。
一旦检测到了攻击行为,IDS的响应模块就做出报警、切断相关用户的网络连接等适当的响应。
与HIDS相比NIDS的局限性表现在:
1.它是基于网络通信进行检测的,所以对主机上的行为无法检测;2.对与串联模式的NIDS,所有的数据都要经过它,所以NIDS就成了网络数据流量的一个瓶颈,对网络的性能形成负面影响,对于旁路监听得NIDS在网络流量巨大时,由于自身的处理能力有限,可能无法实现对所有数据包的检测,因而出现漏报现象。
(3)混合入侵检测
基于主机和基于网络的入侵检测产品都有各自的优点和不足之处,单纯的使用一类产品会造成主动防御体系不全面。
但是,它们的缺憾是互补的,如果这两类产品能够结合起来部署在网络内,互相补充会构架成一套完整立体的主动防御体系。
事实上,许多客户在使用IDS时都配置了HIDS和NIDS。
DNS、Email和Web服务器经常是攻击目标,但是它们又必须与外部网络交互,不可能对其进行全部屏蔽,所以应当在各个服务器上安装基于主机的入侵检测系统,器检测结果也要想分析员控制回报。
因此,即便是小规模的网络结构也常常需要基于主机和基于网络的两种入侵检测能力,使安全措施的实施更加有效。
2.2.2防火墙技术
防火墙是目前最为流行的,也是使用最为广泛的一种网络安全技术,在构建安全网络环境中它是第一道安全防线,它的主要作用是通过限制网络通信,对信息资源提供可靠的安全服务。
典型的防火墙具有以下三个特征:
·内部网络和外部网络之间的所有网络数据流都必须经过防火墙。
这是防火墙所处网络位置特性,同时也是一个前提。
防火墙的目的就是在网络连接之间建立一个安全控制点,通过允许、拒绝或重新定向经过防火墙的数据流,实现对进、出内部网络的服务和访问的审计和控制。
因为只有当防火墙是内、外部网络之间通信的唯一通道,才可以全面、有效地保护内部网部网络不受侵害。
·只有符合安全策略的数据流才能通过防火墙。
防火墙最基本的功能是确保网络流量的合法性,并在此前提下将网络的流量快速的从一条链路转发到另外的链路上去。
这也是防火墙的工作原理特性。
·防火墙自身应具有非常强的抗攻击免疫力。
这是防火墙之所以能担当内部网络安全防护重任的先决条件。
防火墙处于网络边缘,只有自身具有非常强的抗击入侵的能力,才能够抵挡黑客的入侵。
在信息安全领域中,通常把防火墙定义为一种技术,而不是一种产品。
对于防火墙产品,根据其所采用的技术不同,可以将它分成四种基本类型:
包过滤型、网络地址转换-NAT、代理型和监测型。
一、包过滤型
包过滤又称“报文过滤”,简单有效,是防火墙的初级产品,其技术依据是网络中的分包传输技术。
它通过拦截数据包,读取包头信息,如数据的源地址、目标地址、TCP/UDP源端口和目标端口等信息。
然后判断这些“包”是否来自可信任的安全站点,一旦发现来自危险站点的数据包,防火墙就会把其过滤掉。
包过滤技术只需对每个数据包与安全规则进行比较,就可得出结论,因此执行起来简单实用,而且还具有对用户透明性高、传输性能高和实现的成本也比较低的优点。
但是由于包过滤技术是一种完全基于网络层的安全技术,只能根据数据包的来源、目标和端口等网络信息进行判断。
因此它的缺陷也是显而易见的,包过滤技术只能进行较为初步的安全控制,对于基于应用层的恶意侵入,如恶意的拥塞攻击、内存覆盖攻击和病毒等的高层次攻击手段是无能为力的。
二、网络地址转换-NAT
网络地址转换是一种把IP地址转换成临时的、外部的、注册的IP地址标准。
整个过程向用户透明,不需要用户进行设置,而只要进行常规操作就行了。
它允许具有私有IP地址的内部网络访问因特网。
它还意味着用户不需要为其网络中每一台机器取得注册的IP地址,网络机构如图2-5所示。
图2-5网络地址转换
网络地址转换的工作过程是:
客户机将数据包发给运行NAT的计算机
NAT主机将数据包中的端口号和专用的IP地址转换成自己的端口号和公网的IP地址,然后将数据包发给外部网络的目的主机,同时记录一个跟踪信息在映像表中,以便向客户机发送响应信息。
外部网络发送信息给NAT主机。
NAT主机将所收到数据包的端口号和公用IP地址转换成自己的端口号和内部网络的专用IP地址,并转发给客户机。
网络地址转换就是通过这种方法将真实的内部网络地址隐藏起来了。
在外部网络通过非安全网卡访问内部网络时,它并不知道内部网络的连接情况,而只是通过一个开放的IP地址和端口来请求访问。
NAT防火墙根据预先定义好的映射规则来判断这个访问是否安全。
当符合规则时,防火墙则认为此次访问时安全的,并接受访问请求,也可将连接请求映射到不同的内部计算机中。
当不符合规则,防火墙则认为其不安全,不能接受并将其屏蔽。
三、代理型
代理型防火墙也可以被成为是代理服务器,它的安全性高于包过滤型产品,并主要在应用层实现。
当服务器收到一个客户的连接请求时,先核实该请求,然后将处理后的请求转发给真实服务器,等真实服务器做出应答后再将回复交给发出请求的客户。
由于代理服务器在客户机与服务器之间,完全组断了两者的数据交流,保证了内部网络拓扑结构等重要信息被限制在代理网关内侧,不会外泄,从而减少了黑客攻击时所需的必要信息。
代理型防火墙安全性能高,可以针对应用层进行侦测和扫描,对付应用层的侵入和病毒十分有效。
但代理防火墙的应用也受到诸多限制。
首先是当一项新的应用加入时,如果代理服务程序不予支持,则此应用不能使用。
解决的方法之一是自行编制特定服务的代理服务程序,但工作量大,而且技术水平要求很高,一般的应用单位无法完成。
其次是处理性能远不及状态检测高。
四、监测型
监测型防火墙是新一代的产品,这一技术时机已经超越了最初的防火墙定义。
监测型防火墙能够更有效、全面的对进出内部网络的通信进行监测,进一步确保内部网络的安全。
监测型防火墙能够对各层的数据进行主动的、实时的监测,在对这些数据加以分析的基础上,监测型防火墙能够有效地判断出各层次中的非法侵入。
同时,监测型防火墙自带的分布式探测器,可以安置在各种应用服务器和其他网络的节点之中,不仅能够检测来自网络外部的攻击,还能够对来自内部的恶意破坏进行极强的防范。
从外部看,检测性防火墙像是一个代理系统,所有的请求看起来都来子一个主机。
从内部看,坚持性防火墙又像是一个包过滤系统,内部的所有主机都认为自己和外部网络直接相连,所有它在安全性能上已经完全超越了包过滤型和代理服务器型防火墙。
但它也从在缺陷,那就是检测性防火墙技术的实现成本较高,而且不易管理,所以目前在实用中的防火墙产品仍以代理型产品为主,但在某些方面也已经开始使用监测型防火墙。
图2-6防火墙应用
虽然防火墙是目前保护网络免遭黑客袭击的有效手段,但它还是无法对通过防火墙以外的其他途径的攻击,以及来自内部变节者和不经心的用户们带来的威胁进行防范(如图2-6),也不能完全防止传送已感染病毒的软件或文件,以及无法防范数据驱动型的攻击。
第三章系统设计
本研究中所实现的入侵防御系统是在开源项目Netfilter/Iptables和Snort的基础上进行改进,将它们有机的结合,从而共同实现入侵防御功能。
本系统的实现中,充分考虑了如何利用Netfilter/Iptables和Snort已有的强大功能模块,快速构建一个入侵防御原型系统。
Netfilter防火墙
3.1.1Netfilter简介
Linux操作系统自问世以来,因其开放源代码而被广泛应用。
内核以上版本使用Iptables构建基于Netfilter框架的防火墙,可以实现数据包过滤、数据包处理以及地址转换等功能。
Netfilter架构是一种内核中用于扩