(计算机应用技术专业论文)windows下防火墙封包截获技术研究.pdf_第1页
(计算机应用技术专业论文)windows下防火墙封包截获技术研究.pdf_第2页
(计算机应用技术专业论文)windows下防火墙封包截获技术研究.pdf_第3页
(计算机应用技术专业论文)windows下防火墙封包截获技术研究.pdf_第4页
(计算机应用技术专业论文)windows下防火墙封包截获技术研究.pdf_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

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

文档简介

摘要 防火墙作为一种有效的安全防护措施被广泛应用于各种类型的网络当中。目前市 场上大多数的防火墙产品虽然功强大,但有一个致命缺点:防外不防内。大多数个人上 网之时,并没有真正处于得到防护的安全网络中。个人上网用户多使用w i n d o w s 操作 系统,而w i n d o w s 操作系统,本身的安全性就不高。各种w i n d o w s 漏洞不断被公布, 对主机的攻击也越来越多。因此,为了保护主机的安全通信,研制有效的防火墙封包 截获技术很有必要。论文介绍了防火墙的理论知识,着重分析w i n d o w s 封包截获技术 和q s 包过滤算法,针对q s 算法的缺点,提出一种基于m q s 算法的双层过滤方法。 然后进行系统的详细设计,并实现该防火墙系统。根据系统的测试,进行性能评价, 通过测试可知,本文所提出的基于m q s 算法的双层过滤方法是正确,可行的。 关键词:m q s 算法底层驱动数据包截获 网络监控 a b s t r a c t f i r e w a l l i sak i n do fe f f e c t i v ed e f e n c e m e a s u r ef o rn e t w o r ks e c u r i t ya n dh a sb e e nu s e d i na n y t y p e so fn e t w o r k s o nt h em a r k e tt h o u g hm o s tp r o d u c t s f u n c t i o n so ff i r e w a l la r e q u i t es t r o n ga tp r e s e n t ,t h e ya r eb a s e do nb e l o wh y p o t h e s e s ,w h i c ht h ei n n e rn e t w o r ki ss a f e a n dr e l i a b l e ,a n da l lt h et h r e a t sa r ef r o mt h eo u t e rn e t w o r k m o s th o s t sh a v en o tp l a c e d t h e m s e l v e su n d e rt h ep r o t e c t i o no fi n n e rs e c u r i t yn e t w o r kd u r i n gu s e r sa r ei nn e t w o r k t h e p e r s o n a li n t e m e tu s e rm o s t l yu s e sw i n d o w so s ,a n dt h es y s t e ms e c u r i t y ,i t s e l fi sn o t h i g h a n dv a r i o u sk i n d so fw i n d o w sl o o p h o l ea r eb e i n ga n n o u n c e dc o n s t a n t l y ,a t t a c ko ft h e h o s tc o m p u t e ri sm o r ea n dm o r e ,t o o t h e nt op r o t e c tt h es e c u r ec o m m u n i c a t i o no ft h eh o s t c o m p u t e r s ,i ti sv e r yn e c e s s a r yt od e v e l o pae f f e c t i v et e c h n o l o g yo ft h ei n t e r c e p t e dp a c k e to f f i r e w a l l t h i st h e s i si n t r o d u c e st h et h e o r yo ff i r e w a l l sk n o w l e d g ea n df o c u s e so na n a l y s e i n g t e c h n o l o g yo ft h ei n t e r c e p t e dp a c k e to fw i n d o w sa n dt h ep a c k e tf i l t e r i n ga l g o r i t h m so fq s , f o rt h es h o r t c o m i n g so fq s sa l g o r i t h m ,w eb r i n gf o r w a r da na l g o r i t h mb a s e do n d o u b l e - d e c k e rf i l t e r i n gm q sm e t h o d s t h e np r o c e e dt ot h ed e t a i l e dd e s i g na n dr e a l i z a t i o no f t h ef i r e w a l l s y s t e m a c c o r d i n g t ot h e s y s t e mt e s t i n g ,w ec a ng e t h e p e r f o r m a n c e e v a l u a t i o n a f t e rt h et e s t ,i ti sc o r r e c ta n df e a s i b l et h a tw eh a v er a i s e da na l g o r i t h mb a s e do n d o u b l e d e c k e rf i l t e r i n gm q s k e yw o r d s :m q sa l g o r i t h mu n d e r l y i n gd r i v e rd a t a p a c k e ti n t e r c e p t i o n n e t w o r km o n i t o r i n g 长春理工大学硕士学位论文原创性声明 本人郑重声明:所呈交的硕士学位论文, w i n d o w s 下防火墙封包截获 技术研究是本人在指导教师的指导下,独立进行研究工作所取得的成果。 除文中已经注明引用的内容外,本论文不包含任何其他个人或集体已经发 表或撰写过的作品成果。对本文的研究做出重要贡献的个人和集体,均已 在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。 y 沩i ,1 作者签名:笾邋型箨三月丛日 长春理工大学学位论文版权使用授权书 本学位论文作者及指导教师完全了解“长春理工大学硕士、博士学位 论文版权使用规定”,同意长春理工大学保留并向国家有关部门或机构送 交学位论文的复印件和电子版,允许论文被查阅和借阅。本人授权长春理 工大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,也 可采用影印、缩印或扫描等复制手段保存和汇编学位论文。 作者签名: 指导导师签 年立月丛日 年上月4 日 1 1 研究的目的和意义 第一章绪论弟一早殖了匕 为了解决互联网时代个人网络安全的问题,近年来新兴了个人防火墙技术【l 】。个人 防火墙具有很强的实用性和针对性,它为个人上网用户提供了完整的网络安全解决方 案,可以有效地控制个人电脑用户信息在互联网上的收发。用户可以根据自己的需要, 通过设定一些参数,从而达到控制本机与互联网之间的信息交流阻止恶性信息对本机 的攻击,比如i c m pf l o o d 攻击、聊天室炸弹、木马信息破译并修改邮件密码等等。而 且个人防火墙能够实时记录其它系统试图对本机系统的访问,使计算机在连接到互联 网的时候避免受到网络攻击和资料泄漏的安全威胁。个人防火墙可以保护人们在网上 浏览时免受黑客的攻击,实时防范网络黑客的侵袭,还可以根据自己的需要创建防火 墙规则,控制互联网到p c 以及p c 到互联网的所有连接,并屏蔽入侵企图。个人防火 墙可以有效地阻截各种恶意攻击、保护信息的安全;信息泄漏拦截保证安全地浏览网 页、遏制邮件病毒的蔓延;邮件内容检测可以实时监视邮件系统,阻挡一切针对硬盘 的恶意活动。 个人防火墙就是在单机w i n d o w s 系统上,采取一些安全防护措施,使得本机的信 息得到一定的保护。个人防火墙是面向单机操作系统的一种小型安全防护软件,按照 一定的规则对t c p ,u d p ,i c m p 和i g m p 等报文进行过滤,对网络的信息流和系统的 进程进行监控,防止一些恶意的攻击。目前市场上大多数的防火墙产品仅仅是网关型 的,虽然它们的功能相当强大,但由于它们基于下述的假设:内部网是安全可靠的, 所有的威胁都来自网外。因此,他们防外不防内,难以实现对企业内部局域网内主机 之间的安全通信,也不能很好的解决每一个拨号上网用户所在主机的安全问题,而大 多数个人上网之时,并没有置身于得到防护的安全网络内部。 个人上网用户多使用w i n d o w s 操作系统,而w i n d o w s 操作系统,特别是w i l l ) ( p 系统,本身的安全性就不高。各种w i n d o w s 漏洞不断被公布,对主机的攻击也越来越 多。一般都是利用操作系统设计的安全漏洞和通信协议的安全漏洞来实现攻击。如假 冒i p 包对通信双方进行欺骗;对主机大量发送i p 数据包【2 j 进行轰炸攻击,使之际崩溃; 以及蓝屏攻击等。因此,为了保护主机的安全通信,研制有效的个人防火墙技术很有 必要。 1 2 国内外研究现状 目前,软件防火墙从使用范围可分为网络防火墙和个人防火墙两种。网络防火墙 技术f 3 1 是一种用来加强网络之间访问控制,防止外部网络用户以非法手段通过外部网络 进入内部网络,访问内部网络资源,保护内部网络操作环境的特殊网络互联设备。它 对两个或多个网络之间传输的数据包( 如链接方式) 按照一定的安全策略来实施检查, 以决定网络之间的通信是否被允许,并监视网络运行状态。以前,个人用户的计算机 系统只要安装了具有实时监控功能的防病毒软件似乎就能高枕无忧了。但随着网络技 术的发展,个人用户开始越来越多地访问i n t e m e t 除了浏览网站、查询信息之外,还常 常在网上采购、用信用卡进行网上支付、买卖股票或者通过在线银行进行转账等操作。 在这种情况下,用户还面临着新的威胁:黑客攻击。 由上述对防火墙技术的分析可知,个人防火墙应该采用一种基于内核模式和用户 模式的双重过滤【4 】设计方案。其理由如下:在内核模式下利用n d i s 中间驱动技术实现 对通过传输层的原始数据封包进行截获,并且通过访问控管规则完成对数据封包的过 滤。在应用模式下采用w i n s o c k 2s p i 技术开发d l l 程序实现对基于s o c k e t 网络连接 通信的服务截获和过滤,从而克服了单方面从用户模式或核心模式截获数据包的缺点, 极大提高了防火墙系统的截包及数据过滤能力。个人防火墙系统是一个非常好的 i n t e m e t 安全工具,它可以提供网络版防火墙所不能提供的很多特性如下: ( 1 ) 监测您的个人电脑上所有的i n t e m e t 存取,当然可以控制到每一个程序对 s n t e m e t 的存取,并且不会干扰其它运行中的程序; ( 2 ) 方便灵活的规则设置功能,可使您任意设置可信的网络连接,同时把不可信的 网络连接拒之门外,保证计算机和私人资料处于安全的状态; ( 3 ) 提供网络实时过滤监控功能,防御各种b o 、冰河等木马攻击、i c m p 洪水攻 击、i c m p 碎片攻击及w i n n u k e , i p h a c k e :之类的o o b 攻击,在受到攻击时,系统 会自动切断攻击连接,发出报警声音并且闪烁图标提示; ( 4 ) 详细的日志功能实时记录网络恶意攻击行为和一些网络通讯状况,若受到攻击 时,可通过查看日志使攻击者原形毕露; ( 5 ) 提供各种安全级别服务:防火墙系统可以阻止外部对本机的非法访问,它犹如 一扇门,仅仅允许你授权的访问通过; ( 6 ) 提供应用程序控制功能,即制定哪些应用软件可以存取,应用程序控制功能允 许你决定哪个软件可以或者不能使用i n t e m e t ,可以确保欺骗程序( 或者说是盗贼程序) 不能发送您的敏感信息给犯罪者; ( 7 ) 提供i n t e m e t 锁( 即完全禁止存取) 服务,i n t e r n e t 锁在您不使用i n t e m e t 的时 候完全阻断i n t e r n e t 的访问( 或者是来犯) ,在您的个人电脑屏幕保护程序启动或者您 设置的机器闲置某段时间后,该模式将自动开启。 1 3 本文的研究内容 在对包过滤的技术上改进了包过滤的算法q s 为m q s ,提高了包过滤的效率。包 过滤模块在内核模式下利用n d i s 中间驱动接口技术实现对通过传输层的原始数据封 2 包进行截获,通过m q s 完成对数据封包的过滤。在应用模式下采用w i n s o c k2s p i 技 术开发d l l 程序实现对基于s o c k e t 网络连接通信的服务截获和过滤,从而克服了单方 面从用户模式或核心模式截获数据包的缺点,极大提高了防火墙系统的截包及数据过 滤能力。 1 过滤器 过滤器是整个系统的核心,负责对过往数据包进行过滤检查及流量统计;封包截 获模块负责对数据包进行截获和处理;用户界面负责管理和控制过滤器,对过滤器进 行信息设置和信息采集研究工作主要包括:访问控制:通过包过滤防火墙的过滤规则 集由若干条规则组成,它应涵盖所有防火墙对数据包的处理方法。对于没有明确定义 的数据包,应该有一个缺省处理方法;过滤规则应易于理解,易于编辑修改;同时应 具备一致性检测机制,防止冲突。i p 包过滤的依据主要是根据i p 包头部信息,如源地 址和目的地址进行过滤,如果i p 头中的协议字段表明封装协议为i c m p ,t c p 或u d p , 那么再根据i c m p 头信息( 类型和代码值) 、t c p 头信息( 源端口和目的端口) 或l d p 头信息( 源端口和目的端口) 执行过滤,其他的还有m a c 地址过滤;应用层协议过滤 要求主要包括f t p 过滤、基于r p c 的应用服务过滤、基于u d p 的应用服务过滤要求 以及动态包过滤技术等。 2 封包截获模块 应用程序访问过滤驱动模块采用n d i s 中间驱动技术。应用程序访问网络时,n d i s 中间驱动程序将访问网络的应用程序进程截获,然后根据规则对应用程序进程的访问 权限做出控制。应用程序访问网络的控制动作有以下3 种方式: 放行:允许应用程序访问网络; 询问:由用户对截获的应用程序给予访问网络权限设置; 拒绝:不允许应用程序访问网络。 3 系统用户界面三部分 系统界面模块是整个工程的用户界面部分,是用p b 做成界面,还实现了与d l l 程序对接、对封包截获模块的安装及驱动程序的加载,对控管规则文件和日志文件的 各种操作等。此外它还有以下功能: ( 1 ) 对被拦截的封包,能够根据系统参数配置进行报警提示; ( 2 ) 在日志记录部分能够将封包信息保存到f 1 志文件并能对日志提供查询操作; ( 3 ) 能手工添加、修改及删除控管规则; ( 4 ) 能够对控管规则字段属性进行设置。 1 4 本文组织安排 在论文中接下来的几章里,将会有下列安排: 第二章,介绍防火墙的相关技术,如防火墙的原理、功能、包过滤技术等; 第三章,分析研究w i n d o w s 封包截获技术和q s 包滤波算法,针对单方面过滤方法 和q s 算法的不足,提出一种基于m q s 算法的双层过滤方法。 第四章,进行系统的设计与实现,介绍系统的总体结构、控管规则和封包过滤模 块的设计和实现; 第五章,进行系统测试以及性能评价,主要是对系统模块以及防攻击性能进行评 测; 第六章,总结,对本文所做研究工作的总结。 4 第二章基础理论 弟一早墨田函埋t 匕 随着i n t e m e t 的迅速发展,网络应用涉及到越来越多的领域,网络中各类重要的、 敏感的数据逐渐增多;同时由于黑客入侵以及网络病毒的问题,使得网络安全问题越 来越突出。因此,保护网络资源不被非授权访问,阻止病毒的传播感染显得尤为重要。 就目前而言,对于局部网络的保护,防火墙仍然不失为一种有效的手段,防火墙技术 主要分为包过滤【5 】和应用代理两类。其中包过滤作为最早发展起来的一种技术,其应用 非常广泛。 由于网络带宽不断增加,数据流量泛滥,包过滤的效率已无法满足网络数据传输 的需求,成为了整个网络中数据出入的瓶颈。据调查显示,大约有3 0 的网络问题是 由于安全系统中数据包过滤效率低下造成的。包过滤技术的核心算法是字符串匹配算 法【6 】,字符串匹配的效率直接影响数据包过滤的能力。因此研究一种包过滤算法,并将 其改进,引用在本文研究的个人防火墙中是重点。 2 1 防火墙的概念 防火墙【_ 7 】是设置在被保护网络和外部网络之间的一道屏障,以防止发生不可预测 的、潜在破坏性的侵入。防火墙是指设置在不同网络( 如可信任的企业内部网和不可 信的公共网) 或网络安全域之间的一系列部件的组合。它是不同网络或网络安全域之 间信息的唯一出入口,能根据企业的安全政策控制( 允许、拒绝、监测) 出入网络的 信息流,且本身具有较强的抗攻击能力。它是提供信息安全服务,实现网络和信息安 全的基础设施。防火墙提供信息安全服务,是实现网络和信息安全的基础设施。在逻 辑上,防火墙是一个分离器,一个限制器,也是一个分析器,它有效地监控了内部网 络和互联网之间的任何活动,保证了内部网络的安全。 2 1 1 传统防火墙简介 目前的防火墙技术无论从技术上还是从产品发展历程上,都经历了五个发展历程。 但传统的防火墙并没有解决目前网络中主要的安全问题。目前网络安全的三大主要问 题是:以拒绝访问( d d o s ) 为主要代表的网络攻击,以蠕虫( w o r m ) 为主要代表的 病毒传播和以垃圾电子邮件( s p a m ) 为代表的内容控制。这三大安全问题占据网络安 全问题九成以上。而这三大问题,传统防火墙都无能为力。主要有以下三个原因: 一是传统防火墙的计算能力的限制。传统的防火墙是以高强度的检查为代价,检 查的强度越高,计算的代价越大。二是传统防火墙的访问控制机制是一个简单的过滤 机制。它是一个简单的条件过滤器,不具有智能功能,无法检测复杂的攻击。三是传 5 统的防火墙无法区分识别善意和恶意的行为。该特征决定了传统的防火墙无法解决恶 意的攻击行为。 现在防火墙正在向分布、智能的方向发展,其中智能防火墙可以很好的解决上面 的问题。 2 1 2 智能防火墙简介 智能防火墙i s 是相对传统的防火墙而言的,从技术特征上智能防火墙是利用统计、 记忆、概率和决策的智能方法来对数据进行识别,并达到访问控制的目的。新的数学 方法,消除了匹配检查所需要的海量计算,高效发现网络行为的特征值,直接进行访 问控制。由于这些方法多是人工智能学科采用的方法,因此,又称为智能防火墙。 智能防火墙能智能识别恶意数据流量,并有效地阻断恶意数据攻击。智能防火墙 可以有效地解决s y nf l o o d i n g ,l a n d a t t a c k ,u d pf l o o d i n g ,t e a rd r o p ,p i n gf l o o d i n g , s m u r f , p i n go f d e a t h 等攻击。智能防火墙提供基于m a c 的访问控制机制,可以防止 m a c 欺骗和i p 欺骗,支持m a c 过滤,支持i p 过滤。将防火墙的访问控制扩展到数 据链路层。 2 2 防火墙的功能 2 2 1 防火墙主要功能 1 包过滤。 包过滤是一种网络的数据安全保护机制,它可用来控制流出和流入网络的数据, 它通常由定义的各条数据安全规则所组成,防火墙设置可基于源地址、源端口、目的 地址、目的端口、协议和时间:可根据地址簿进行设置规则。 2 地址转换。 网络地址变换是将内部网络或外部网络的i p 地址转换,可分为源地址转换s o u r c e n a t ( s n a t ) 和目的地址转换d e s t i n a t i o nn a t ( d n a t ) 。s n a t 用于对内部网络地址进行 转换,对外部网络隐藏起内部网络的结构,避免受到来自外部其他网络的非授权访问 或恶意攻击。并将有限的i p 地址动态或静态的与内部i p 地址对应起来,用来缓解地址空 间的短缺问题,节省资源,降低成本。d n a t 主要用于外网主机访问内网主机。 3 认证和应用代理。 认证指防火墙对访问网络者合法身分的确定。代理指防火墙内置用户认证数据库; 提供h t t p 、f t p 和s m t p 代理功能,并可对这三种协议进行访问控制;同时支持u r l 过滤功能。 4 透明和路由 6 指防火墙将网关隐藏在公共系统之后使其免遭直接攻击。隐蔽智能网关提供了对 互联网服务进行几乎透明的访问,同时阻止了外部未授权访问者对专用网络的非法访 问;防火墙还支持路由方式,提供静态路由功能,支持内部多个子网之问的安全访问。 2 2 2 入侵检测功能 入侵检测技术一j 就是一种主动保护自己免受黑客攻击的一种网络安全技术,包括以 下内容: 1 反端口扫描。端口扫描就是指黑客通过远程端口扫描的工具,从中发现主机的 哪些非常用端口是打开的;是否支持f t p 、w e b 服务;且f t p 服务是否支持“匿名”, 以及i i s 版本,是否有可以被成功攻破的i i s 漏洞,进而对内部网络的主机进行攻击。顾 名思义反端口扫描就是防范端口扫描的方法,目前常用的方法有:关闭闲置和有潜在 危险的端口;检查各端口,有端口扫描的症状时,立即屏蔽该端口,多数防火墙设备 采用的都是这种反端口扫描方式。 2 检测拒绝服务攻击。拒绝服务( d o s ) 攻击就是利用合理的服务请求来占用过 多的服务资源,从而使合法用户无法得到服务的响应,其攻击方式有很多种;而分布 式的拒绝服务攻击( d d o s ) 攻击手段则是在传统的d o s 攻击基础之上产生的一类攻击 方式,分布式的拒绝服务攻击( d d o s ) 。其原理很简单,就是利用更多的受控主机同 时发起进攻,以比d o s 更大的规模( 或者说以更高于受攻主机处理能力的进攻能力) 来 进攻受害者。现在的防火墙设备通常都可检沏u s y n f l o d 、l a n d 、p i n go f d e a t h 、t e a r d r o p 、 i c m pf l o o d 和u d p f l o d 等多种d o s d d o s 攻击。 3 检测多种缓冲区溢出攻击( b u f f e ro v e r f l o w ) 。缓冲区溢出( b u f e r o v e r f l o w ) 攻击指利用软件的弱点将任意数据添加进某个程序中,造成缓冲区的溢出,从而破坏 程序的堆栈,使程序转而执行其它指令,以达到攻击的目的。更为严重的是,可以利 用它执行非授权指令,甚至可以取得系统特权,进而进行各种非法操作,防火墙设备 可检测对f t p 、t e l n e t 、s s h 、r p c 和s m t p 等服务的远程堆栈溢出入侵。 4 检钡x c g i i i s ) 报务器入侵。c g i 就是c o m m o ng a t e w a yi n t e r - - - f a c e 的简称。是 w d r l dw i d ew e b 主机和c g i 程序间传输资讯的定义。i i s 就是i n t e r a c ti n f o r m a t i o n s e r v e r 的简称,也就是微软的i n t e m e t 信息服务器。防火墙设备可检测包括针对u n i c o d e 、a s p 源码泄漏、p h f 、n p h 、p f d i s p l a y c g i 等已知上百种的有安全隐患的c g i i i s 进行的探 测和攻击方式。 5 检测后门、木马及其网络蠕虫。后门程序是指采用某种方法定义出一个特殊的 端口并依靠某种程序在机器启动之前自动加载到内存,强行控制机器打开那个特殊的 端口的程序。木马程序的全称是“特洛依木马”,它们是指寻找后门、窃取计算机的 密码的一类程序。网络蠕虫病毒分为2 类,一种是面向企业用户和局域网而言,这种病 毒利用系统漏洞,主动进行攻击,可以对整个互联网造成瘫痪性的后果,以“红色代 码”,“尼姆达”,以及最新的“s q l 蠕虫王”为代表。另外一种是针对个人用户的, 通过网络( 主要是电子邮件,恶意网页形式) 迅速传播的蠕虫病毒,以爱虫病毒,求 职信病毒为例。防火墙设备可检测试图穿透防火墙系统的木马控制端和客户端程序; 检测试图穿透防火墙系统的蠕虫程序。 2 2 3 虚拟专网功能 指在公共网络中建立专用网络,数据通过安全的“加密通道”在公共网络中传播。 v p n 的基本原理是通过i p 包的封装及加密、认证等手段,从而达到安全的目的。 2 2 4 其他功能 1 i p 地址m a c 地址绑定。可支持任一网络接口的i p 地址和m a c 地址的绑定, 从而禁止用户随意修改i p 地址。 2 审计。要求对使用身份标识和认证的机制,文件的创建,修改,系统管理的所 有操作以及其他有关安全事件进行记录,以便系统管理员进行安全跟踪。一般防火墙 设备可以提供三种日志审计功能:系统管理日志、流量日志和入侵日志。 3 特殊站点封禁。内置特殊站点数据库,用户可选择是否封禁色情、反动和暴力 等特殊站点。 2 3 防火墙的原理及分类 国际计算机安全委员会i c s a 将防火墙分成三大类:包过滤防火墙,应用级代理服 务器以及状态包检测防火墙。 2 3 1 包过滤防火墙 顾名思义,包过滤防火墙【l l j 就是把接收到的每个数据包同预先设定的包过滤规则 相比较,从而决定是否阻塞或通过。过滤规则是基于网络层i p 包包头信息的比较。包 过滤防火墙工作在网络层,i p 包的包头中包含源、目的i p 地址,封装协议类型( t c p , u d p ,i c m p 或i pt u n n e l ) ,t c p u d p 端口号,i c m p 消息类型,t c p 包头中的a c k 等等。如果接收的数据包与允许转发的规则相匹配,则数据包按正常情况处理;如果 与拒绝转发的规则相匹配,则防火墙丢弃数据包;如果没有匹配规则,则按缺省情况 处理。包过滤防火墙是速度最快的防火墙,这是因为它处于网络层,并且只是粗略的 检查连接的正确性,所以在一般的传统路由器上就可以实现,对用户来说都是透明的。 但是它的安全程度较低,很容易暴露内部网络,使之遭受攻击。例如,h t t p 。通常是 使用8 0 端口。如果公司的安全策略允许内部员工访问网站,包过滤防火墙可能设置允 8 许所有8 0 端口的连接通过,这时,意识到这一漏洞的外部人员可以在没有被认证的情 况下进入私有网络。包过滤防火墙的维护比较困难,定义过滤规则也比较复杂,因为 任何一条过滤规则的不完善都会给网络黑客造成可乘之机。同时,包过滤防火墙一般 无法提供完善的同志。 2 3 2 应用级代理防火墙 应用级代理技术通过在o s i 的最高层检查每一个i p 包,从而实现安全策略。代理 技术与包过滤技术完全不同,包过滤技术在网络层控制所有的信息流,而代理技术一 直处理到应用层,在应用层实现防火墙功能。它的代理功能,就是在防火墙处终止客 户连接并初始化一个新的连接到受保护的内部网络。这一内建代理机制提供额外的安 全,这是因为它将内部和外部网络隔离开来,使网络外部的黑客在防火墙内部网络上 进行探测变得困难,更重要的是能够让网络管理员对网络服务进行全面的控制。但是, 这将花费更多的处理时间,并且由于代理防火墙支持的应用有限,每一种应用都需要 安装和配置不同的应用代理程序。比如访问w e b 站点的h t t p ,用于文件传输的f t p , 用于e m a i l 的s m t p p o p 3 等等。如果某种应用没有安装代理程序,那么该项服务就 不被支持并且不能通过防火墙进行转发;同时升级一种应用时,相应的代理程序也必 须同时升级。 2 3 3 代理服务型防火墙 代理服务( p r o x ys e r v i c e ) 也称链路级网关或t c p 通道( c i r c u i tl e v e lg a t e w a y so r t c pt u n n e l s ) ,也有人将它归于应用级网关一类。它是针对数据包过滤【1 2 】和应用网关 技术存在的缺点而引入的防火墙技术,其特点是将所有跨越防火墙的网络通信链路分 为两段。防火墙内外计算机系统间应用层的“链接 ,由两个终止代理服务器上的“链 接”来实现,外部计算机的网络链路只能到达代理服务器,从而起到了隔离防火墙内 外计算机系统的作用。此外,代理服务也对过往的数据包进行分析、注册登记,形成 报告,同时当发现被攻击迹象时会向网络管理员发出警报,并保留攻击痕迹。应用代 理型防火墙是内部网与外部网的隔离点,起着监视和隔绝应用层通信流的作用。同时 也常结合入过滤器的功能。它工作在o s i 模型的最高层,掌握着应用系统中可用作安全 决策的全部信息。 2 3 4 复合型防火墙 由于对更高安全性的要求,常把基于包过滤的方法与基于应用代理的方法结合起 来,形成复合型防火墙产品。这种结合通常是以下两种方案。屏蔽主机防火墙体系结 构:在该结构中,分组过滤路由器或防火墙与i n t e m e t 相连,同时一个堡垒机安装在内 9 部网络,通过在分组过滤路由器或防火墙上过滤规则的设置,使堡垒机成为i n t e m e t 上 其它节点所能到达的唯一节点,这确保了内部网络不受未授权外部用户的攻击。屏蔽 子网防火墙体系结构:堡垒机放在一个子网内,形成非军事化区,两个分组过滤路由 器放在这一子网的两端,使这一子网与i n t e m e t 及内部网络分离。在屏蔽子网防火墙体 系结构中,堡垒主机和分组过滤路由器共同构成了整个防火墙的安全基础。 2 4 防火墙包过滤技术 随着i n t e m e t 的迅速发展,网络应用涉及到越来越多的领域,网络中各类重要的、 敏感的数据逐渐增多;同时由于黑客入侵以及网络病毒的问题,使得网络安全问题越 来越突出。因此,保护网络资源不被非授权访问,阻止病毒的传播感染显得尤为重要。 就目前而言,对于局部网络的保护,防火墙仍然不失为一种有效的手段,防火墙技术 主要分为包过滤和应用代理两类。其中包过滤作为最早发展起来的一种技术,其应用 非常广泛。 所谓包过滤,就是对流经网络防火墙的所有数据包逐个检查,并依据所制定的安 全策略来决定数据包是通过还是不通过。包过滤最主要的优点在于其速度与透明性。 也正是由于此。包过滤技术历经发展演变而未被淘汰。 由于其主要是对数据包的过滤操作,所以数据包结构是包过滤技术的基础。考虑 包过滤技术的发展过程,可以认为包过滤的核心问题就是如何充分利用数据包中各个 字段的信息,并结合安全策略来完成防火墙的功能【l 列1 1 7 j 。 2 4 1 数据包结构 当应用程序用t c p 传送数据时,数据被送入协议栈中,然后逐个通过每一层直到 被当作一串比特流送入网络。其中每一层对接收到的数据都要增加一些首部信息。t c p 传给i p 的数据单元称作t c p 报文段( t c ps e g m e n t ) ;i p 传给网络接口层的数据单元称 作i p 数据报( i pd a t a g r a m ) 1 8 】;通过以太网传输的比特流称作帧( f r a m e ) 。对于进入 防火墙的数据包,顺序正好与此相反,头部信息逐层剥掉。i p ,t c p 首部格式如表2 1 、 表2 2 所示。 表2 1i p 首部格式 版本首部长服务类型总长度 标识标志片偏移 生存时间协议首部校验和 源i p 地址 目的i p 地址 选项 l o 表2 2t c p 首部格式 源端口号目的端口号 序列号 确认号 首部长保留 l tpr c h 窗口大小 r bbcjj clh t hr t c p 校验和紧急指针 选项 对于帧的头部信息主要是源目的主机的m a c 地址;i p 数据报头部信息主要是源 目的主机的i p 地址;t c p 头部的主要字段包括源目的端口、发送及确认序号、状态 标识等。 理论上讲,数据包所有头部信息以及有效载荷都可以作为判断包通过与否的依据, 但是在实际情况中,包过滤技术上的问题主要是选取哪些字段信息,以及如何有效地 利用这些字段信息并结合访问控制列表来执行包过滤操作,并尽可能提高安全控制力 度。 2 4 2 传统包过滤技术 传统包过滤技术【1 9 】,大多是在i p 层实现,它只是简单的对当前正在通过的单一数 据包进行检测,查看源目的i p 地址、端1 2 号以及协议类型( u d p t c p ) 等,结合访问 控制规则对数据包实施有选择的通过。这种技术实现简单,处理速度快,对应用透明, 但是它存在的问题也很多,主要表现有: 1 所有可能会用到的端口都必须静态放开。若允许建立h t t p 连接,就需要开放 1 0 2 4 以上所有端口,这无疑增加了被攻击的可能性。 2 不能对数据传输状态进行判断。如接收到一个a c k 数据包,就认为这是一个已 建立的连接,这就导致许多安全隐患,一些恶意扫描和拒绝服务攻击就是利用了这个 缺陷。 3 无法过滤审核数据包上层的内容。即使通过防火墙的数据包有攻击性或包含病 毒代码,也无法进行控制和阻断。 综合上述问题,传统包过滤技术的缺陷在于:( 1 ) 缺乏状态检测能力;( 2 ) 缺乏应 用防御能力。( 3 ) 只对当前正在通过的单一数据包进行检测,而没有考虑前后数据包之 间的联系:( 4 ) 只检查包头信息,而没有深入检测数据包的有效载荷。 传统包过滤技术必须发展进化,在继承其优点的前提下,采用新的技术手段,克 服其缺陷,并进一步满足新的安全应用要求。从数据包结构出发考虑,目前包过滤技 术向两个方向发展:( 1 ) 横向联系。即在包检测中考虑前后数据包之间的关系,充分利 用包头信息中能体现此关系的字段,如i p 首部的标识字段和片偏移字段、t c p 首部的 发送及确认序号、滑动窗口的大小、状态标识等,动态执行数据包过滤。( 2 ) 纵向发展。 深入检测数据包有效载荷,识别并阻止病毒代码和基于高层协议的攻击,以此来提高 应用防御能力。这两种技术的发展并不是独立的,动态包过滤可以说是基于内容检测 技术的基础。实际上,在深度包检测技术中已经体现了两种技术的融合趋势。 2 4 3 动态包过滤 动态包过滤( d y n a m i cp a c k e tf i l t e r ) 2 0 】又称为基于状态的数据包过滤( s t a t e f u l p a c k e tf i l t e r ) ,是在传统包过滤技术基础之上发展起来的一项过滤技术,最早由 c h e c k p o i n t 提出。 与传统包过滤技术只检查单个、孤立的数据包不同,动态包过滤试图将数据包的 上下文联系起来,建立一种基于状态的包过滤机制。对于新建的应用连接,防火墙检 查预先设置的安全规则,允许符合规则的连接通过,并在内存中记录下该连接的相关 信息,这些相关信息构成一个状态表。这样,当一个新的数据包到达,如果属于已经 建立的连接,则检查状态表,参考数据流上下文决定当前数据包通过与否;如果是新 建连接,则检查静态规则表。 动态包过滤通过在内存中动态地建立和维护一个状态表,数据包到达时,对该数 据包的处理方式将综合静态安全规则和数据包所处的状态进行。这种方法的好处在于: 由于不需要对每个数据包进行规则检查,而是一个连接的后续数据包( 通常是大量的 数据包) 通过散列算法,直接进行状态检查,从而使性能得到了较大提高;而且,由 于状态表是动态的,因而可以有选择地、动态地开通1 0 2 4 号以上的端口,使安全性得 到进一步地提高。 动态包过滤技术克服了传统包过滤仅仅孤立的检查单个数据包和安全规则静态不 可变的缺陷,使得防火墙的安全控制力度更为细致。 2 4 4 深度包检测 目前许多造成大规模损害的网络攻击,比如红色代码和尼姆达,都是利用了应用 的弱点。利用高层协议的攻击和网络病毒的频繁出现,对防火墙提出了新的要求。防 火墙必须深入检查数据包的内部来确认出恶意行为并阻止它们。 深度包检测( d e e pp a c k e ti n s p e c t i o n ) 1 2 1 】就是针对这种需求,深入检测数据包有效 载荷,执行基于应用层的内容过滤,以此提高系统应用防御能力。 应用防御的技术问题主要包括:( 1 ) 需要对有效载荷知道得更清楚;( 2 ) 也需要高 速检查它的能力。 简单的数据包内容过滤对当前正在通过的单一数据包的有效载荷进行扫描检测, 但是对于应用防御的要求而言,这是远远不够的。如一段攻击代码被分割到1 0 个数据 包中传输,那么这种简单的对单一数据包的内容检测根本无法对攻击特征进行匹配: 1 2 要清楚地知道有效载荷,必须采取有效方法,将单个数据包重新组合成完整的数据流。 应用层的内容过滤要求大量的计算资源,很多情况下高达1 0 0 倍甚至更高。因而要执行 深度包检测,带来的问题必然是性能的下降,这就是所谓的内容处理障碍。为了突破 内容处理障碍,达到实时地分析网络内容和行为,需要重点在加速上采取有效的办法。 通过采用硬件芯片和更加优化的算法,可以解决这个问题。一个深度包检测的流程框 图如图2 1 所示。 图2 1深度包检测框图 在接收到网络流量后,将需要进行内容扫描的数据流定向至u t c p i p 堆栈,其他数 据流直接定向到状态检测引擎,按基本检测方式进行处理。定向至t j t c p i p 堆栈的数据 流,首先转换成内容数据流。服务分析器根据数据流服务类型分离内容数据流,传送 数据流到一个命令解析器中。命令解析器定制和分析每一个内容协议,分析内容数据 流,检测病毒和蠕虫。如果检测到信息流是一个h t t p 数据流,则命令解析器检查上载 和下载的文件;如果数据是m a i l 类型,则检查邮件的附件。如果数据流包含附件或上 载下载文件,附件和文件将传输到病毒扫描引擎,所有其他内容传输到内容过滤引 擎。如果内容过滤启动,数据流将根据过滤的设置进行匹配,通过或拒绝数据。 2 4 5 流过滤技术 流过滤是东软集团提出的一种新型防火墙技术架构,它融基于状态的包过滤技术 与基于内容的深度包检测技术为一体,提供了一个较好的应用防御解决方案,它以状 态监测技术为基础,但在此基础上进行了改进其基本的原理是:以状态包过滤的形态 实现应用层的保护能力:通过内嵌的专门实现的t c p i p 协议栈,实现了透明的应用信 息过滤机制。 流过滤技术【2 2 】的关键在于其架构中的专用t c p i p 协议栈:这个协议栈是一个标 准的t c p 协议的实现,依据t c p 协议的定义对出入防火墙的数据包进行了,完整的重组, 重组后的数据流交给应用层过滤逻辑进行过滤,从而可以有效地识别并拦截应用层的 攻击企图。 在这种机制下,从防火墙外部看,仍然是包过滤的形态,工作在链路层或i p 层, 在规则允许下,两端可以直接访问,但是任何一个被规则允许的访问在防火墙内部都 存在两个完全独立的t c p 会话,数据以“流”的方式从一个会话流向另一个会话。由 于防火墙的应用层策略位于流的中间,因此可以在任何时候代替服务器或客户端参与 应用层的会话,从而起到了与应用代理防火墙相同的控制能力。如在对s m t p 协议的处 理中,系统可以在透明网桥的模式下实现完全的对邮件的存储转发,并实现丰富的对 s m t p 协议的各种攻击的防范功能一流过滤的示意图如图2 2 所示。 图2 2 流过滤示意图 流过滤的结卡句继承了包过滤防火墙的应用透明的特点,非常容易部署,而且具 有很好的应用防御能力。流过滤的另一个优势住于性能,完全为过滤和转发目的而重 新实现的t c p 协议栈相对于以自身服务为目的的操作系统中的t c p 协议栈来说,消耗资 源更少且更加高效,可以说流过滤采用专用的t c p 协议栈解决包内容过滤障碍的问题, 大大提高了防火墙处理速度。 1 4 第三章w in d o w s 封包截获技术与过滤算法分析 3 1win d o w s 操作系统的总体架构 w i n d o w s 操作系统的总体架构分为两个层次,上面的为应用层,下面的为核心层, 其结构如图3 1 所示。 应用程序( e x e ) 应用程序 ( e x e ) 应用层 应用程序( e x e ) 驱动程序( v x d 或s v s ) 核心层 驱动程序( v x d 或s y s ) 图3 1w i n d o w s 操作系统的架构 应用程序( e x e ) i 作在应用层,动态连接库( d 1 1 ) 也属于应用层的范畴,动态连接库 被应用程序调用时就成为应用程序的一部份,所以它们并没有本质的区别。e x e 和d l l 是两种工作方式不同的应用程序,e x e 是一个独立的可以直接执行的模块,受 w i n d o w s 进程保护机制的保护,其他程序无权直接使用这个程序的模块和数据。d l l 是一个共享的函数库,它提供标准的接口供其他程序调用,本身却不能运行。 在应用层的下面还有一层,叫做核心层。在w i n d o w s 9 5 9 8 下,核心层的程序扩展 名为v x d 2 3 j ,在w i n d o w sn t 2 0 0 0 x p 下,核心层的程序扩展名为s y s ,这些程序叫 做驱动程序,驱动程序为上层应用程序提供底层的支持。 这种分层结果可以实现代码共享。以协议驱动程序为例,一个系统里会有很多应 用程序使用相同的网络协议,把驱动程序单独调用出来就可以实现代码的共享。就像 d l l 可以被所有的e x e 调用一样,所有程序都可以调用同一个协议驱动程序。这样, 操作系统就可以使协议对应用程序透明

温馨提示

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

评论

0/150

提交评论