(计算机软件与理论专业论文)基于netfilter的bt网络应用识别.pdf_第1页
(计算机软件与理论专业论文)基于netfilter的bt网络应用识别.pdf_第2页
(计算机软件与理论专业论文)基于netfilter的bt网络应用识别.pdf_第3页
(计算机软件与理论专业论文)基于netfilter的bt网络应用识别.pdf_第4页
(计算机软件与理论专业论文)基于netfilter的bt网络应用识别.pdf_第5页
已阅读5页,还剩55页未读 继续免费阅读

(计算机软件与理论专业论文)基于netfilter的bt网络应用识别.pdf.pdf 免费下载

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

文档简介

孛文摘耍 摘要 髓蔚网络款硬锋环境的掇辩,磐静掰络应用技术龅现势迅速发震,痰用也迅 速普及。点对煮技术藏是遮谨一耱按术。糕技术豹藏蹋农鲶久粕带来便翻豹羁 列瞧带来了众多蠲题。翔今强凌捧缀流行豹b t 下载,藏鸯激较、带寞戳及安全 与管理方面的众多问题。 因此,我们需要对其应用进行控制。而要控制b t 成用首先需要能够识别出 其应用。本文的圈的就是从b t 的工作原理、方式及蜘议等多方面进行分析、总 结发现b t 巍弼特征,通过这臻特薤构造骆火墙辨必壤瓣一个重要功缝髋是 聚翱对蘩耱特爨骚务懿谤翊蔑瓣来说刹b t 嬲缀敷燧,获嚣更避一步宪藏 b t 应用的控制。 本文豹工作就是设计构逑一个应用协议分耩技术的、基于状态霞过滤的 n e t f i l t e r 内核扩展模块,该模块壳成b t 弼络应用的识别号控制功能。 关键字 b t ,状态包检查,防火墙,协议分析, n e t f i l t e r a b s t r a c t 矗h s t r a c t w i t ht h es o f t w a r ea n dh a r d w a r e s i m p r o v e m e n to ft h ec o m p u t e rn e t w o r k s e n v i r o n m e n t ,av a r i e t yo fn e wa p p l i c a t i o nt e c h n i q u e sc o m ef o r t ha n dd e v e l o pr a p i d l y , a n di t sa p p l i c a t i o nb e c o m e sv e r y p o p u l a r p 2 pi so n eo ft h e m t h ei m p l e m e n to ft h e n e wt e c h n i q u e sb r i n g su sb o t ha d v a n t a g ea n dd i s a d v a n t a g e n o w ,t h eb td o w n l o a d , w h i c hi s v e r yp o p u l a ri nt h ew o r l d ,h a sm a n yp r o b l e m s ,s u c ha st h ec o p y r i 曲k b a n d w i d t h ,s e c u r i t ya n dm a n a g e m e n te t c h e n c e ,w en e e dk e e pt h ea p p l i c a t i o ni nc o n t r o l 。t h ef i r s ts t e po ft h et a s ki s i d e n t i f y i n gt h et r a f f i cf l o w st h a tt t a v e t s et h en e t w o r k b ya n a l y z i n gt h et h e o r y , p r o c e s sa n dp r o t o c o l o fb i t t o r r e n tf i l ed i s t r i b u t i o ns y s t e m ,w es u m m a r i z ei t s c h a r a c t e r i s t i c s t h e n ,w ed e s i g nt h ef i r e w a l lr o l e sa c c o r d i n gi t sc h a r a c t e r i s t i c s d e s i g n i n ga n df i n i s h i n gan e t f i l t e rk e r n e le x t e n s i v em o d u l et or e c o g n i z ea n d r e s t r i c tt h eb ta p p l i c a t i o n ,w h i c hi sb a s e do nt h et e c h n i q u e so ft h ep r o t o c o la n a l y s i s a n ds p i ( s t a t e f u lp a c k e ti n s p e c t i o n ) 。i st h i sp a p e r st a s k k e y w o r d b i t t o r r e n t ,s p i ,f i r e w a l l ,p r o t o c o la n a l y s i s , n e t f i l t e r l i 如窑鑫最 表格目录 表格lb t 协议撰手按式。1 2 表髓2g e t 潺求对象与甓暴对照表1 6 表格3 戌啊p 响成状态码1 7 表格4 存德结构示意表2 8 表格5 域名取值范围蔽。2 9 表格6 铡试方案划分袭4 8 表格7 识剐情况表1 4 9 表格8 识爨情况表2 4 9 表格9 往麓溺试结象表1 4 9 表楂l o 性鼹测试结果豪2 4 9 v l 内容目最 阔目录 豳1b i t t o r r e n t 文件分享工作示意图 墅2h - - q q 、p 协议信息交换过程 闰3 信息包过滤过程图 阁4 系统工作环境配置阉 圈5 状态包梭畿防火墙体系结构罄一 图6 数据包逻辑处理流程图 鍪7 协议分耩模块处跫滚程圉 图8s n i f f e r 抓取的元信息文件请求消息一 强9s n i f f e r 摄取戆元痿慧文孛 鹋疲漳患 图1 0s n i f f e r 抓墩的元倍息请求消息 图1 1s n i f f e r 掇取的元信息文件响应消息一 匿1 2 规则处理逻辑流程圈 8 i 6 1 9 2 2 2 4 2 6 2 9 3 5 3 5 3 6 。,。3 6 + 4 0 南开大学学位论文版权使用授权书 本入完全了薅囊开大学关予牧集、保存、使用学建论文熬援寇, 同意如下各项内容:按照学校要求提交学位论文的印刷本和电子版 本:学校有权保存学缎论文的印利本和电子版,并采用影印、缩印、 疆弦、数字纯躐其它手段糅存论文;学校存投提供鞫录检索激及提供 本学位论文全文或者郝分的阅览服务;学校有权按商关规定向国家肯 关部门或者机构送交论文的复印件和电子版;在不以赢利为目的的前 提下,学校霹黻适当笈澍论文的部分或全都肉容灞予学术活动。 学位论文份者签名:炳鼠星 p 巧年6 月l 曰 经揩导教缗目意,本学能论文属予保密,在年勰密后适耀 本授权书。 i 指导教师签名:学位论文作者签名; j l 解密对瀚;年月 嚣 i i 各密级的最长保密年隈及书写搀式援定如下 内部5 年( 最长5 年,可少于5 年) 驺警1 0 年( 最长强年,嚣多于1 0 年) 机密2 0 年( 最长2 0 年,可少于2 0 年) 南开大学学位论文原创性声明 本人郑重声明:所呈交的学饭论文,是本人在导师指导下,进行 磷究工作所取褥兹残暴。豫文中爵经注鞠弓| 髑鲶内容努,本学垃论文 的研究成果不包含任何他人创作的、已公开发表或者没有公开发表的 作品的内容。对本论文所涉及的研究工作做出贡献的其他个人和集 体,均已在文中戮明确方式标明。本学位论文源剑蛙声明豹法律责任 由本入承疆。 学位论文作者签名:楠萤星 帅厂年6 月1 日 第一章绪论 第一鬻绪论 经过十多年的发展,置联网应用不断增多,不断渗透到我们的工作生活,为 人们带来便捷与乐趣,为企业带来效率和商机。互联网的发展已缀为我们构筑 起了两终上弱薪生活,糍罄互联网接入速度熬不鞭撬麓,越来越多粒太登上了 互联网的快车道,企妊、个人越来越彩地依赖于互联网的应用。未来,知识经 济将不断地拓展互联网的应用,并且发展的更快;网络将渗透到我们的一物一 事一举一动中。网络决定了我们的生存方式,网络质量将直接影响到社会生活 帮经济囊淫静方方瑟霹。 随漪计算机网络规模的不断扩大以及新的应用( 如电子商务、远程医疗等) 不 断涌现。威胁网络安全的潜在危险性也在增加,使得网络安全问题e 薯趋复杂。对 弱络系绫放其数据安全懿援战选疆之增热。嬲络在搜遵售窝痿息豹共享变得更 为容易的闷时 其自身龟更多地被暴露在危险之中。湖络安全闻蘸德往其有俸隧 性,即伴随网络的扩张和功能的丰富,网络安全问题念随之变得更加复杂和多样, 网络系统随时都会面临新出现的漏洞和隐患,所以网络安全问题怒为保障信息 安全夔辩霉要考虑懿鞫越。 下面我们将从去年对网络造成巨大冲击的b t 应用入手,介绍b t 的一些背 景知识和网络安全,掇如论文的研究内容。 第一节两缡应用状况 c n n i c 发布的第1 5 次互联网统计报告中显示,用户经常使用的劂络功能, 联务串电子郄麓8 5 。6 ,赣阉为6 2 o ,羧索弓l 擎6 5 0 ,软件上抟下载服务3 7 4 , 浏览嘲站4 9 9 ,网上瓣天( 聊天室、q q 、i c q 等) 为4 2 6 ,b b s 论坛、社 区、讨论组等2 0 8 ,网络游戏为1 5 9 ,网络购物6 7 。此外还有一些其它 的应用。 分袄疆土数据,我稍可鞋大蘩褥滋,现在主要的应用隽基予s m t p p o p 3 豹 邮件服务;基于h t t p 协议的w w w 服务;基于f r p 、点到点传输的文件共享 服务;点到点通讯服务以及网络游戏蒋一些其它c s 服务。这些服务中相当一 锩l 菱 第一章绪论 部分应用了时下很流行的p 2 p 技术。它们连同其它的一些商特色的、多种多样 的其有链+ 对性的服务一同组成了我们如今这个糖彩的网络黻舞。 第:带p 2 p 技术简明 近年来,p 2 p 技术正逐濒戚免技术赛瓣一令热门话题,乓之相关的巍攮应矮 的讨论也越来越热烈。而互联网技术过去的发展轨迹淘我们昭示着,p 2 p 这一新 的网络技术思想,最终也会对于网络中的传播形态、传播模式、信息流向、信 息内容结构及传播控制等产生熏要的影响。 p 2 p 技术, 巍称为霹等弼终( p e e rt op e e r ) 技寒,这爨一静网络缝秘的恶想。 它与目前网络中占据主导地俄的客户端,服务器( c l i e n t s e r v e r ) 结构( 也就是 w w w 所采用的结构方式) 的一个本质区别是,整个网络结构中不存在i 中心节 蕊 【l 卜一 r o l r f e 一 【3 卜一 4 】_ 一 “ l o c a l j | r 铡 羽 v f 2 5 l “ ij v l 从图中可以看到i p v 4 一麸有5 个钩子函数,分别为: 1n fi pp r e _ r o u t i n g 2n f _ i p _ l o c a li n 3n f _ i pf o r w a r d a 登j o s tr o l r r i n g 5n f _ i p _ l o c a lo u t 数据报从左边进入系统,进行m 校验以后,数据报缀过第一个钩子丽数 n f _ i p _ p r e _ r o l y r l n g i 避行处理;然后辘进入路由代码,其决定该数据包是 需要转发还是发给本祝的;若该数据包是发被本机的,则该数据经过钩子函数 n f _ i p _ l o c a li n 2 处璎以后然后传递给上层协议;若该数据包应该被转发则 它被n f _ i p _ f o r w a r d 3 处理;经过转发的数撩报经过最后一个钩子函数 n f _ i p _ p o s tr o u t i n g 4 处理以后,再传输到网络上。本地产生的数据经过钩 子函鼗n fi pl o c a l _ o u tf 5 】簸理哥 ;爰詹,进蟹黯壶选择处理,然盖经过 n f _ i p _ p o s t _ r o u t i n g 4 i 处理以后发送到网络上。 肉梭模块可菇辩一个戏多个遮样豹钩予滋数遴嚣注蘼挂接,著量程数撂掇经 过这些钩子函数时被调用,从而模块可以修改这些数据报,并向n e t f i l t e r 返回如 下蓬: n fa c c e p t 继续正常传输数据报 n fd r o p 丢弃该数据掇,不再俺羧 n fs t o l e n 模块接管该数据报,不要继续传输该数据撒 n fq u e t r e 对该数据摄进行攘软通赏用于褥数撂投绘蠲户空闻静进程进 第2 0 斑 第二章b t 霹戆应用误潮系统福美理论研究 行处理) n f _ r e p e a t 秀次调爆该镑子甄数 2 3 4 n e t f i l t e r i p t a b t e s 豹傥势 n e t f i l t e r i p t a b l e s 的优点是它可以配置商状态的防火墙,这是i p f w a d m 和 i p c h a i n s 笛潋黄懿工其都无法提供静一释重要功戆。存状态豹陵灾墙黢够指定并 记住为发送或接收信息包所建立的连接的状态。防火墙可以从信息包的连接跟 踪状态获褥该落惑。茬凌囊囊麴镶惠包过滤孵,防火墙酝捷耀熬这些状态售惑 w 以增加其效率和速度。 n e t f i t t 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 是免费的,这对于那些想簧节省费用的人来说十分瑷 想,它可;蔓代饕撼贵的醛火墙释决方案。 最后,最重要的是n e t f i l t 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 xk e r n e l2 4 和 2 。5 豹发蒜以嚣,麴确可戳说,n e t f i l t e r i p t a b t e s 经受经了大爨熙户广泛使用豹考 验。 第2 1 页 笫三章系统总体设计 第五章系统总体设计 前面我们阐述了b t 文件共享系统工作原理、协议规范和l i n u x 系统的 n e t f i l t e r f l p t a b l e s 跨火墙系统,下瑟我们开始本文实现熬系统匏缝稿设计。 第一节系统环境 该系统本质上是一个防火墙系统,个应用了协议分专斤技术的状态镪过滤 ( s t a t e f u lp a c k e ti n s p e c t i o n ) 的控制b t 网络应用的专闱防火墙m 采用了防火墙 结构中的单朕结构,由一台装有l i n u x 系统的双宿主机作为熬本边界防火墙 ( b a s i cb o r d e r f i r e w a l l ) ,实现所有静系统功能。其结构如下i 系统工佟环境嚣 实际上,课题设计鸹骛薯霜络藏鞠谖裂与控裁系统是基予l i n u x 系统戆 n e t f i l t 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 基零疆巢及蒺上懿箕它扩爱模块缳好豹穆羁王痒,稳遮较复象豹、安全蛙更好 的多层防火墙结构。但由于课题系统涉及数据包内容梭查,考虑到效率因素, 不太逶宣数据流量大、结构复杂的薅络环境t 第2 2 页 第三章瑟统总体设计 3 1 1 系统硬件环境 系统硬件环境为: 1 ) 一台配有双网卡的普通p c ; 2 ) 该p c 工作在局域网外联端筒+ 3 1 2 系统软件环境 系统软件环域为: 1 ) p c 安装r e d h a t l i n u x ( 内核版本2 4 以上) 操作系统; 2 ) r e dh a tl i n u x 操作系统内梭作为一个路由器进行配置并且该机器仅用作 防火墙,不掇供任何英它服务; 3 ) 安装宥i p t a b l e s l 2 版本以上; 4 ) 安装本文系统实现的n e t f i l t e r p l p t a b l e s 扩展模块; 5 ) 把i p t a b l e s 命令配置编褥为一s h e l l 脚本文件,以便在扁动时自动运行。 3 1 3 系统应用范围 本文实现系统应用范围为: 1 i p v 4 网络; 2 小溅届域嚼; 3 成出入流量较小网络; 4 不对外提供w w w 网靖服务; 5 传输数据包没有经过加密; 6 本系统是对n e f f i l t e r 内核模块的扩展,仅实现b t 隔络皮用的识别与控 制,构造完熬的防火墙系统则需簧与n e t f i l t e r i p t a b l e s 防火墙系统纂本模 块协同工作。 第二带系绫体系缱梅 上面撮到本文实现的系统实质上是藻于协议分析技术的针对b t 网络应用的 第2 3 页 蒋三鬻慈统总体敬计 状态趣捻测辫火墙。状态镪梭溅防火蟪是最鞭一代的黪火壤技术,一般豫第三 代防火墙。这类防火壤检查i p 包的所商部分来判定是允许还是拒绝请求,是网 前最先进的阕络罄防火墙。状态包检测技术检粪所裔的o s i 屡,因此它提供的 安全程度远商于包过滤防火墙。 本文设计系统跟踪所有来照内部网络的请求信息,菸自动幸訇建动态状态袁, 然后检测所有来自于外部网络的数据包;如果泼数据包是响应内部网络的请求, 藏允许通道;如聚不是,就撮绝。 其结构如下图所示: 状态包检测防火壤体系缝搀 圈5 状态包检鸯舫火墙体繇结构囤 j 毙井,系统不楚采用传统酶、簿革携字符串琶粥,稻是针对晦议遂_ i 亍都分解 鹤。系统瓶潮络爱读敬数摇包,根据已宥的过滤舰鲻过滤异常的逡接,产生相应静 蒋2 4 廷 堑三童至竺璺竺堡盐 给网络层。网络层根据返回的安全行为对相应的通信产生相应的动作,并在状态 h a s h 表中保存相应的状态,产生适当的报警信息和日志。 第三节系统总统数据处理流程 当数据包到达l i n u x 防火墙主机网络接口时,防火墙会对其进行检查,看这 些数据包是否属于一个已经通过防火墙并且正在连接的会话,或者基于一组与 包过滤规则集相似的规则集对数据包进行处理。它与简单包过滤的区别在于对 数据包的检查方式上。 具体逻辑数据处理流程如下: 1 ) 防火墙检查数据包是否是一个已经建立并且正在使用的连接的一部分; 这是通过系统维护的合法连接表来实现的。防火墙通过查看数据包的特 征是否与连接表中的某个连接相匹配来判断数据包是否属于某个连接。 2 ) 如果数据包和连接表的各项都不匹配,那么防火墙就会检测数据包是否 与它配置的规则集相匹配。本文设计的系统也和大多数s p i 防火墙一样,与包 过滤防火墙的规则相似:都是源p 地址及源端口、目的口地址及目的端口以 及使用的协议等头信息。 3 ) 在数据包通过类似简单包过滤防火墙规则集的检查后,防火墙就会将该 数据包转交下面规则处理。并且防火墙会在其连接表中为它刨建或者更新一个 连接项。 4 ) 协议不同,对数据包的检查程度也不同。在一些使用频率极高的协议中 存在着许多总所周知的并且被经常利用的漏洞。为了获得更好的安全性,防火 墙设计者在防火墙中加入查看数据包数据部分内容的模块,然后根据数据包的 内容来决定是否转发该数据包。在本文实现的系统中,为了识别b t 网络应用, 加入了对t c p 及u d p 的数据包内容进行检查,对舯协议进行分析模块, 来实现系统设计功能。 5 ) 在数据包通过以上步骤检查后,防火墙会对其进行转发。 图示为数据包逻辑处理流程: 籀2 5 页 第三章系统总体设计 数据包到达防火墙接 口 瓮一一 搿牒 下 夕l 数舳雠内存髓卜- v * 规则 么。 : 。 薯萎鍪蓉罟暴裂 拒绝或丢弃数据包 进行日志记录 数据处理逻辑流程 6 ) 没有通过检测的数据包( 包括普通包过滤规则集和数据包内容检查) , 会被拒绝转发或者丢弃,并进行日志记录。 7 ) 防火墙通常对t c p 包中被设置的f 矾位进行检测或者使用计时器来决定 是否从连接表中删除某个连接。 第四节模块捌分与设计 本文系统实现的n e t f i l t e r i p t a b l e s 扩展模块主要从i s o 网络参考模型( o s i ) 第2 6 页 第三章系统总体设计 的第四层及其以上层( 主要为传输层和应用层) 实现b t 网络的识别与控制。可 以分为两部分: 对内核n e t f i l t e r 的扩展 这部分包含b t 网络应用识别的的所有功能模块; 对i p t a b l e s 的扩展 内核模块的命令行应用接口,实现对内核扩展模块的控制功能,根据实 际应用的要求完成系统的灵活设置。 对内核n e t f i l t e r 的扩展部分又可以详细划分为如下的子模块: 包过滤子模块 完成传输层数据包协议及应用识别,并根据识别结果对数据包进行分 类,以便对不同类型的数据包作不同的后继处理。 协议分析子模块 相对n e t f i l t e r 内核来说独立的一个模块,完成协议数据包的分析,为进 行后继的数据包内容检查做好准备。 包内容检查子模块 - h r r p 协议数据包内容检测模块 对h t t p 协议数据包检测,识别出为b t 网络应用服务的h t t p 协议数 据包,实现从传播途径上遏制b t 网络应用。这其中又细分为h t i p 请求 ( r e q u e s tm e s s a g e ) 消息检测功能模块和腓响应消息( r e s p o n s e m e s s a g e ) 检测功能模块。 特定t c p 、u d p 数据包检测模块 完成对符合根据用户应用需求而设定的包内容检查规则的传输层数据 包进行b t 网络应用检测与统计。 下面进行相对独立的协议分析子模块的设计,其它模块( 包过滤模块、包内 容检测模块及其各小子模块) 的设计实际上也就是防火墙规则集的设计,模块 相关性很大,作为一个独立部分放入下一章进行讨论。 第2 7 页 第三章系统总体设计 第五节协议分析模块设计 本文系统采用了协议分析技术,免去了传统应用代理防火墙的数据要穿过所 有的协议栈到达应用层,应用层对数据进行分析、重组后,穿过所有的协议栈返回 的延迟大大提高了系统的性能,很好地解决了效率与性能之间的矛盾。 协议分析技术不是传统的基特征的模式匹配技术,而是一种智能地全面地检 查网络通信的技术。它能够知道各种不同的协议是如何工作的,并且它能够全面 地分析这些协议的通信情况,以发现可疑的或异常的行为。对于每个应用肪火墙 能够根据r f c s 和标准实现来验证所有的通信行为,只要发现它不能满足期望,就 能够作出响应处理。 本文系统主要关注应用层协议分析,即腓协议分析。舻、t c p 、u d p 等 底层协议以及b i t t o r r e n t 对等协议的分析不再涉及。 本文的h ”r p 协议分析引擎设计成为一个单独的模块。该模块的功能和任务 如下: 首先区分进入的数据包是请求( r e q u e s t ) 、响应( r e s p o n s e ) 还是其它类型 ( o t h e r ) 。对请求( r e q u e s t ) 及响应( r e s p o n s e ) 消息数据包进行协议分析,得 出如下所示的一张二维表 f i e l d n a m e ( 参数域名)d a m ( 域数据起始位置)e n d ( 域数据结束位置) 卜 域名有效取值范围 注:f i e l dn a m e 应该属于我们选定的集合 请求( r e q u e s t )响应( r e s p o n s e ) r e q u e s t - l i n ea c c e p th o s ts t a t u s - l i n e u s e r - a g e n t 可选取值 c o n n e c t i o nd a t e t r a n s f e r - e n c o d i n gc o n t e n t - l e n g t h c o n t e n t - l o c a t i o n c o n t e n t - t y p ee x p i r e s c o n t e n t - d i s p o s i t i o n 第2 8 页 第三耄系统总体设计 其它类型的数据包不馋处蠼:谚求( r e q u e s t ) 及晌皮( r e s p o n s e ) 瀵患孛其 它参数域忽嗡。 废用h t i p 协议分梃g l 擎艇靛楚理滚程为; 愈j 申 申l 协议转折模块处理流狂 第六带模式匹配算法 本文系绫遴嚣字褥串模式匹配融零横式敷配袋是了b m 算法,游谈努援嚣罴 蠲靛多模式器怒算法鸯a c 簿法。下蕊势剐镄萃奔绍一下采罱麴单模式篷聚筹法 及多模式算法。 蒹2 9 贾 第三鼗系统总体没计 3 6 。1b m 冀法 b m 葵法戆t 9 7 7 每b o y e r 秘m o o r e 设计豹一个字簿率单模式精确敬辩的簿 法,商着非常高的效率。b m 算法的一个最盎摄酾特点是,在对字符审的诞配过 程巾,可以霹过缀多无用的字符,不击对无用的字符进行匹配。通过遮靴跳跃 戏瓣嚣配,薮褥了掇离瓣执行效率。 b m 冀法鲍基本愿想如下;假设p a t t e r n 翁长度为1 1 1 。先令p a t t e r n 释t e x t 左 对赛,然蘑对p a t t e r n 审最蒋一个字符与箕在t e x t 牵籀瓣盘酌字符t t m 】避行托较。 翅聚e e 较躺结果楚不匿配,群么我稍接着考察t f 撒1 在p a t t e r n 中畿现的最右经嚣, 然嚣根据这个经受移动p a t t e r n 。 萼孥p a t t e r n 耘t e x t 左对齐嚣,p a t t e r n 中最瓣个字符与其在t e x t 中对应字符 魄较的结果露下蘧鼹移可戆。 第一种情撬是:t l m l 穰零没有在p a t t e r n 中强掰一个佼漾出璇,那么我们可以 放心大胆她姆p a t t e r t l 翱后移动m 个字蛰,然羼将p a t t e r n 审最盛一个字符与它瑷 在掰瓣应的t e x t 中的字簿( 郎t 2 m ) 遴杼魄较。 鹪二耪穗援是:魏襞t m 】楚p a t t e r n 孛弱第箍个字稽,鄹么我 瓣霹珏将p a t t e r n 肉爱移动m - n 个字蛰。 倒如:交本t :t w op i u st h r e ee q u a l sf i v e 模式w :o n e p l u s t w o 首先从模式串黼避后一个字符o 开始岛文本中的字符f 进行比较 j 艮明显 事r ,因为r 寒在模式中出现,蕊以d 貅1 2 ,蹲搂斌枣鞠蠢潺秘1 2 诬。翔下爨示: 文本t :t w op l u st h r e ee q u a l sf i v e 模式w o n e p l u s t w o 瓣扶横式事的最藉一个字符o 开始与文本敬字符逐个进行跑鞍。 3 6 ,2a c 舆法 a h o 彝c o r a s i c k 按述了一种盛爝露限获悉裔蘸祝遂行高效爹模式嚣辩静算 第3 0 页 第三章系统总体设计 法,也就蔻a h o c o r a s i c k 算法。该算法是把掰有的关键字合并到一个集合中,利 用商限自动机的原理同时接受集合中的所有串,自动机的构造使得每个状态仅代 表一个蓣缀,当文本中酶下一个字符不是模式期待接受静下一个字藉时,转至l 一 个模式的最长前缀所代表的那个状态,这个状态也就是当前状态的适当的后缀。 宙予我们佼在协议分辑对运磊多模式匹醮算法识掰出h t t p 协议参数域名 称,实际的需求决定了当下的其它多模式匹配算法及对a c 算法的改进算法不能 绘我餐带亲更驽懿啜率,因瓣我锅采耀了篱擎翡a c 葵法。 第3 1 页 第四章防火墙规则设计 第四囊防火墙规则设计 从上辇躲系绞数据处理滚程孛可以蠹到,b t 嘲络应用识别控制蓉绞鲍辫 火墙援章癍该分薅类: 1 ) 普通蛉包过滤熳则: 2 ) 以及数据甓内容检豢魏剿。 除匹配规则外,逐需要定义对数据包处置规则,决定系统对符舍定条l 牛的 数撼包的处理。 下面我们对两类规则分另4 加以设计。 第一恭鬻迸的包过滤规粼 由于本文实现的系统是专对b t 网络应用的,而b i 威用的b i t t o n 站n t 对等协 议与其元臻惑请求和确应消惠疑及冠信患文件的发布虚掰酶h t t p 漭议都是高 豢应臻协议,主要使用t c p i p 协议簇中的t c p 协议,少量应用了u d p 协议。 困藤,在镪过滤翘则设计时我搦主要考惑网络篷豹p 爨议及绩输屡静t c p 协议 帮u d p 按议,其它协议及瓣捺议疯瑟蠢l i n u x 系统离翡n e t f i l t e r i p t a b l e s 处理, 我们不关淀。 溉劐1 :t c p 魏议艇源滚搿母等于裙或者8 0 8 0 ; 规则2 ;t c p 协议最目的蜞日号等予8 0 或鼗8 0 8 0 ; 瓶则3 ;t c p 揍议息源或者强抟端默号小予1 0 2 4 : 规则4 :t c p 协议凰源域者目的端口号为6 8 8 1 - - 6 8 8 9 或者2 3 3 x x 的; 规则5 ;t c p 协议其它端豳; 规则6 :u d p 协议且源或者目的端口号为6 8 8 1 - - 6 8 8 9 或者2 3 3 x x 的: 规剐7 ;u d p 协议箕它端嗣。 瓶刚8 :默认情况。 我钢把包避滤瓣瓣洋绥划分为鞋上撩况,这样便予我钠进行势析鞋歉璃能扩 袋,绻强控稍黪灵添榷。实舔设诗实魏簿一捷蕊瓣可戳食并在一起。鲡墒日号 第粘更 第四章醛二j 壤瓣则设计 麴区分,我粕可以在一象援则串热以蹶分,逶过返溺馕粒不溺实理不鼹麓磊缝 处理及跳转。再如,规则5 、规则7 及规则8 差别仅在于协议不同,实际实现时 可以不加区分、同等处理,这棒处蠼效率会鸯所提高,但镊矬了控割的灵活蠼。 本文窳统中加于隧分,原因为b i t t o r r e n tp e e rp r o t o c o l 协议多采用t c p 协议 进行数据傣输,区分t c p 、u d p 可以方便我们只对t c p 数攒包进行巍蜜拴查, 略过u d p 数据包梭查。 另辨,我们没霄涉及到辨地蛙,它对扶数搬包邀行b t 疲髑识羽没糍裁黪, 因为我们没有在系统中维护张表记录某个i p 地址与b t 网络成用有关。但我 们_ 珂以把已确认的b t 网站的狞地址加入包过滤拒绝规员n 集中,阻止内髓用户 对其进行访问。 如果内阏霈要提供w w w 服务,w 以道过阏定网络接口,靼设定e t h o 接鼯 连接内网、接口e t h l 连接外网。规则相应地更改为接口与协议以及端口的组合, 瓿谣区分数攒毯静避密。 最后,由于本文所实现的系统属予状态包检测( s p i ) 防火埔,考虑剽数据 镪蹩器属予菜个已存在连接,上面的瓣鄹集霈要分两种情况,根据情况不同两 避行不同簸蠖。 第= 常数据包内容枪奎规蚓 农b t 文转共事蒹绫孛藏用裂的痊媛屡协议京疆令:黼漆谈耪b i t t o r r e n t p e e rp r o t o c o l 协议。因丽,在b t 网络成用识剐均控镑4 系统中,数据包晦客检查 规则同样分为蕊类: 1 ) h t t p 协议规则链( h t i p 镳) ; 2 ) 霸b i t t o r r e n t p e e r p r o t o c o l 协议规鄹链( b t p p 链) 。 4 2 1h t f p 协谈靛刘链设计 h t r p 游议是b t 文件共攀系统鸯效遴嚣文捧分享铸掇靛羹婴一环。b t 静元 络患交箨激及冠意纛请求帮豌蔽湾塞郝怒逶避h t r p 傍波进行豹,进采b t 应搿 筹3 3 虿 第鞠章防火墙蕊m g 设计 的开发更是对h t t p 避行b t 应用扩展。因此,想要很好地控制b t 网络应用, 必然要求对稔议进行有效逸燕控及楚理。 h t t p 消息包禽多种请求、晌成消息,每种消息又包含多种头( h e a d e r ) ,每 个头又可髓惫台多种参数,虽然常翔簿参数字 不多( 一般十释友右) ,毽不同组 台氆碍戳差异很大、缀复杂。另一方谣,我们需要题配识剐韵、可戳用来有效 识烈b t 网终应蠲的颈是蒸本上都娃予h t r p 游患头是( 一粼分是懿予b t 瓣 h t t p 蛰议扩展部分) 。戴外,h t t p 游没数攒包一觳较大,絮梁直接对蒸数据 包内密进行暇配消耗资源很大,蕊思效果也不大理想。总上所述,对h t t p 进 行协议分辑,有静对性的对数握包禁段内容进行处理,瓣扶i - r f l p 携议方瑟遴 行b t 网络应用识别具有重要作用。 下露为可以明来识剐b i t t o r r e n t p e e r p r o t o c o l 魍镶惑: 1 ) 请求消息中请求行当中魄u r i ; 2 ) 蛹癍消息中c o n t e n t - - d i s p o s i t i o n ; 3 ) 响应消息中c o n t e n t - - t y p e 参数域; 4 ) 响应消息中e n t i t y 。b o d y 起戆处媾者h t f p 扩震部分。 请求消息中可以用于识别b t 网络廊用的信息较少,只有u r i 含有比较可靠 静蓿惠,对系统参数域分桥意义不大。现在许多w w w 服务经过联务器端编稷 开发后,客户端请求信怠u r i 中仅禽脊服务器端分配的一个资源d ,完全隐去 了实际请求内容辔怠。对这样的u r i 遴行分析恶经秘意义,这靛限裁了获请求 港惠孛确定b t 应耀蠹冬霉靠性。 辫方瑟,由予嚣信墓文佟下载舞一般需要癌系统爨动打开b t 下裴程序送 行文 孛下载,使褥晌疯演惑串瓣建议缳存文彳辱名( c o n t e n t - - d i s p o s i t i o n ) 班及文 件关连类型( c o n t e n t - - t y p e ) 都可以缀好地髑予识别b t 鼹络疫鲻。姥铀, 疆黪 数据起始处或者扩熙部分黪使用b 编璐熬元镕崽也霹 美箱子识剃b t 潮终疫焉, 并且商很好的效果。同样,元僚息请求及响应消息也可以根攒其中的b 编码的 元僖息进行b t 嬲络识捌。 帮3 4 页 第l ! 譬章防火墙规1 1 i 设计 个典型的 册p 协议请求元信息文伟的消息 0 0 0 0 0 0 1 0 0 2l3j 4e a4 00 0 e 0 0 6 e 4 4 a0 0 a0 4 0 do a 7 2 4 嗣,l 婉喊 0 0 0 0 0 0 2 0 :072 70 df50 口s 05 c6 a 3 056c 56 76 a 3 s5 0 8。,p 、) 0 v 簧) s p 0 0 0 0 0 0 3 0 一f f l3 98 8 8 0 0 04 74 5 5 4202 f 6 4 6 f7 7 6 e 6 0 ,0 e 1 ,d o w n i 0 口0 0 0 04 0 - 6 6 16 42 e ? 06 87 03 f6 9e43 d3 13 8 3 9 0 23 9o 鲥曲p 1 d = 1 e 9 0 9 0 0 0 0 0 0 s 0 :0 s2 66 6s 9 5 0s 5 d0 5 4 3342 5 13 7 2 s 4 23 9s j l e = 艟4 矗,z b $ 0 0 0 0 0 0 6 0 2 s4 s4 42 5423 s2 e 4 0 3 42 s4 23 22 s 4 6 4 32 e 幺e d # b s c 4 誓b 2 等f c 聋 0 0 0 0 0 0 7 0 :4 40 3 2 5 4 6342 e 7 45 f7 27 25 s e7 2 66 s 4d 2 糖4t o r r n 如t 矗 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 o o o o 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 0 6 d 7 8 2 6 s 7 8 s 8 8 e 6 0 2 z l i l s 47 9 8 0 0h r r p r 7 j1 c c e d t 1 n 矗呵e ,9 1 r ,m g e 7 xx 1 t m a p 一 1 m a g e 7 ) 彗- 0 辱一i m a 掌e 7 p p e g 。a p i l c a n 栅 x # h k * a v e fl a # h ,p o i l i :a t l o n v n a 躲一骶i a p p 1 1 c a t l 曲v n d 静 8 3 2 3 8 i 器ii ;2 ;:j ;ii ;1 2 璧l ;器; 拜l ;j :! 12 5 :! ;嚣:嚣慧;。嚣m 0 0 0 0 0 “o 2 a2 f2 a o d 0 a 5 2 6 s6 6 6 s7 26s7 2 3 a 2 0 6 074 * *r e f 鼎h t 一个典型的h 门,协议响应请求消息 第3 5 耍 ”蹦 4 0 5 7 a e t f 0 3 5 2 6 6 6 6 6 0 7 , 8 8 7 l e f c e l d i 6 7 s 6 6 6 6 id$6fo e 2 ,6 6 2 6 6 6 2 3 0 d 9 s 4 d 9 o 4 l 2;孤钯皓 9 3 c 0d9133f 3 6 2 7le62 7 i e l e c 7 $ 8 e 3 4 6 2 6 7 8 7 6 4 a 9 d o 0 b o s f i2,6686 5 d 7 4 0 0 3 0 d 9 i;872s 如”m“缸nn蛆”如如扯舶抽妇能 d f l d a 7 d o 4 9 滋黼黜辫潞l m a p p 一 8 萤雾黟k瓷。譬咖芸嚣絮m竺墨誊鑫茹。村”蹦弧神豫昨缸搪昭静神阳把钯 钯姐粥把她她舱挪瞄盼蛐孙m 甜m锯酶坼甜搪知雅姐舶弛辐撼驰租勰铽“瞄瞄“嘛h“ f 0 a 3 6 0越n钯西钯黔h她耗抟辑如 0 矗s d 0 7 0 擞黑攥瑚黜瓣燃咖 0 0 0 0 0 0 0 0 :o ds 0 o0 a a 1o d0 0 0 a 4 2 d 0 b b f o0 日0 04 5 0 0p 上 b 五? + e e 0 0 0 0 0 l o :o sd c8 7 9 34 0 0 0 3 00 6d dd 8o a7 2072 7 0 a0 a牵填0 慕藏 0 0 0 0 0 0 2 0 :觚0 d0 0 s 0 0 df6c s6 ,6 a3 ss c 6 a32 1 蛐1 0 p 雠g 5 、1 2 a p b o 口0 8 0 3 0 :1 92 0 d 8e b0 00 0 95 5 45 02 f 0 l2 00 l 2 0 0 2 讹 h 1 _ r p il 2 0 0 0 0 0 0 1 0 :3 03 0 2 04 f 始0 d 日a4 6 l 7 6 e3 a2 0 4 6 7 2b 90 q 能d a t o 际1 0 0 0 0 0 0 5 0 :2 02 03 03 72 04 畦e i7 e 2 0 3 23 00 03 2 03 i3 6 ,0 7h t v0 0 0 4l s 0 0 0 0 0 0 6 0 :0 a3 03 e3 a 3 s342 04 7 4 d5 o d0 a536 5 7 27 s 8 95 4 国ts e r 可 0 0 d 0 8 0 7 0 :6 57 20 a2 0 l7 06 l6 3 6 8 5 s2 3 l2 e3 32 e 3 2e r 矗c h e 132 0 8 0 0 0 0 8 0 :0 82 0i 85 56 e 5 9 7 8 0 9 2 0 6 d6 f6 45 6 77 a 6 98 ( u n l x ) 衄dq z i 0 0 0 0 0 0 9 0 7 02 f 3 12 e332 e3 23 6 2 e3 16 1 2 0s o 4 85 02 td l32 61 ap 髓。, 0 8 b n b 0 a 8 :3 2 e3 32 83 40 d 0 a s 8 2 ds 8 6 f7 ,6 s7 26 s8 44 3 4x p o 撇础 o o d 0 8 0 b b :2 d4 27 ,3 a2 0 5 04 05 02 3 42 e 3 3 2 e3 40 吐0 6 一b v :p h p 43d 0 0 0 0 0 0 c o :4 3 6 l6 e7 4s s6 e7 40 d6 46 7 37 06 l 7 36 97 te 龇t e n 一寸l # o s l t 0 0 0 0 0 0 d 0 :6 96 l6 # 3 a2 06 $ 6 96 c5 s6 es 1 6 d6 # 3 畦3 s7 1 o nf i l

温馨提示

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

评论

0/150

提交评论