(计算机软件与理论专业论文)tcpip协议分析在状态检测防火墙中的应用研究与实现.pdf_第1页
(计算机软件与理论专业论文)tcpip协议分析在状态检测防火墙中的应用研究与实现.pdf_第2页
(计算机软件与理论专业论文)tcpip协议分析在状态检测防火墙中的应用研究与实现.pdf_第3页
(计算机软件与理论专业论文)tcpip协议分析在状态检测防火墙中的应用研究与实现.pdf_第4页
(计算机软件与理论专业论文)tcpip协议分析在状态检测防火墙中的应用研究与实现.pdf_第5页
已阅读5页,还剩84页未读 继续免费阅读

(计算机软件与理论专业论文)tcpip协议分析在状态检测防火墙中的应用研究与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 摘要 网络协议是进行网络通信的规则和基础。在防火墙上运行着的各种网络协议 存在一些漏洞,于是被选作攻击的切入点,大多数防火墙的抗攻击能力也因此处 于被动地位。所以需要有完善的协议校验机制,对通过防火墙的所有数据包进行 全面检查,发现并阻止攻击,提高防火墙的抗攻击能力,改变安全防护处于被动 状态的局面。本课题借鉴协议分析技术在其他网络领域中的成功应用,致力于防 火墙中协议分析技术的完善和发展,将协议分析作为一个独立的子系统加以实 现。该子系统提供第二层安全校验,与防火墙的状态检测技术相结合,全面地检 查网络通信,也为实现防火墙和入侵检测功能的结合打下了基础。 主要研究内容如下: 1 分析了t c p i p 协议及协议分析技术,总结了协议分析技术的原理和特点, 设计并实现了协议分析子系统。除了对传输层协议进行分析外,还对应用层协议 进行了处理,对协议进行校验,对i p 分片进行重组。 2 分析了状态检测防火墙及其关键技术,总结了实现状态检测防火墙的核心 技术的原理和特点,设计并实现了状态检测模块。分不同协议进行检测,对t c p 进行全状态检查。 3 分柝了网络数据包的截获技术,该技术是实现协议分析和状态检测的基 础,选择并采用了n d i s _ h o o k 技术来截获网络数据包,研究并实现了数据包的拦 截。 关键词协议分析;状态检测;n d i s _ h o o k ;连接跟踪 北京工业大学工学硕士学位论文 a b s t r a c t n e t w o r k p r o t o c o l s a r et h er u l e sa n dt h eb a s e so fn e t w o r k c o m m u n i c a t i o n s v a r i o u sn e t w o r kp r o t o c o l sr u n n i n go nt h ef i r e w a l lh a v e s o m el e a k s ,w h i c ha r es e l e c t e da st h ee n t r a n c et ob ea t t a c k e d ,a n d1 e a d t om o s tf i r e w a l l s r e s i s t a n c ei sp a s s i v e i tn e e d st oh a v eo n ep e r f e c t c h e c k o u t s y s t e mo fp r o t o c o lt oc h e c k o u ta l1p a c k a g e st h r o u g h o u tt h e f i r e w a l lt h o r o u g h l y ,s ot h a tt h ea t t a c k sc a nb ef o u n do u ta n db eh o l d e n b a c k ,t h ea b i l i t yo ft h ef i r e w a l l sr e s i s t a n c ec a nb ei m p r o v e d ,a n dt h e p a s s i v es a f e g u a r d c a nb e c h a n g e d t h i sd i s s e r t a t i o nc o n s u l t st h e s u c c e s s f u lu s eo fp r o t o c o la n a l y s i st e c h n o l o g yi no t h e rn e t w o r kf i e l d s t op e r f e c ta n dd e v e l o pi to nt h ef i r e w a l l t h ec o r r e s p o n d i n gs u b s y s t e m i sr e a l i z e d a n dt h e nt h es u b s y s t e mc o n n e c t sw i t hs t a t e f u li n s p e c t i o na s t h es e c o n ds e c u r ec h e c k o u tt oc h e c kn e t w o r kc o m m u n i c a t i o n st h o r o u g h l ya n d a l s op r o v i d e sab a s ef o ri m p l e m e n t i n gt h ef i r e w a l lw i t ht h ef u n c t i o no f i d s t h em a i nw o r k so ft h ed i s s e r t a t i o na r ea sf o l l o w s 1 t c p i pp r o t o c o la n dt h ep r o t o c o la n a l y s i st e c h n o l o g ya r ea n a l y z e d t h ep r i n c i p l e sa n dc h a r a c t e r i s t i c so ft h el a t t e ra r es u m m a r i z e d t h e s u b s y s t e mo fp r o t o c o la n a l y s i si sd e s i g n e da n di m p l e m e n t e d t h et r a n s p o r t p r o t o c o l sa r ea n a l y z e d t h ed i s p o s a lo ft h ea p p l i c a t i o nl a y e r ,t h e p r o t o c o lc h e c k i n g ,a n dt h er e c o m b i n a t i o no fi ps l i c ea r ei m p l e m e n t e d 2 t h es t a t e f u li n s p e c t i o nf i r e w a l la n di t sc o r et e c h n o l o g i e sa r e a n a l y z e d t h ep r i n c i p l e sa n dc h a r a c t e r i s t i c so ft h ec o r et e c h n o l o g i e sa r e s u m m a r i z e do ni m p l e m e n t i n gt h ef o r m e r t h es t e t e f u li n s p e c t i o nm o d u l ei s d e s i g n e d a n d i m p l e m e n t e d d i f f e r e n tp r o t o c o l s a r ei n s p e c t e da n d f u l ls t a t ec h e c k o u ti sc a r r i e do nt c p 3 t h et e c h n o l o g yo fi n t e r c e p t i n gn e t w o r kd a t ap a c k a g e si sa n a l y z e d , l i a b s h n l e t w h i c hi st h eb a s eo f i m p l e m e n t i n gp r o t o c o l a n a l y s i sa n ds t a t e f u l i n s p e c t i o n t h et e c h n o l o g yo fn d i s _ h o o ki ss e l e c t e dt oc a p t u r et h en e t w o r k d a t ap a c k a g e s t h ei n t e r c e p ti o no fn e t w o r kd a t ap a c k a g e sisr e s e a r c h e d a n di m p l e m e n t e d k e y w o r d sp r o t o c o la n a l y s i s ; s t a t e f u li n s p e c t i o n : n d i s _ h o o k ; c o n n e c t i o na n dt r a c k i n g i 独创性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研 究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他 人已经发表或撰写过的研究成果,也不包含为获得北京工业大学或其它教育机构 的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均 已在论文中作了明确的说明并表示了谢意。 、 繇丕蓝氢最吼丝堕缈目 关于论文使用授权的说明 本人完全了解北京工业大学有关保留、使用学位论文的规定,即:学校有权 保留送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部或部 分内容,可以采用影印、缩印或其他复制手段保存论文。 ( 保密的论文在解密后应遵守此规定) 繇毯拯叁导师签名氇三二瞰丝堕绸旧 一卅 第1 章绪论 第1 章绪论 1 1 学术背景及其实际意义 i n t e r n e t 的迅速发展在给现代人的生产和生活带来了前所未有的便捷的同 时,也给人们带来了日益严峻的网络安全问题,这种会导致危害的可能性使得用 来保护i n t e r n e t 资源的安全措施和设备变得不可或缺“1 。其中不可不提的就是 防火墙,它几乎是维护网络安全必不可少的一个组成部分0 1 。 防火墙通常部署在一个网络的出入口处,它是不同网络或网络安全域之间 信息的唯一出入口,类似于一个单位的门卫,通过执行一定的规则来控制内外网 络的数据流,从而控制用户对网络资源访问。在逻辑上,防火墙是一个分离器, 一个限制器,也是一个分析器,有效地监控内部网和i n t e r n e t 之间的任何活动, 保证内部网络的安全。1 。防火墙具有如下特性:所有的通信都经过防火墙、防火 墙只放行经过授权的网络流量、防火墙能经受得起对其本身的攻击“1 。 对于任何通用的网络安全模型,防火墙都是一个重要的组成部分“1 。但是防 火墙安装、配置和维护起来非常复杂,因此经常会暴露防火墙硬件、软件等底层 实现的缺陷甚至导致错误,设计漏洞和使用错误都会削弱防火墙的保护能力,给 攻击者以可乘之机。另外,防火墙不能防范经过授权的东西,也就是说防火墙允 许其所保护的系统应用的正常通信流量通过防火墙,如果一个应用程序本身就有 错误,那么防火墙就不会阻止由此引起的攻击。此外,防火墙不能阻止那些不经 过它的攻击。 防火墙处在网络安全设置的第一道关卡,有着举足轻重的地位,一旦防火墙 受到攻击而瘫痪,那么造成的损失是不可估量的,现在有许多攻击都是针对防火 墙的,例如i p 欺骗攻击、d o s 拒绝服务攻击、分片攻击、木马攻击、协议隧道 攻击等等”1 。目前的大多数防火墙都具有一定的抗攻击能力,但是只能抵御一些 已知的攻击,所以安全防护一直处于被动的地位,对于新出现的攻击,很难抵御。 随着攻击的花样越来越多,攻击的切入点越来越隐蔽,就要求防火墙自身抵御攻 击的能力也要不断的加强。 网络协议是进行网络通信的规则,所有的通信必须首先符合这种规则,才可 北京工业大学工学硕士学位论文 以进行更进一步的通信活动,在防火墙上运行着的各种网络协议存在这样那样的 漏洞,于是被攻击者选作攻击的切入点,比如:c h e c kp o i n tf i r e w a l l 一1 自己 定义的协议r d p ( 使用u d p 协议,2 5 9 端口) ,就可以被攻击者成功的利用绕过防 火墙实行攻击,r a p t o r 防火墙在代理h t t p 请求中也存在着漏洞“1 。协议隧道攻 击是对付状态检测防火墙的很有效的攻击,攻击者将一些恶意的攻击数据包隐藏 在一些协议分组的头部,从而穿透防火墙系统对内部网络进行攻击。本研究就是 根据这一现象提出的。 本课题在目前最先迸的防火墙技术状态检测技术过滤的基础之上,将协 议分析作为第二层安全校验,智能地、全面地检查网络通信。从各种不同的协议 是如何工作的角度,全面分析这些协议的通信情况,发现可疑或异常的行为。协 议分析具有寻找任何偏离标准和期望值的行为的能力,因此是能检测到已知和未 知的攻击方法”1 。对于每个应用,能够根据r f c 。( r e q u e s tf o rc o m m e n t s ) 和工业 标准来验证所有的通信行为,只要发现它不能满足期望就报警。这样就在一定程 度上减少了上面提出的防火墙可能受到各种攻击的危险性,这种校验是从最基本 的原理出发校验通信规则,能有效的发现新的异常的攻击,及时报警或预告,提 高防火墙抵御新攻击的能力,改变安全防护处于被动状态的局面,增强防火墙抗 攻击的能力。 本课题来源于北京工业大学青年教师科技基金项目:具有智能入侵检测功 能的防火墙的设计与实现。 1 2 国内外研究现状 1 2 1 国外研究现状 协议分析广泛应用于各个领域,如:网络安全监视系统刚、网络管理系统恻、 入侵检测系统“。针对网络协议分析的研究与开发,国外发展的相对比较成熟, 如国外研究开发的n e t w o r ka s s o c i a t es n i f f e rp r o 以支持上百种协议而出名“; 早在2 0 0 0 年前后出现的第三代入侵检测系统就突破性的采用了协议分析技术, 极大的减少了计算量也减少了误报率“;协议分析在入侵检测中的应用正在朝着 状态协议分析的方向发展。状态协议分析就是在常规协议分析技术的基础之上, 第1 苹绪论 加入状态特性分析,即不是仅仅检测单一的连接请求或响应,而是将一个会话的 所有流量作为一个整体来考虑。有些网络攻击行为仅靠检测单一的连接请求或响 应是检测不到的,因为攻击行为包含在多个请求中,此时状态协议分析技术就显 得十分必要了0 1 。在这些领域中,协议分析是作为一个子系统出现的,它的发展 已初具规模o “。 协议分析在防火墙技术中的研究和应用,最早可以追溯到包过滤防火墙,但 在包过滤防火墙中只简单的检查数据包头信息,根据数据包头部含有的i p 地址 信息和协议所使用的端口信息,决定数据包发往的目的地址,并没有很完善的协 议检验机制。随着防火墙的不断发展,出现了第二代防火墙应用代理防火墙, 应用代理防火墙是在网络的应用层上建立协议过滤和转发功能,它针对特定的网 络应用服务协议使用制定的数据过滤逻辑,并在过滤的同时,对数据包进行必要 的登记、统计和分析,形成日志报告。应用代理防火墙仅能依靠特定的逻辑来判 断是否允许数据包通过,根据特定的安全规则禁止或允许某些特殊的协议命令, 只能检测到已知的攻击行为。 状态检测防火墙为第三代防火墙,它使用的状态检测技术来源于标准的包过 滤技术,所改进的一点就是,状态检测防火墙中多了一张动态连接表,利用这张 动态连接表就可以检查数据包是否是一个已经建立并且正在使用的通信流的一 部分。连接表的使用大大降低了把数据包伪装成一个正在使用的连接的一部分的 可能性。状态检测防火墙与包过滤防火墙相比的第二个优点就是它能够对特定类 型的数据包的数据进行检测。由于在常用协议中存在着大量众所周知的漏洞,所 以状态检测防火墙的第二个优点就显得很有用了。f t p 协议和s m t p 协议就是两 个很好的例子。f t p 服务器和f t p 客户端有很多的漏洞,其中一部分漏洞来源 于不正确的请求或者不正确的命令。而状态检测防火墙的检测特性使得它能通过 检测数据包的数据来判断命令是否正确。由此我门可以看出,在状态检测防火墙 的设计中,已经考虑到了各种协议的漏洞带来的攻击隐患,并采取了相应的措施, 但是这些措施的实施是从状态检查的角度出发的,没有从协议本身的安全性去考 虑,对于新的异常的攻击缺乏判断能力,并且它仅仅在数据包的数据部分查找特 定的数据串,因此对于网络内部主机来说,也不能提供与代理防火墙相同程度的 保护。 北京工业大学工学硕士学位论文 基于这种情况和协议分析的功能,以及这种技术在其他网络领域中的成功应 用,于是本课题就提出将协议分析技术应用到状态检测防火墙中,作为状态检测 防火墙一个增加的协议分析子系统对进出防火墙的数据包从协议工作标准的角 度对它们进行全面的检验,以提高防火墙抵御新攻击的能力。同时将协议分析技 术作为一个独立的子系统实现,也为本课题的来源具有智能入侵检测功能的防 火墙的研究与实现打下了基础,协议分析是现代入侵检测实现的关键环节,也 为防火墙和入侵检测功能的集成提供了共用接口。 现在国际上还有一种研究思路就是将入侵检测系统( i d s ) 和防火墙集成起 来形成防火墙和状态检测互动的网络安全产品i d p ( i n t r u s i o nd e t e c t i o n p r e v e n t i o n ) ,叫作入侵检测和防御产品,研发这种产品的目的是希望出现一种 新的不但能检测入侵的发生,而且能通过一定的响应方式,实时地中止入侵行为 的发生和发展,实时地保护信息系统不受实质性攻击的一种智能化的安全产品, 它是目前网络安全技术中比较新的产品。i p s ( i n t r u s i o np r e v e n t i o ns y s t e m ) , 入侵防御系统是i d p 的另外一种称呼。目前的i d p 产品可以认为是i d s 系统的替 代品。但是它要和防火墙集成实现互动就存在困难。实现互动的方式有两种,一 种是接口互动,就目前的技术水平来说,这种方式有望实现,据了解,n e t s c r e e n 公司正在计划推出能与防火墙互动的i d p 产品。另一种方式就是紧密集成实现 互动,这种方式存在一定的困难,由于i d p 产品和防火墙本身都是很庞大的系统, 所以实施的难度比较大,集成后的性能也会受很大的影响。 1 2 2 国内研究现状 国内在防火墙技术上的研究没有国外的成熟,开发一个像c h e c k p o i n t 公司 那样的状态检测防火墙,目前国内具有如此实力的厂商还不多,通过考察在国内 防火墙市场排名在前几位的产品,发现其中的大多数没有实现状态检测“。国内 也有一些软件防火墙,但大多是“个人”防火墙,而且功能也相对有限。在国内 目前已通过公安部检验的防火墙中,硬件防火墙占绝大多数。硬件防火墙是一种 从硬件到软件都单独设计,典型如n e t s c r e e n 防火墙。它不但单独设计软件部分, 硬件部分也采用专门的a s i c 集成电路。另外一种就是基于p c 架构的使用经过定 制的通用操作系统( 如l i n u x ) 的所谓硬件防火墙。目前国内绝大多数防火墙都 第1 章绪论 属于这种类型。硬件防火墙需要在硬件和软件两方面同时下功夫,国外厂家的通 常做法是软件运算硬件化,其所设计或选用的运行平台本身的性能可能并不高, 但它将主要的运算程序( 查表运算是防火墙的主要工作) 做成芯片,以减少主机 c p u 的压力。国内厂家的防火墙硬件平台基本上采用通用p c 系统或工业p c 架构, 在提高硬件性能方面所能做的工作限于提升系统c p u 的处理能力,增大内存容量 而已。现在国内防火墙的一个典型结构就是:工业主板+ x 8 6 + 1 2 8 ( 2 5 6 ) m 内 存+ d o c d o m + 硬盘( 或不要硬盘而另增加一个日志服务器) + 百兆网卡。在软件性 能方面,国外( 一些著名) 厂家均是采用专用的操作系统,自行设计防火墙。而 国内大多厂家操作系统都是基于通用的l i n u x 。各厂家的区别多在于对l i n u x 系 统本身和防火墙部分( 2 2 内核为i p c h a i n s ,2 4 以后内核为n e t f i l t e r ) 所作 的改动量有多大。国内大部分已经升级到2 4 内核所支持的n e t f i l t e r 。 n e t f i i t e r 已经是一个功能比较完善的防火墙框架,它支持状态检测( 通过 c o n n e c t i o n _ t r a c k 模块实现) 。而且n e t f i l t e r 是一个合理的框架,可以在适当 的位置上登记一些需要的处理函数,正式代码中已经登记了许多处理函数,如在 n f - i p f o r w a r d 点上登记了转发的包过滤功能( 包过滤等功能便是由这些正式登 记的函数实现的) 。我们也可以登记自己的处理函数,在功能上作扩展( 如加入 简单的i d s 功能等等) 。国内厂家大多也是在这方面作研究,至于n e t f i l t e r 源 码的修改,对国内厂家来说有一定的难度。 由此可见国内在防火墙技术方面的研究还不是很成熟,状态检测技术还处于 初级阶段,协议分析也仅限于入侵检测和网络管理系统中,将协议分析子系统添 加到防火墙中的研究就更少了,提出本研究课题,希望能在防火墙技术的研究方 面做出进一步的努力。 1 3 主要研究内容及研究方案 本课题的主要研究内容是:根据当前协议分析技术在其他安全领域中的成功 使用以及其在状态检测防火墙中的应用状况,将协议分析作为一个独立的子系统 在状态检测防火墙中加以实现。我们的总体解决办法就是在状态检测防火墙技术 基础之上添加我们自己设计的协议分析子系统,与状态检测共同工作,从而实现 在现有防火墙过滤措施的基础之上,将协议分析作为第二层安全校验,智能地、 北京工业太学工学硕士学位论文 全面地检查网络通信,从各种不同的协议是如何工作的角度,全面分析这些协议 的通信情况,发现可疑或异常的行为,在一定程度上减少防火墙可能受到各种攻 击的危险性,提高防火墙抵御新攻击的能力,改变安全防护处于被动状态的局面, 增强防火墙抗攻击的能力。 具体工作如下: 选取了本课题研究的操作平台,分析了该操作平台的特点和网络体系结构, 在此基础上比较了实现本课题研究的基础环节网络数据包的截获方法,选取 了在内核态下的n d i s _ h o o k 方法,在内核态进行截获必须通过驱动程序来完成, 本论文给出了驱动开发的难点和重点步骤,列出了实现n d i s _ h o o k 的关键函数和 数据结构。 对协议分析技术的特点和原理进行分析,并将其和当前最广泛应用的校园局 域网协议t c p i p 相结合,将t c p i p 协议分析技术作为一个独立的子系统在状态 检测防火墙中加以实现。设计了协议分析子系统,列出了协议分析子系统实现的 关键步骤和环节。针对常见的协议攻击,采取了有效的措施,包括:i p 分片重 组,可以抵制常见的i p 分片攻击;协议校验和,对数据包进行彻底的协议校验; 不仅对传输层协议进行协议分析,还对常用的应用层协议进行处理,从协议分析 的工作机制全面的分析数据包的协议合法性,从而减少状态检测防火墙受到的攻 击的可能性。 分析并讨论了实现状态检测防火墙的关键技术和步骤,对状态检测防火墙的 关键模块连接跟踪器、状态检测表、协议处理器、控管规则进行了详细的设 计,给出了关键数据结构和算法,根据传输层协议的不同特点分别进行处理,根 据t c p 在建立连接和传输的通信过程中的不同状态转换进行跟踪,对t c p 进行 全状态检查,设计并给出了控管规则文件结构。 第2 章相关技术基础 第2 章相关技术基础 目前,校园局域网中最常用的通信协议为传输控制协议网际协议t c p i p ( t r a n s m i s s i o nc o n t r o lp r o t o c 0 1 i n t e r n e tp r o t o c 0 1 ) 1 “。本课题的网络环境 就是以t c p i p 为网络通信协议进行网络通信的。 2 1t c p l p 协议 t c p i p 称为传输控制协议网际协议,最早起源于美国国防部赞助研究的网 络a r p a n e t ( a d v a n c e dr e s e a r c hp r o j e c t sa g e n c yn e t w o r k ) ,a r p a n e t 不断完善 其协议模型,使其成为i n t e r n e t 网络体系结构的核心。迄今为止,t c p i p 协议已 成为建设计算机局域网,广域网,特别是i n t e r n e t 的重要通信协议,是发展最成 功的通信协议。“。t c p i p 实际上是一组协议的代名词,而不是单个协议“”。在 用户的操作系统上安装的t c p i p 协议模块是一系列相互联系的协议,叫做t c p i p 核心协议。t c p i p 所有其它的应用程序和t c p i p 协议套件中的其它协议都依赖于 其核心协议提供的基本服务“。t c p i p 协议体系结构,如图2 1 所示“。 t c p i p 层次 应用层 主机到 主机层 网际层 网络接 口层 困圆圈田 图2 - 1t c p i p 协议体系结构 f i g u r e2 - 1t h es t r u c t u r eo ft h et c p i ps y s t e m 北京工业大学工学硕士学位论文 各层协议的功能和作用: ( 1 ) f t p ( f i l et r a n s f e rp r o t o c 0 1 ) 文件传输协议。允许在两台主机之间 进行文件传输,允许对另外的一台主机的文件进行读写操作。 ( 2 ) s m t p ( s i m p l em a i lt r a n s f e rp r o t o c 0 1 ) 简单邮件传输协议。邮件服 务器之间进行通信,用来发送电子邮件。 ( 3 ) p o p 3 ( p o s to f f i c ep r o t o c o l3 ) 邮局协议。邮件客户端和邮件服务 器之间通信使用的协议,用来接收电子邮件。 ( 4 ) t e l n e t ( t e l n e tt e r m i n a lp r o t o c 0 1 ) 远程终端协议。该协议允许用 户通过i n t e r n e t 登录到远程计算机中,像操作自己的计算机一样操作远程主机。 ( 5 ) h t t p ( h y p e r t e x tt r a n s f e rp r o t o c 0 1 ) 超文本传输协议。是w w w 服务 程序协议,是目前i n t e r n e t 中使用最广泛的协议。通常的上网浏览就指这个。 ( 6 ) t c p ( t r a n s m i s s i o nc o n t r o lp r o t o c 0 1 ) 传输控制协议。该协议使用 i p 作为网络层协议,面向连接,提供可靠的数据传输,对数据传输进行正确性 检查。发送出去的数据需要得到对方的正确性确认,如果返回不成功,则重发。 ( 7 ) u d p ( u s e rd a t a g r a mp r o t o c 0 1 ) 用户数据报协议。该协议也是使用 i p 作为网络层协议,面向无连接,不对传输的数据进行正确性检查。将数据发 送出去后,不去关心对方是否正确接收到。 ( 8 ) i p ( i n t e r n e tp r o t o c 0 1 ) i n t e r n e t 协议。这是i n t e r n e t 通信最主 要的网络协议,是t c p i p 的基础,负责在t c p i p 主机之间提供数据服务,进行 数据封装、产生协议头,提供主机间可靠的地址路由,但是对网络上数据包的传 送是无连接的,不保证数据可以安全地到达目的地。 ( 9 ) a r p ( a d d r e s sr e s o l u t i o np r o t o c 0 1 ) 地址解析协议。将i n t e r n e t 地址 ( i p 地址) 映射到物理地址( m a c 地址) 。 ( 1 0 ) r a r p ( r e v e r s ea d d r e s sr e s o l u t i o np r o t o c 0 1 ) 反向地址解析协议。 将物理地址映射到i p 地址。它负责根据n i c 硬件地址去查询对应的i p 地址。 ( 1 1 ) i c m p ( i n t e r n e tc o n t r o lm e s s a g ep r o t o c 0 1 ) i n t e r n e t 消息控制协 议) 。该协议是i p 协议的附属协议,主要用于路由器或者主机向其他主机发送出 错报文和控制信息,进行差错控制和其他有关i p 数据包的处理结果信息“7 “”“。 第2 章相关技术基础 2 2t c p i p 协议分析技术 2 2 1 概述 计算机网络之间实现通信必须有个共同的协议( 如t c p i p ) 才可以。网络 协议要规定所交换数据的格式,还要对通信过程的时间次序做周到的定义说明。 这就决定了协议需要为传输的信息定义严格的格式( 语法) 和传输顺序( 时序) , 以及传输信息的词汇表及其意义( 语义) ,它们共同构成了网络协议的三要素。 语义,通信双方所要表达的内容,包括用于协调与差错控制信息,即通信双方准 备“讲什么”;语法,互通的信息结构,包括数据及控制信息的格式、编码及信 号电平等,即通信双方准备“怎么讲”:时序,通信元素的应答顺序,包括数据 应传送或被接收的时间、速度匹配和信息排序,即通信双方彼此的“关系”。“。 协议分析技术就是根据协议的这些特点实现的。所谓“协议分析技术”,是 用来检测攻击特征存在的技术,其特点是充分利用网络协议的高度有序性,即网 络协议并非随机变化的字节流,而是高度有序的系统,协议数据包中的结构应该 是完全可知的,且与一系列协议规则紧密联系。协议分析技术充分利用这些知识 来快速检测某个攻击特征的存在,从而大大降低了特征搜索所需要的计算量。协 议分析技术主要应用于入侵检测系统,是新一代探测攻击手法的主要技术。 早期协议分析技术,继特征分析技术之后发展起来。它将输入的数据包视为 具有严格定义格式的数据流,并将输入数据包按照各层协议报文封装的反向顺 序,层层解析出来,然后根据各层网络协议定义即r f c 内容,对各层协议的解析 结果进行逐次分析。其中,各层协议封装报文中都包含了预先定义的若干协议字 段。协议分析技术的重点操作内容,就集中在检查当前数据包中各层协议字段值 是否符合网络协议定义的期望值或处于合理范围之内,如果当前作检查的某个协 议字段里包含了非期望的不合理的赋值,则系统认为当前的数据包为非法网络流 量。由此协议分析技术是利用预先定义好的关于协议字段的期望值和合理值的详 细知识来判断是否出现恶意的网络数据流,此点与特征分析技术依赖于已知攻击 特征或称入侵痕迹来检测非法活动是很不相同的。“。 协议分析技术也在不断发展,除了对第三层和第四层协议解码分析外,许多 现代的基于协议分析的系统通常还含有对第七层应用协议进行深层分析,对于常 北京工业大学工学硕士学位论文 用的f t p 、t e l n e t 、s m t p 、h t t p 等协议实现对应的协议分析模块。跟踪高层协议 交互过程中的每个关键状态转换,并在各个状态阶段里预测可能的响应结果,如 发现非法的响应值或异常大小的数据包以及异常的协议选项值等,都可以视为出 现了异常的网络活动。 协议分析的优势包括: ( 1 ) 解析命令字符串。黑客可以利用十六进制代码表示他需要的u r l 恶意 路径,从而绕开安全设备进行攻击。协议分析技术可以解决这一问题,先按照不 同上层协议,将数据包中的命令字符串解析,然后再进行模式匹配。 ( 2 ) 探测碎片攻击和协议确认。黑客可以利用碎片重组算法进行攻击。使 用协议分析技术,各种协议都被解析,如果出现i p 碎片设置,数据包将首先被 重装,然后详细分析潜在的攻击行为。由于协议被完整解析,还可用来确认协议 的完整性。通过重装数据包,系统可以检测到利用逃避技术进行攻击的手段。 ( 3 ) 提高检索效率。当系统提升协议栈来解析每一层时,它用已获得的知 识来消除在数据包结构中不可能出现的攻击。比如四层协议是t c p ,那就不甩再 搜索其它第四层协议如u d p 上形成的攻击。如果数据包最高层是s n m p ,那就不 用再寻找t e l n e t 或h t t p 攻击。这样做的结果是性能得到明显改善。 ( 4 ) 降低误报率。使用协议分析和命令解析不会发生误报,因为它们知道 和每个协议有关的潜在攻击的确切位置。使用命令解析器可以确保一个特征串的 实际意义被真正理解,辨认出串是不是攻击或可疑的。”“。 2 2 2 协议分析技术原理 协议分析技术包含协议解码、命令解析和协议校验等技术。简单来说就是让 安全设备能够读懂协议,知道在数据包的什么位置能够得到什么内容,并且判断 出这些内容的真实含义,以下例子说明了协议分析技术是如何进行协议分析的。 根据以太网帧结构的定义,在i p v 4 下的以太帧的第1 3 b ( 1 b = 8 b i t 称为1 字节) 包含了2 b 的网络层协议标识,0 8 0 0 为i p 协议,0 8 0 6 为a r p 协议等,在 i p 数据包的格式定义,第1 0 b 为第四层协议标识,如:t c p 为0 6 ,u d p 为1 l , i c m p 为0 1 等。而t c p 数据包的第3 b 、4 b 为应用层协议标识( 端口号) 。如8 0 为h t t p 协议,2 1 为f t p 协议,2 3 为t e l n e t 协议等。 协议解码就利用这一信息指使第一步的检测工作,即忽略前1 2 b ,直接跳到 1 3 b 位置,并读取2 b 的协议标识。 第一步,直接跳到第1 3 b ,并读取2 b 的协议标识( 0 8 0 0 ) 。 l d a d 0 2 0 丰8 9 s 8 j o o b 9 v 5 y t $ 0 6 1 1 t b h k 7 6 5 0 0 8 0 1 2 9 3 u g d b 2 0 0 3 9 7 e 3 9 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 如果读到的值是0 8 0 0 ,则说明该以太网帧携带的是i p 包,协议解码利用这 一信息指示第二步的检测工作,利用i p 协议规则,即i p 包在第2 4 b 处开始,包 含了1 b 的传输层协议标识。因此协议解码将忽略掉从第1 5 到第2 3 b ,直接跳到 2 4 b 处读取1 b 的传输层协议标识。 第二步,跳到第2 4 b 处读取1 b 的第四层协议标识( 0 6 ) 。 :上 d a d 0 2 0 8 9 s 8 2 0 8 0 0 8 9 v 5 y t $ b 6 l i t b h k 7 6 5 0 0 8 0 1 2 9 3 u g d b 2 0 0 3 9 7 e 3 9 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 如果读到的值为0 6 ,则说明这个i p 帧携带的是t c p 包,协议解码利用这一 信息指示第三步的检测工作,利用t c p 协议规则,即t c p 包在第3 5 b 处开始,包 含了一对2 b 的应用层协议标识,这对2 b 的应用层标识一般被当成“端口号”。 因此,协议解码将忽略到第2 5 到3 4 b ,直接跳到第3 5 b 处,读取2 个端口号。 第三步,跳到第3 5 b 处读取一对端口号。 土 d a d 0 2 0 水8 9 s 8 2 0 8 0 0 8 9 v 5 y t $ 0 6 11 t b h k 7 6 5 0 0 8 0 1 2 9 3 u g d b 2 0 0 3 9 7 e 3 9 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 如果有一个端口号是0 8 0 0 ,则指示该t c p 帧携带的是h t t p 数据包,协议解 码利用这一信息指示第四步的检测工作。 第四步,解析器从第5 5 b 处开始读取u r l 字符串。 l 亩a d 0 2 0 8 9 s 8 2 0 8 0 0 8 9 v 5 y t $ 0 6 1 1 t b h k 7 6 5 0 0 8 0 1 2 9 3 u g d b 2 0 0 3 9 7 e 3 9 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 到此为止,基于协议解码已经找到了应用层数据的位置,并且已知应用协议 北京工业大学工学硕士学位论文 是h t t p ,并从t c p 包第5 5 b 处开始,是u r l 信息。该u r l 字符串将被提交给h t t p 解析器,并作进一步的处理工作。简而言之,协议解码就是把各个协议分析出来 存入相应的变量中,以备进一步的处理使用。 上述协议解码之后得到的u r l 字符串的第一个字节位置会被进一步提交给 解析器。解析器就是一个命令解析程序,能够对不同的高层协议,包括t e l n e t 、 f t p 、h t t p 、s m t p 、d n s 等等的用户命令,进行详细的分析。命令解析器具备读 取攻击命令字符串及其所有可能的变形,并发掘其本质含义的能力。在入侵检测 系统中,命令解析器将解析后的命令字符串,送入攻击特征搜索处理模块中,发 现攻击行为,处理完毕后,就丢弃该字符串,不会受到恶意命令的攻击。 协议分析能将数据包彻底解码,如果设置了i p 分片标志,数据包会首先进 行重组,然后再分析是否发生攻击行为,通过数据包重组,系统可以检测到诸如 数据分片,t c p 或r p c 段边界欺骗等规避技术的攻击。同时,系统在进行协议解 码时,将进行彻底的协议校验,检查所有层次的协议字段域,检查存在的非法或 可疑值,包括是否使用了保留的域,是否有异常的默认值,不当的选项、流水号、 跳号、流水重叠号,校验错误等。”。 本研究使用协议分析技术对从网卡上拦截的以太网数据包进行t c p i p 协议 分析。主要是协议解码数据包的协议类型、数据包的相关协议信息,如端口地址、 端口号等;配合状态检测防火墙的规则库进行过滤,与入侵检测系统中将分析的 结果送攻击特征规则库中进行比较发现恶意攻击不同:对i p 分片进行重组;在 进行协议解码时进行彻底的协议校验,检查所有层次的协议字段域;提高检测效 率,使用检测到的已知协议信息,来排除所有不属于这一协议层次的不规则的操 作。具体的实现细节见第5 章协议分析子系统。 2 3 状态检测防火墙核心技术 2 3 1 状态检测防火墙 状态检测防火墙( s t a t e f u li n s p e c t i o nf i r e w a l l ) 也叫自适应防火墙或动 态包过滤防火墙( d y n a m i cp a c k e tf i l t e rf i r e w a l l ) ,是最新一代的防火墙, 称为第三代防火墙。1 9 9 2 年洛杉矾南加州大学信息科学院的b o b b r a d e n 提出了 第2 覃相关技术基础 动态包过滤防火墙,在此基础上1 9 9 4 年c h e c kp o i n t 公司提出了状态检测防火 墙。每个网络连接通常包括以下信息:源i p 地址、目的i p 地址、源端口号和 目的端口号、协议类型、连接状态( 适用于t c p ) 、协议相关信息( 如t c p u d p 端 口号) 和超时时间等。防火墙把这些信息叫做状态,状态检测防火墙就是能够检 测每个连接状态的防火墙,它采用状态包检测s p i ( s t a t e f u lp a c k e ti n s p e c t i o n ) 技术,维护一个跟踪连接状态的表,比简单包过滤防火墙具有更大的安全性田1 。 状态检测防火墙的理论基础是使用客户机, h f i 务器模式进行连接,具有连接 状态,最典型的是t c p 连接,t c p 连接由11 个状态组成,其状态转换如图2 2 1 : 评始 主动盏雕 说列群户舯戳常啦惑崔迂 说鞘暇舟滞的难常壮惑越迁 应用进程;尊丑琦当艘用执行冉狮捅作时站生的状出生赶 啦,谭明当收到t c p 睦立段时陡惑的理迂 发:说靼为r 避糟黛个状泰搬琏整发遘的t c p 报立殷 图2 - 2t c p 状态转换图 f i g u r e2 - 2 t h es w i t c h i n go ft h et c ps t a t e 从以上的t c p 连接建立和断开的过程中可以看出:第一,t c p 连接是有状态 的,连接进入不同的阶段有不同的状态;第二,t c p 连接状态的转换是有一定顺 序的,不是任意改变的;第三,t c p 连接过程中客户端和服务器可能的状态是有 北京工业太学工学硕士学位论文 区别的,如客户端不可能进入l i s t e n 状态,服务端也不可能进入s y n s e n d 状态, 第四,对于t c p 包中的标志,有些标志是不能同时存在的,如s y n 标志不可能和 f i n 、r s t 、p s h 标志同时存在,如同时存在必是非正常伪造包。根据以上原则防 火墙就可以判断出连接双

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论