(计算机应用技术专业论文)基于linux+iptables防火墙规则生成的研究与实现.pdf_第1页
(计算机应用技术专业论文)基于linux+iptables防火墙规则生成的研究与实现.pdf_第2页
(计算机应用技术专业论文)基于linux+iptables防火墙规则生成的研究与实现.pdf_第3页
(计算机应用技术专业论文)基于linux+iptables防火墙规则生成的研究与实现.pdf_第4页
(计算机应用技术专业论文)基于linux+iptables防火墙规则生成的研究与实现.pdf_第5页
已阅读5页,还剩66页未读 继续免费阅读

(计算机应用技术专业论文)基于linux+iptables防火墙规则生成的研究与实现.pdf.pdf 免费下载

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

文档简介

基于l i n u xi p t a b l e s 防火墙规则生成的研究与实现 摘要 论文题目:基于l i n u xi p t a b l e s 防火墙规则生成的研究与实现 专业:计算机应用技术 硕士生:叶惠卿 指导教师:黄继武教授,蔡国扬讲师 摘要 防火墙是网络安全的基石,它能够拦截非法的访问,保护内部网络的安全。 规则是防火墙过滤数据包的依据,是企业安全策略的具体体现,规则的生成和管 理直接影响着防火墙防御能力的发挥。另一方面,l i n u x 提供了一个防火墙框架 n e t f i h e r ,并使用i p t a b l e s 在该框架上实现了防火墙功能。同时,i p t a b l e s 提供了 强大的日志功能,用于记录非法数据包的各种信息,分析这些信息对于了解当前 网络环境、正确配置防火墙和研究防火墙技术具有深刻意义。 本文正是在上面两点的启发下,重点研究了基于i p t a b l e s 的主机防火墙的规 则生成。首先,论文分析了t c p i p 协议栈在实际应用中存在的安全问题,介绍 了i p t a b l e s 利用n e t f i k e r 框架实现防火墙功能的数据控制流程。接着,从一个典 型的主机防火墙应用环境出发,对防火墙需求的定义、默认策略的选择和规则的 优化等方面进行了研究,利用i p t a b l e s 实现了基本的防火墙策略,并通过渗透性 测试验证了策略的有效性。其次,论文对i p t a b l e s 日志信息和常见的网络攻击进 行了深入研究后,提出了一个规则提取算法,该算法从t c p i p 协议原理出发, 总结了常见的协议栈指纹和攻击特征并形成特征库,再将解析后的日志信息与特 征库比较,判断主机是否受到攻击,然后提取攻击主机的信息形成规则,添加到 防火墙的规则集中。最后,论文实现了一个规则生成系统,并采用攻击工具对防 火墙进行端口扫描、伪造源i p 攻击、拒绝服务攻击等渗透性测试,进而验证了 规则提取算法的有效性。 关键词:防火墙、规则、i p t a b l e s 、日志 基于l i n u xi p t a b l e s 防火墙规则生成的研究与实现a b s t r a c t t i t l e : m a j o r : n a m e : s u p e r v i s o r : r e s e a r c ha n di m p l e m e n t a t i o no f f i r e w a l lr u l eg e n e r a t i o nb a s e do n l i n u xi p t a b l e s c o m p u t e ra p p l i c a t i o nt e c h n o l o g y h u i q i n g y e p r o f j i w uh u a n g ,i n s t r u c t o rg u o y a n gc a i a b s t r a c t f i r e w a l li st h ec o r n e r s t o n eo fn e t w o r ks e c u r i t y , i tc a np r o t e c ti n t r a n e tb yb l o c k i n g i l l e g a la c c e s s a s t h et e c h n o l o g yo f n e t w o r ks e c u r i t yi m p r o v e m e n t ,f i r e w a l li sn o tj u s t aw o r do fad e v i c eb u tas y s t e mo fi m p l e m e n t a t i o ns e c u r i t yp o l i c y w h a t e v e ri tc a r lb e , af i r e w a l lc a nn o tr u nw i t h o u tr u l e s ,w h i c ht e l l si th o wt od ow i t hi l l e g a la c c e s s t h e g e n e r a t i o na n dm a n a g e m e n to f r u l e sd i r e c t l yi m p a c to nt h ed e f e n c ea b i l i t yo ff i r e w a l l o nt h eo t h e r1 1 a n d l i n u xh a sp r o v i d e daf r a m e w o r kn a m e dn e t f i l t e r , a n du s e d i p t a b l e st or e a l i z et h ef i r e w a l lf u n c t i o nb a s e do n n e t f i l t e rf r a m e i p t a b l e sa l s o p r o v i d e sp o w e r f u ll o gf u n c t i o n s ,w h i c hc a nl o gm o s to ft h ei n f o r m a t i o no fi l l e g a l d a t ap a c k e t s i tw i l lb eu s e f u lf o ru st ol e a r nm o r ea b o u to u rn e t w o r ke n v i r o n m e n ti f w ec a n a n a l y s i st h el o gc a r e f u l l y b yd e t a i l e ds t u d yo ft h ea b o v ev i e w p o i n t s ,t h i sp a p e rm a i n l yr e s e a r c h e st h er u l e g e n e r a t i o nb a s e do ni p t a b l e sl o gf i r s t l y , t h ep a p e ra n a l y s e st h es e c u r i t yp r o b l e m so f t c p i p , a n di n t r o d u c e st h ed a t ac o n t r o lf l o ww h e ni p t a b l e su s i n gn e t f i l t e rf r a m et o r e a l i z et h ef i r e w a l lf u n c t i o n s e c o n d l y , t h ep a p e rr e s e a r c h e sh o wt os e tb a s i cf i r e w a l l r u l e s ,i n c l u d i n gt h ed e f i n i t i o no fr e q u i r e m e n t s , t h ep o l i c ys e l e c t e db yd e f a u r ,a n dt h e o p t i m i z a t i o no fr u l e s ,a n du s e si p t a b l e st oi m p l e m e n tt h eb a s i cf i r e w a l lp o l i c y t h i r d l y , w i t hi n t e n s i v e l ys t u d i e do nt h ei n f o r m a t i o no fi p t a b l e sl o gf o r m a ta n dc h a r a c t e r so f a t t a c k sb a s e do nt c p i p , an e w a l g o r i t h mo f r u l ee x t r a c t i o ni sp r o p o s e d ,w h i c hc a l lb e u s e dt oc h e c kw h e t h e rt h eh o s th a db e e na t t a c k e da n dd e c i d eh o wt og e n e r a t ear u l e b a s e do nt h ea t t a c k i n gc h a r a c t e r s f i n a l l y , a f t e ra c h i e v i n gt h er u l eg e n e r a t i o ns y s t e m b yp e r ll a n g u a g e ,p e r m e a b i l i t yt e s t sa r ep e r f o r m e dt ot h ef i r e w a u ,a n dt h er e s u l t d e m o n s t r a t e st h ef e a s i b i l i t ya n dv a l i d i t yo f t h er u l ee x t r a c t i o na l g o r i t h m k e yw o r d s :f i r e w a u ,r u l eg e n e r a t i o n , i p t a b l e s ,l o g i i 基于l i n u xi p t a b l e s 防火墙规则生成的研究与实现图表目录 图表目录 图2 1 沙漏计时器形状的t c p i p 协议族5 图2 2 数据包封装过程6 图2 3t c p 三次握手建立连接过程9 图2 4t c p 释放连接的过程9 图3 1n e t f i k e r 、i p 层与防火墙内核模块的关系一1 3 图3 2i p v 4 中定义的h o o k 点位置1 4 图3 3i p t a b l e s 结构图1 5 图3 4i p t a b l e s 数据包流程1 6 图4 1 实验拓扑图2 0 图4 2 处理由主机a 发送的数据包的流程2 2 图4 3 对进入主机a 的数据包的处理流程2 3 图4 4 规则顺序组织形式2 6 图4 5 测试拓扑图2 7 图4 6n m a p 扫描没有设置过滤功能的主机a 的结果2 8 图4 7 规则配置结果2 8 图4 8n m a p 扫描设置了过滤策略的主机a 的结果2 9 图4 9h p i n g 扫描包都被丢弃2 9 图4 1 0 主机a 对非法的i c m p 包的记录情况3 0 图4 1 1n m a pu d p 扫描结果3 0 图4 1 2 主机a 对非法的u d p 包的记录情况3 0 图4 1 3n m a ps y n 扫描结果3 l 图4 1 4 主机a 对非法的s y n 包的记录情况3 1 图5 1i p t a b l e s 对c o n n e c t ( ) 攻击的记录3 6 图5 2i p t a b l e s 对t c ps y n 攻击的记录3 7 图5 3i p t a b l e s 对t c pa c k 攻击的记录3 7 图5 4i p t a b l e s 对t c pf i n 攻击的记录3 7 图5 5i p t a b l e s 日志统计情况。3 7 图5 6 规则提取算法流程图4 4 图6 1 规则生成系统结构框架4 7 图6 2 规则生成系统流程图4 8 图6 3 系统测试拓扑图5 3 图6 4 主机b 访问主机a 的f t p 服务5 4 v 基于l i n u xi p t a b l e s 防火墙规则生成的研究与实现 图表目录 图6 5 主机a 受到攻击前的防火墙规则表5 4 图6 6 规则生成系统对端口扫描的检测结果5 4 图6 7 主机b 无法访问主机a 的f t p 服务5 4 图6 8 向目标主机发送伪造源i p 的数据包5 5 图6 9 规则生成系统对伪造源i p 的检测结果5 5 图6 1 0 向目标主机发送a c k 标志的异常数据包5 6 图6 1 1 规则生成系统对异常数据包的检测结果5 6 图6 1 2 规则生成系统对拒绝服务攻击的检测结果一5 7 表2 1 i p 地址分类7 表4 1 防火墙主要功能实现2 6 表5 1i p 首部和相应的i p t a b l e s 日志信息字段3 2 表5 2i c m p 首部和相应的i p t a b l e s 日志信息字段3 3 表5 3t c p 首部和相应的i p t a b l e s 日志信息字段3 4 表5 4u d p 首部和相应的i p t a b l e s 日志信息字段3 4 表5 5 攻击类型一3 5 表5 6 常见操作系统的t c p i p 协议栈指纹。3 8 表5 7 判断每个数据包的日志信息是否具有特定操作系统的指纹算法3 9 表5 8 特殊源i p 处理算法4 0 表5 9 规则提取算法4 3 表5 1 0 规则添加算法4 5 表6 1 包信息结构4 9 表6 2 定义包计数器5 0 表6 3 保存主机i p 地址5 0 表6 4 数据包首部长度5 0 v 1 基于l i n u xi p t a b l e s 防火墙规则生成的研究与实现 英文缩写全称 英文缩写全称 i p ( i n t e m e tp r o t o c 0 1 ) :网际协议 i c m p ( i n t e m e tc o n t r o lm e s s a g ep r o t o c 0 1 ) :网际控制信息协议 t c p ( t r a n s f e rc o m m lp r o t o c 0 1 ) :传输控制协议 u d p ( u s e rd a t a g r a mp r o t o c 0 1 ) :用户数据报协议 f t p ( f i l et r a n s f e rp r o t o c 0 1 ) :文件传输协议 r t p ( r e a l t i m et r a n s f e rp r o t o c 0 1 ) :实时传输协议 d n s ( d o m a i nn a m es y s t e m ) :域名解析系统 v i i 论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独 立进行研究工作所取得的成果。除文中已经注明引用的内容外,本论 文不包含任何其他个人或集体己经发表或撰写过的作品成果。对本文 的研究作出重要贡献的个人和集体,均已在文中以明确方式标明。本 人完全意识到本声明的法律结果由本人承担。 学位论文作者签名:红赵:g 醒翌 e l期:丝z 芝:乙 学位论文使用授权声明 本人完全了解中山大学有关保留、使用学位论文的规定,即:学 校有权保留学位论文并向国家主管部门或其指定机构送交论文的电 子版和纸质版,有权将学位论文用于非赢利目的的少量复制并允许论 文进入学校图书馆、院系资料室被查阅,有权将学位论文的内容编入 有关数据库进行检索,可以采用复印、缩印或其他方法保存学位论文。 姗躲斗撕新虢萄卺文 日期:p j 。年月、日 日期叫争易月2 日 基于l i n u xi p t a b l e s 防火墙规则生成的研究与实现 绪论 1 1 研究背景和意义 第一章绪论 互联网起源至今,随着各种网络技术的发展,它为人们的生活和工作带来了 非常多的便利。然而,人们在享受互联网所带来的资源共享的便利的同时,也不 得不面对网络开放所带来的数据安全的危险。根据国家计算机网络应急技术处理 协调中心( c n c e r t c c ) 对2 0 0 8 年上半年国内网络安全的报告显示【1 1 ,在抽样 检测的i p 中,有3 0 2 5 2 6 个i p 地址的主机被植入木马,约有2 0 0 万个地址的主 机被植入僵尸程序,更有许多像病毒、篡改网站、恶意代码等网络安全威胁存在。 目前常见的网络安全技术包括:防火墙、入侵检测、入侵防御、数据加密和 身份认证等【2 】。其中,防火墙是网络安全的第一道防线,它是网络安全的基石。 防火墙的基本功能是阻拦非法连接,保证内部可信网络的安全。典型的防火墙一 般具有如下特征【3 1 : 1 )内外网络之间的所有数据流都要经过防火墙; 2 ) 只有明确允许的数据流才能通过防火墙; 3 )防火墙本身应该具有较强的防渗透性。 现在,防火墙涵盖的内容已经突破了以往的包过滤限制,还包括状态检测、 网络地址转换、v p n 功能等。特别是随着网络处理器的应用,防火墙的功能已 经逐渐扩展到入侵检测系统和入侵防御系统的范畴。因此,防火墙已不仅仅是一 个设备或软件的代码词,它还被视为一个策略执行系统。代理防火墙的发明者和 第一个商业防火墙产品的实现者m a r c u sr a n u m 在2 0 世纪9 0 年代中期给出了防 火墙的一个定义一防火墙是对因特网安全策略的实现。根据r a r l t l m 定义的精神, 防火墙是一个实现策略而不仅仅是一个阻止非法流量的设备【4 1 。 但是,不管防火墙如何发展,它始终离不开规则。规则是防火墙过滤数据包 的依据,是企业安全策略的具体体现,规则的配置直接影响着防火墙防御能力的 发挥【5 1 。但是,随着防火墙防御功能的提升,规则配置及安全策略的制定更具有 挑战性,不仅要对i p 地址、端口号等数据包首部信息进行描述【6 1 ,还要结合当 前的网络环境定义上层协议的内容、控制流量速度等。这些都需要具备全面、深 基于l i n u xi p t a b l e s 防火墙规则生成的研究与实现 绪论 入的专业领域知识才能完成。然而,实际应用中,由于专业知识的缺乏以及对当 前网络环境的不熟悉,即使是安全产品公司的技术服务工程师也无法保证能够制 定有效的安全策略,这些都阻碍了防火墙防御功能的发挥。因此,准确的规则配 置和管理对于正确的发挥防火墙在安全方面的作用至关重要。 另一方面,l i n u x 操作系统为防火墙的研究提供了一个很好的切入点。它是 开源软件,本身具有较高的安全性,便于学习与进一步开发。l i n u x 2 4 内核引入 了一个防火墙框架n e t f i k e r ,利用该框架可以对数据包进行过滤和连接跟踪【4 】。 同时,l i n u x 为n e t f i k e r 框架开发了i p t a b l e s 用户层工具,可以不需要编译内核, 就能轻松的使用防火墙。而且i p t a b l e s 具有丰富的日志功能,可以提供非常宝贵 的安全数据,如果能够获取和分析这些数据背后隐藏的知识,对于了解当前网络 环境、正确配置防火墙和研究防火墙技术具有很好的意义。这是本文选择l i n u x 的n e t f i k e r i p t a b l e s 作为研究平台的原因。 1 2 国内外研究现状 防火墙是网络安全的基石,随着人们对网络安全的要求越来越高,对防火墙 的研究也越来越深入。国内外很多研究人员从不同方面和不同角度对它进行了研 究,包括防火墙技术的研究,规则集技术的研究和与其他安全技术结合的研究。 其中,目前对防火墙的规则集技术的研究主要集中在几个方面:规则匹配技术、 规则冲突检测技术和规则冲突消除技术。 在规则匹配方面,文献 7 】和【8 】给出了一种顺序匹配算法,即顺序访问规则 表中的规则,直到找到匹配的规则。但随着规则数目的增加,以及链路速度的提 高,顺序匹配已经无法达到线性处理的要求。因此,研究人员又提出了多种优秀 算法。文献【9 一1 2 】给出了一种基于t c a m ( t e r n a r yc o n t e n ta d d r e s s a b l em e m o r y ) 的规则匹配算法及其改进,该算法可以并行处理规则的每一个条目,时间复杂度 为常量。但存在适用范围小、规则不易编码的问题。文献 1 3 ,1 4 ,1 5 】描述了以b s o l ( b h :1 a r ys e a r c ho nl e a v e s ) 为代表的基于哈希表的规则匹配算法,该算法可以保 证在最坏情况下仍具有良好的性能,但是平均性能还有待提高。文献 1 6 - 1 9 是基 于t r i e 的常见的规则匹配算法。t r i e 实际是一棵二叉树,因此通常只能处理以前 缀表示的规则,使用范围比较局限。 2 基于l i n u xi p t a b l e s 防火墙规则生成的研究与实现 绪论 规则冲突检测是找出规则动作中不致的地方,规则冲突消除则是处理这种 不一致,使规则集中不存在任何冲突的规则对。在文献 2 0 2 6 q b ,a l e xx l i u 提 出了一种称为f d t ( f i r e w a l ld e c i s i o nt r e e s ,防火墙决策树) 的模型,该模型可以 表示所有匹配类型的过滤域,具有通用性。通过f d t 可以检测规则集的冲突、 冗余等问题。但是f d t 在对规则进行转化的过程中,丢弃了规则原始位置的信 息,一旦规则集发生变化,就需要重新构造f d t 。为解决这个问题,陈文惠博 士在文献【2 7 】中提出了一个m f d t ( m a r k e df i r e w a l ld e c i s i o nt r e e s ) 模型,它在 构造f d t 的同时保留了原始的位置信息,可以反映规则的动态变化。 从以上的分析可以看出,目前的大部分研究关注点都在规则的匹配速度和冲 突检测,而且都是在假设防火墙已经配置好规则的前提下进行的。实验过程用到 的规则简化为一个五元组 。这个五元组实际只描述了针对t c p 和u d p 协议的极少的防御功能, 而对大量利用s y n 、a c k 等进行拒绝服务( d o s ) 攻击的行为都无法检测到, 实用性很低。另一方面,实际网络环境中的防火墙安全策略都是实验人员根据个 人经验进行配置的,由于知识的欠缺、理解的不全面,配置的规则集往往过于庞 大,有的甚至就没有配置防御规则,只把防火墙当成一个透明的中继使用,这些 都导致了防火墙不能达到期望的防御攻击的效果。因此,一个良好的规则集是防 火墙的性能的保障,它可以减少匹配前的预处理时间、又不需要浪费时间经常进 行规则冲突检测、冲突消除等处理。 1 3 研究内容与论文结构 本文的研究重点是防火墙的规则生成,主要从两个方面进行研究:一是制定 一个默认的、有效的规则集,二是在这个规则集的基础上,分析防火墙日志,根 据分析结果,向规则集中添加防御规则。其中第一个方面需要研究的问题有: 1 ) 如何根据具体的网络环境分析希望防火墙做什么; 2 ) 在明确希望防火墙做什么的前提下,如何制定安全策略; 3 ) 如何对这一组规则进行优化和组织,使防火墙的处理效率更高。 要实现从日志中提取规则并添加到原有的规则集中,需要研究的问题有: 1 ) 防火墙的日志信息包含了什么内容; 3 基于l i n u xi p t a b l e s 防火墙规则生成的研究与实现 绪论 2 ) 从日志中怎么找出攻击的痕迹; 3 ) 应该提取哪些日志字段作为规则的匹配条件; 钔添加新规则后对原有规则集或防火墙性能存在什么样的影响。 本文正是围绕着以上几个问题,对防火墙的规则生成进行了系统的研究,并 通过l i n u xi p t a b l e s 提供的防火墙平台展示了整个研究过程的成果。具体章节安 排如下: 第一章绪论,讨论了防火墙在网络安全中的作用以及l i n u x 防火墙的现状等 研究背景,阐述了基于l i n u x 防火墙框架研究课题的意义,并着重介绍了国内 外在防火墙规则方面的研究现状,最后给出了本文的研究内容和结构安排。 第二章t c p i p 的安全性和防火墙技术的研究,分析了t c p i p 体系结构在保 证实现简单性的同时存在的安全问题,并着重分析了i p 、i c m p 、u d p 和t c p 协议中存在的安全漏洞。然后分析了防火墙的包过滤、应用代理和状态检测等技 术的优缺点;指出防火墙还应解决的问题包括带宽、多功能化和自身的安全性等。 第三章l i n u x 防火墙研究,介绍了n e t f i r e r 框架的内容和工作原理,分析了 i p t a b l e s 使用n e t f i l t e r 框架实现防火墙功能的数据控制流程。最后,给出了i p t a b l e s 部分命令和选项说明。 第四章l i n u x 防火墙规则实现与日志数据收集,详细阐述了如何根据实际网 络应用需求设计防火墙安全策略,以及如何对规则进行优化,并采用i p t a b l e s 实 现了具体的功能,然后进行渗透性攻击测试,并对结果及其产生原因进行了分析。 第五章规则生成,这是本文的重点。首先分析了i p t a b l e s 的日志格式,接着 在对日志信息和攻击特征分析的基础上总结了检测攻击时应该考虑的特征,提出 了规则提取算法,该算法描述了如何从日志信息中检测攻击,并提取攻击主机信 息形成规则,添加到防火墙原有的规则集中。 第六章系统实现与测试分析,给出了规则生成系统的总体框架和系统流程, 详细介绍了系统所使用的数据结构、编程语言和主要函数的功能。然后采用渗透 性攻击测试的方法对系统进行了测试,验证了规则提取算法的有效性。最后对规 则生成系统的可扩展性和不足等进行了客观的评价。 第七章总结和展望,总结了本文所做的工作和取得的成果,提出论文还存在 的不足和下一步的展望。 4 基于l i n u xi p t a b l e s 防火墙规则生成的研究与实现 t c p i p 的安全性和防火墙技术的研究 第二章t c p i p 的安全性和防火墙技术的研究 t c p i p 协议是互联网的基本通信协议,由于其简单易实现,最终取代了i s o 的o s i 协议,成为i n t e m e t 实际使用的协议。但是,随着网路的发展,t c p i p 协 议的简单性遭到了攻击者的利用,各种弥补通信安全漏洞的产品也应运而生。而 防火墙是网络安全的第一道防线,它能够防御大部分利用网络协议安全漏洞的攻 击,保护内部网络的安全。然而,如何有效地利用防火墙并保证防火墙本身的安 全性,还需要作深入的研究。 2 。1t c p i p 的安全性研究 2 1 1t c p i p 体系结构 t c p i p 体系结构包括四个层次,分别为网络接口层、网际层、传输层和应 用层。为实现通信,每一层需要使用下面一层提供的服务,同时本层必须能够为 上面一层提供服务。图2 1 中沙漏计时器形状的t c p i p 协议族示意图表明, t c p i p 协议可以为各种各样的应用提供服务,同时它也允许i p 协议在各种各样 的网络构成的互联网上运行【2 1 。这为互联网的发展提供了很大便利,但也埋下了 一定的网络安全隐患。攻击者只要将数据包的i p 字段伪造成其他的主机i p 就可 以隐藏自己的信息,这为安全审计带来了一定的困难。 同同id n s 同应用层l。j 。 l ,一。j 、 、 、 、 图2 1 沙漏计时器形状的t c p i p 协议族 传输层 网际层 网络接口层 互联网上的数据必须以分组的形式才能传送,这就需要将数据封装成包,并 5 基于l i n u xi p t a b l e s 防火墙规则生成的研究与实现t c p i p 的安全性和防火墙技术的研究 在数据包的首部加上信息标记该包的来源、目的地和各种控制信息【6 】。图2 2 显 示了u d p 数据包的封装过程。首先,应用层程序将数据报文传给传输层,传输 层不改变该报文的内容,只是加上了u d p 首部信息,然后将其封装成u d p 数据 报,往下传给网络层。网络层将收到的数据报加上i p 地址等首部信息,形成i p 分组,传给链路层。最后,链路层将该分组封装成帧,发送到链路中。 图2 2 数据包封装过程 操作系统的协议栈实现了整个数据包的封装过程,并规定了对不同类型的数 据包首部应该填充的信息字段。但现有的攻击工具很多也实现了数据包的封装过 程,如n m a p 。利用这些工具,攻击者就可以轻易地制造非法的数据包、伪造数 据包的i p 地址和其他字段的值,以达到攻击的目的。 2 1 2 网际层 t c p i p 的网际层负责为网络上的数据提供打包、编址和选路服务,主要的 协议有网际协议( i p ) 和i n t e r n e t 控制报文协议( i c ) 。 1 、i p 协议 i p 协议使各种异构的物理网络在网络层上看起来好像是一个统一的网络, 并使用i p 地址为网络中的每台设备提供了唯一的标识,有了这个标识,数据包 就可以路由到目的地。根据i p 地址范围支持的主机和网络数量不同,i p 地址分 为5 类【2 1 ,表2 1 列出了不同类型的i p 地址的范围。 6 基于l i n u xi p t a b l e s 防火墙规则生成的研究与实现代p i p 的安全性和防火墙技术的研究 表2 1i p 地址分类 类型地址范围 a0 0 0 0 到12 7 2 5 5 2 5 5 2 5 5 b 1 2 8 0 0 0 到1 9 1 2 5 5 2 5 5 2 5 5 c19 2 0 0 0 到2 2 3 2 5 5 2 5 5 2 5 5 d 2 2 4 0 0 0 到2 3 9 2 5 5 2 5 5 2 5 5 e2 4 0 0 0 0 到2 5 5 2 5 5 2 5 5 2 5 5 其中,经常使用的是a 、b 、c 三类地址,但1 0 0 0 o l o 2 5 5 2 5 5 2 5 5 、 1 7 2 1 6 0 0 1 7 2 2 5 5 2 5 5 2 5 5 和1 9 2 1 6 8 0 o - 1 9 2 1 6 8 2 5 5 2 5 5 三个地址段的i p 保留 为专用网络的地址,它们是不可路由的,不能在i n t e r a c t 上出现。 1 2 7 0 0 6 - - 1 2 7 2 5 5 2 5 5 2 5 5 为本地软件环回测试地址,不属于任何一个类型,也 不能在i n t e r a c t 上出现。d 类地址用于多播,e 类地址保留为今后使用。 2 、i c m p i c m p 协议用于报告或诊断传输过程中出现的问题,它利用分组中的类型和 代码字段报告数据包的传递错误信息。常见的i c m p 报文类型利2 8 ,2 9 1 : 回应请求和应答:i c m p 的回应请求和应答报文是一种双向信息查询报 文,用于获取某些有用信息。利用这些信息,可以检测目的主机的可达 性、同步网络时间、排除网络故障等。 差错报告:i c m p 的差错报告报文可以给出目的不可达信息,包括网络 不可达、主机不可达、协议不可达等,也可以检测数据包的参数错误。 - 源站抑制:路由器发生拥塞就会向源站主机发送i c m p 源站抑制报文, 以限制源站主机的发送数据包速度。 重定向:路由器在转发分组时,如果发现有更优路径,就会向源端主机 发送重定向报文,指出通往目的端的最优路径。 i c m p 本身的特点决定了它很容易被利用来攻击网络和主机,比如,利用 i c m p 的重定向报文可以获得网络配置信息,利用差错报文可以获取目标主机开 放的服务信息。而且i c m p 的e c h o r e p l y 在网络中具有较高的优先权,如果向目 标网络持续发送大量的i c m pe c h o r e p l y 报文,就会耗尽目标网络的带宽,达到 7 基于l i n u xi p t a b l e s 防火墙规则生成的研究与实现t c p i p 的安全性和防火墙技术的研究 拒绝服务攻击的目的。 2 1 3 传输层 传输层使用协议端口号为不同主机中运行的应用程序进程建立逻辑连接,主 要的协议有传输控制协议( t c p ) 和用户数据报协议( u d p ) 。u d p 为不同主机 中的进程提供无连接的、无状态和不可靠的数据传递,主要用于对速率要求较高 的环境中。t c p 提供的是可靠的、面向连接的服务,主要用于对服务质量要求较 高的通信。 1 、端口号 在通信过程中,发送方不仅需要确保信息抵达正确的接收方,而且需要确保 在接收方运行的所有进程中,信息被传输给发送方想要发给的特定的进程。传输 层使用端口来实现这种进程间的端到端通信,也就是说,在基于t c p i p 协议的 网络中,每个需要与在其他节点上运行的应用程序进程通信必须使用端口掣2 引。 按协议对应的类型,端口号通常分为2 类: _ 知名端口:范围为0 到1 0 2 3 。这些端口的通信明确表明了某种服务的协 议,如h t t p 对应端口8 0 。 _ 动态端口:范围为1 0 2 4 到6 5 5 3 5 ,这些端口是动态分配给服务的。当一 个系统进程或应用程序进程需要网络通信时,它向主机申请一个端口, 主机从可用的端口号中分配一个供它使用。这个进程关闭的同时也就释 放了所占用的端口号。 端口是计算机与外界通信交流的出口,是主机开放对外服务的具体体现。利 用开放端口可以实现与主机的数据交换,现在很多木马或病毒都利用这一点达到 攻击主机的目的。如b r o w no r i f i c e ( b r o ) 特洛伊木马就是利用8 0 8 0 端口控制 被感染的主机。因此,关闭不提供服务的端口能够在一定程度上保护主机的安全。 2 、t c p 协议 为实现可靠的传输,t c p 采用三次握手建立连接。第一次握手:客户端发送 s y n ( s e q - - x ) 包给服务器,并进入s y ns e n d 状态;第二次握手:服务器收到 s y n 包后,向客户端发送a c k ( a c k = x + 1 ) 和s y n ( s e q = y ) 位都置1 的数据包, 8 基于l i n u xi p t a b e s 防火墙规则生成的研究与实现t c p p 的譬辛悻和火墙技术的研究 叩s y n + a c k 包,然后进入s y nr e c v 状态;第三次握手:客,、端收到服务器 的s y n + a c k 包后,向服务器发送确认包a c k ( 孔k = y + ”。此包发送完毕,客 户端和服务器都进入e s t a b l i s h e d 状态”。图2 3 显示了t c p 二次握手过程。 客户端 g 7 2 送s y ns e q i 立l 接收s y n + a c k 报文l 发送a c ”y 报文卜 接收s y n 撤文 艇送s y ns e q = y - 和a c k = xr 1 报立 接收a c k h 文 圈z3t c p 三次握手建立连接过程 t c p 连接建立后,就可以进行全双工的数据传输( 数据在两个方向上同时传 递) 。当应用程序进程没有数据需要传输时,它可以通过发送带h n 标志位的数 据包关闭本方的数据流。但它还能接收数据,直到对方也发送f i n 数据包”i 。图 2 4 给出了t c p 连接释放的过程。 发送f i n s e q 2 客户端 接收a c k 报文 接收s y n + a c k 搬文 发送a c ky + l 撤文 接收f i n 报文 发送f i n 撤文 s e q = y ,a c k - = :,( + 幽24t c p 释放连接的过柙 接收a c k _ 1 6 i 文 结合t c p 的连接建立和释放过程,咀及6 个标志位,攻击者可以比较容易 的发起攻击。其中,带有f i n 和a c k 这两个标志的数据包经常被用于进行端口 扫描。当一个f i n 或a c k 标志的t c p 数据包发送到i n t c m e t 上一台主机的某个 特定端口时,如果主机反馈回来一个带r s t 标志的t c p 包,就表明这台主机没 窖 一管 基于l i n u xi p t a b l e s 防火墙规则生成的研究与实现t c p i p 的安全性和防火墙技术的研究 有打开这个端口,但它是存在的;如果这台主机没有反馈回来任何数据包,则可 能该主机不存在或者相应的端口设置了过滤策略。只要再通过其他的辅助手段, 就可以判断这台主机是否存活。带有s y n 标志的数据包则经常被用于拒绝服务 攻击。攻击者向目标主机发送s y n 请求包要求建立t c p 连接,等到目标主机返 回s y n a c k 后,却又故意不发送a c k 完成连接的建立,但目标主机的缓冲区 中还要保存这些连接信息直到超时。当这种数据包达到一定数量时,目标主机的 缓冲区就被占满,无法响应其他合理的t c p 连接请求。 2 2 防火墙技术 防火墙是一种应用规则对数据包进行检查,以拦截危险行为的设备,它是内 部网络和外部网络的唯一通道。根据检查内容的不同,防火墙的实现技术可以分 为三种:包过滤、应用代理和状态检测。 2 2 1 包过滤防火墙 包过滤防火墙是最基本的防火墙,主要工作在网络层和传输层。它的安全策 略由一组动作为丢弃或接收的规则组成,这些规则明确定义了允许或禁止哪些数 据包通过本地网络接口。规则的匹配条件主要是i p 地址和端口号。当数据包到 达本地网络接口时,防火墙会检查这两个字段的内容,然后根据规则的动作决定 是允许数据包通过,还是直接丢弃数据包。包过滤防火墙实现简单、匹配速度快, 但是它检查粒度太大,无法满足建立精细规则的要求 6 1 。 2 2 2 应用代理防火墙 应用代理防火墙在包过滤防火墙的基础上增加了检查应用层数据的能力。应 用代理防火墙也叫应用网关,它工作在内外网之间的堡垒主机上。当代理防火墙 收到外界主机的数据包时,它先根据预定的应用层协议规则审核这个数据包,如 果数据包是被允许的,防火墙就代替主机响应,并重新向主机发出一个相同的请 求。也就是说内外网的主机没有直接会话的机会,它们之间的通信都要经过防火 墙的代理程序实现 6 1 。 1 0 基于l i n u xi p t a b l e s 防火墙规则生成的研究与实现t c p i p 的安全性和防火墙技术的研究 应用代理防火墙能够对数据包提供一种细粒度的访问控制,但是它要有一个 精确、庞大的规则表,用于记录针对各种应用的攻击特征,而且必须为每一个连 接创建一个代理进程用于检查和转发数据包,这些过程都需要消耗一定的时间。 在数据交换频繁的时刻,代理防火墙将成为网络的瓶颈。 2 2 3 状态检测防火墙 状态检测在保留了包过滤防火墙对i p 地址和端口号进行分析的基础上,还 为每个传输层连接维护了一个会话状态,根据这个状态就可以判断哪些数据包是 属于同一个连接。状态检测只检查每个连接的第一个数据包,称为首包报文检查, 如果这个数据包被允许通过防火墙,后续属于该连接或与该连接有关的数据包都 将被放行【6 】。状态检测能够分析包的内容,而且可以为需要开放多个端口的服务 ( 如邱用2 l 端口进行信息控制,2 2 端口用于数据传输) 临时开放所需的端口。 当传输结束时,那些临时开放的端口又恢复关闭状态。 然而,状态检测的实现技术复杂,对硬件、软件的要求也高,目前还没有比 较广泛的应用。 2 2 4 防火墙的发展趋势 由于网络环境越来越复杂,对防火墙的功能和性能都提出了较高的要求。未 来防火墙需要解决的问题包括带宽、多功能化和自身的安全等。 线速处理数据包是防火墙的目标,但目前真正达到线速的防火墙很少。一旦 网络的数据流量达到一定程度,防火墙就可能成为网络的瓶颈。运用网络处理器 是实现线性防火墙的主要方法,因为它集成了很多硬件协处理单

温馨提示

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

评论

0/150

提交评论