(计算机软件与理论专业论文)大流量主干网络中实时网络监测.pdf_第1页
(计算机软件与理论专业论文)大流量主干网络中实时网络监测.pdf_第2页
(计算机软件与理论专业论文)大流量主干网络中实时网络监测.pdf_第3页
(计算机软件与理论专业论文)大流量主干网络中实时网络监测.pdf_第4页
(计算机软件与理论专业论文)大流量主干网络中实时网络监测.pdf_第5页
已阅读5页,还剩82页未读 继续免费阅读

(计算机软件与理论专业论文)大流量主干网络中实时网络监测.pdf.pdf 免费下载

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

文档简介

摘要 随着网络应用发展,给人们的生活和工作带来了极大的方便,特别是在教 育领域,网络应用在科研、教学、考试等多个方面的得到充分的应用。但这些 也带来了新问题,如数据安全、病毒入侵、黑客攻击等。 当前中国教育网( c e r n e t ) 中使用的安全防御技术还不多,我们通常使用 的安全技术和产品是杀毒软件、防火墙和入侵检测,但它们在防止网络泄密和 网络泄密取证上都显得有些不足,因为这时需要对信息内容进行分析和审计。 一个基于报文内容的网络信息审计监测系统通过对报文内容按关键字进行的扫 描来发现网络流量中的敏感信息,很好地解决了这个问题。 本文首先阐述了安全问题产生的原因、信息分析审计系统原型和网络信息 监测技术。再对网络信息审计系统的实现进行了研究。然后对网络信息审计系 统相关技术进行了研究,分析了网络报文捕获的瓶颈,并根据实际情况对算法 进行了简化。最后对基于报文内容的信息审计监控系统进行了设计和实现。同 时基于流量分类的异常行为分析能力也进行了一定的探讨。 关键字:信息审计、t c p i p 协议分析报文重组 a b s t r a c t w i t ht h ed e v e l o p m e n to f n e t w o r k , u s e r sh a v em o r ea n dm o r e q u a l i t yo f s e r v i c e s ( q o s ) ,e s p e c i a l l y i ne d u c a t i o nm l - e a i tw a su s e di nr e s e a r c h i n g 、t e a c h i n ga n de x a m b u t i ta l s ot a k e ss o m e p r o b l e m s , j u s ta sh o w t op r o t e c tt h es e c u r i t yo fd a t a 、i n t r u d e db y v i r u sa n da t t a c k e db yh a c k e r s i ne d u c a t i o n a ln e t w o r k ,t h e r ea r ef e wk i n do f s e c u r i t yt e c h n o l o g y w eu s a l l yu s e a n t i v i r u ss o f t w a r e 、f i r e w a l la n di n t r u d e dd e t e c t i o ns y s t e m , b u ti t sn o tg o o df o r p r o t e c t i n gt h el e a ko fs e c u r i t yi nn e t w o r ka n dg e t t i n gt h ep r o o f o fi t s ow en e e dt o a u d i ta n da n a l y s et h ec o n t e n to f t h ei n f o r m a t i o n w ec a ns o l o v et h i sp r o b l e m b yu s i n g a nn e t w o r kd e t e c t i n gs y s t e mb a s e do nc o n t e n to ft h ep a c k e t , t h i ss y s t e mc a l lf m dt h e s p e c i a li n f o r m a t i o n i nt h et r a f h cb y s e a r c h i n g t h e k e y w o r di nt h ep a c k e t t h i sd i s s e r t a t i o ni n c l u d et h er e a s o no f s e c u r i t yp r o b l e mb e g i n n i n g 、t h em o d e lo f i n f o r m a t i o na n a l y s es y s t e ma n dt h et e c n o l e g yo fi n f o r m a t i o nd e t e c t i o n w eh a v es t o o d t h et e c n o l e g yo fi n f o r m a t i o na u d i ts y s t e mi nn e t w o r k w ea n a l y s et h ec h o k e p o i n to f c a p t u r et h ep a c k e ti nn e t w o r ka n dp r e d i g e s tt h eb o y e r - m o o r ea l g o r i t h mf o rc u r r e n t e n v i r o n m e n t a tl a s tw ed e s i g na n dr e a l i z et h ei n f o r m a t i o na u d i ta n dd e t e c ts y s t e m w h i c hb a s e do nt h ec o n t e n to fp a c k e t t h ed i s s e r t a t i o na l s od i s c u s s e dt h ef l o w c l a s s i f i c a t i o na l g o r i t h m k e y w o r d s :i n f o r m a t i o n a u d i t | t c p i p | p r o t o c o la n a l y s e p a c k e tr e a s s e m b l y i l 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的 研究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含 其他人已经发表或撰写过的研究成果,也不包含为获得电子科技大学或其它教 育机构的学位或证书而使用过的材料。与我一同工作的i 司志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示谢意。 签名: 日期:如j 年5 月一e l 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论 文的规定,有权保留并向国家有关部门或机构送交论文的复印件和 磁盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位 论文的全部或部分内容编入有关数据库进行检索,可以采用影印、 缩印或扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名: 日期:跏j 年f 月i7 日 大流量主干网络中实时网络监测 1 1 课题背景 第一章绪论 计算机网络尤其是i n t e r n e t 应用的飞速发展,对人们传统的生活、工作、学 习方式及社会很多行业产生了深远的影响。但当我们从网络中方便快速地获取 信息的同时,也面临着个人隐私、企业的技术机密或者商业机密和政府行政机 关的国家机密通过网络向外泄漏的安全问题。 随着网络信息安全事件的频繁发生,网络信息安全已经成为人们关注的焦 点问题。当前很多企业及科研机构都在从事这方面的工作和研究,形成的产品 类型主要有病毒查杀软件、防火墙和入侵检测系统。 病毒查杀软件是用于检测和清除计算机病毒的重要信息安全产品,一般利 用模式匹配技术,配合定期更新的病毒特征库来检测和清除计算机内的病毒。 防火墙是实现网络信息安全最主要的技术之一,其主要思想就是在内外部 网络之间建立起一定的隔离,控制对受保护网络的访问。实现防火墙的主要技 术有数据包过滤、代理服务和状态检测。总体上来说防火墙是一种被动的防护, 不经过防火墙的信息流无法受防火墙的保护,即使经过防火墙的信息流也未必 完全受防火墙的保护,特别是它不能防止数据驱动的攻击( 如病毒等) 。另外, 底层协议的防火墙也不能保证上层协议的攻击。 入侵检测系统是另一种实现网络信息安全的主要产品,它能在入侵攻击对 系统产生危害之前,监测到入侵攻击,并利用报警与防护系统驱逐入侵攻击。 在入侵攻击过程当中,能减少攻击所造成的损失。在被入侵攻击后,可以收集 入侵攻击相关信息,作为防范系统的知识,添加到知识库内,增强系统的防范 能力,避免系统再次受到同种类型的入侵。入侵检测系统被认为是肪火墙之后 的第二道安全闸门,在不影响网络性能的情况下对网络进行监听,从而提供了 对内部攻击和外部攻击的保护。 虽然现在大部分的网络都已经安装了以上三类产品中的一种或几种,但每 当操作系统的一个漏洞披露或者是一种新的网络攻击技术出现时,就会产生发 生大量威胁网络安全的事件。据美国财经杂志统计资料表明,3 0 的入侵发生在 有防火墙的情况下,2 0 的入侵发生在有入侵检测系统的情况下。病毒查杀软件、 防火墙和入侵检测系统并不能完全保证网络的安全,来自网络内部的恶意攻击 大流量主干网络中实时网络监捌 或网络管理员配置的失误给网络安全造成的危害的概率更大;而且它们尤其在 网络泄密的防范和取证上无能为力。近几年来人们渐渐认识到了网络信息审计 监控系统的重要性,它作为防火墙和入侵系统的一个必要补充,通过设定关键 字对网络报文内容的进行扫描来发现网络流量中的敏感信息,特别是对网络泄 密可以提供侦查的线索和证据;并能记录网络流量相关内容,为发现新的入侵 手段提供素材。 1 2 课题来源和研究的内容及意义 本课题来源于十五“2 1 1 工程”公共服务体系建设项目“c e r n e t 高速地区 网络重点学科信息服务体系建设”中的专题3 “c e r n e t 主干网运行安全基本 保障系统”。根据项目可行性研究报告的要求,要在c e r n e t 与其他网络互连( 包 括国际国内互连) 接口以及c e r n e t 主干网与各省接入网的接1 2 1 部署分布式网 络安全监测点4 2 个,一方面实时采集和储存网络流量数据,实时监测网络运行 安全状态;另一方面将为本地或异地的后续安全分析和处理提供数据支持,及 时响应病毒入侵、黑客攻击等安全事件,保障c e r n e t 主干网的安全、稳定、 可靠运行。 本课题着重探讨了网络信息审计技术所涉及的多个方面,并在某些方面进 行了改进。本文主要内容包括: 1 ) 网络信息监测技术的研究 对现有网络信息监控技术进行研究,总结了常见的网络信息监控系统的实 现方案,分析了各种方案的思想、特点以及适用的环境。在此基础上,根据用 户的功能需求,对本系统的进行了设计和实现。 2 ) 网络报文捕获技术的研究 对网络报文捕获、过滤进行了分析,以个网络报文捕获工具w i n p c a p 为 例,分析了软件方式的报文捕获的瓶颈。 3 ) 模式匹配算法的研究 本系统的主要功能需求就是根据关键字对网络报文的内容进行审计,模式 匹配的效果直接影响到整个系统的性能。我们对常用的模式匹配算法进行了分 析比较,并根据实际情况,对b o y e r m o o r e 算法进行了简化。 4 ) 常用应用层网络协议的研究 通过对应用层常用协议( h t t p 、f t p 、s m t p 、p o p 3 等) 实现的研究,使 一2 一 太流量主干网络中实时网络监测 系统具有网络报文的重组功能。 5 ) 对流量分类算法的一些研究 要达到有效的监测网络流量,必须对流量进行分类统计,在此基础之上才 能有基于统计的异常行为分析能力。我们通过分析基础的流量分类算法 ( r f c 3 7 2 2 ) ,得出在千兆网络环境下他们的一个性能分析。 通过对这些理论的研究和实际的项目开发。最终得到一个拥有实时快速网 络信息审计能力的网络信息监测系统和一系列的测试数据,这些都有较高的经 济和学术价值。 1 3 作者的主要工作 本课题从2 0 0 3 年9 月开始至今,其中在2 0 0 4 年1 0 月验收完成一个阶段性 的基于内容审计的监控软件。作者在课题进行的同时,以“大流量主干网络中 实时网络监测”为题,开始进行硕士毕业论文准备工作。在导师的悉心指导下, 确定了论文研究的主要内容,在一年多的时间里,作者完成了以下工作: 参与了课题前期的需求分析; 阅读并分析了大量有关网络信息安全的资料及相关的学术论文,对信息 审计技术、信息监控系统的原型进行详细的讨论和分析; 总结归纳了现有网络信息监控系统产品的实现方案,根据需求分析的结 果,参与了系统的设计; 对实现网络信息监控系统的关键技术网络报文截取、模式匹配算法、流 量分类算法进行了分析研究和改进; 完成了系统中审计分析中心进行了设计和代码实现:协作完成了系统中 网络审计监控工作站和交互控制模块的设计和代码实现。 1 。4 本文的章节安排 本论文内容安排如下: 第一章,绪论。主要介绍课题的背景、来源以及作者的主要工作。 第二章,网络信息监测系统的研究。首先对安全问题产生的根源进行了分 析:再对信息监测系统的原型进行研究;最后总结网络信息监测系统的研究现 状。 第三章,基于报文内容的网络信息监测系统的相关技术。本章首先对报文 - 3 大流量主干网络中实时网络监测 捕获技术进行了研究,重点对系统使用的w i n p c a p 进行了分析;再对t c p i p 相 关知识进行了介绍:最后对模式匹配算法和流量分类算法进行了研究分析。 第四章,系统设计与实现。本章首先确定了系统的功能需求和系统架构, 再根据系统的功能需求对系统进行了设计,最后对系统的主要组成部分网络监 控工作站的关键模块进行了实现。 第五章,本课题研究工作总结。给出了系统的一些测试结果。总结了课题 在提高网络信息监测处理速度方面所做的工作,再阐述了课题迸一步研究的方 向。 4 , 大流量主干网络中实时网络监测 第二章网络信息监测系统研究 2 1 对网络进行信息监测的必要性 2 1 1 计算机系统安全的定义 通常意义上讲,计算机系统安全应该提供保密性( c o n f i d e n t i a l i t y ) 、完整性 ( i n t e g r i t y ) 、可用性( a v a i l a b l i t y ) 。 保密性是指确保数据在计算机中的存储和在通讯介质上的传输时不被泄 露,只有经过允许的人员以经过允许的方式才能使用,保证信息不泄露给未经 授权的人。 完整性是指信息的安全、精确与有效,不因种种不良因素而改变信息原有 的内容、形式与流向;防止信息被未经授权的用户篡改和破环,保证真实的信 息从真实的信源无失真地到达真实的信宿。 可用性是指确保合法用户能够在想要使用系统资源时,能得到服务;不因 系统的故障或误操作等使资源丢失或妨碍对资源的使用,防止由于非法用户耗 尽系统资源而造成对正常使用者的拒绝服务。 2 2 2 计算机系统安全问题产生的原因 系统安全问题涉及到许多方面。首先,安全不是单一的问题。在绝大多数 信息系统环境中,风险点或威胁点不是单一的。这些风险点包括物理安全、逻 辑安全和安全管理等三方面。物理安全涉及到关键设施设备的安全和资产存放 地点的安全等内容。逻辑安全涉及到访问控制和数据完整性等问题。安全管理 包括人员安全管理政策、组织安全管理政策等方向。上述任何一个方面出问题, 都可能引起安全问题。其次,安全问题是动态的。由于信息技术在不断地变化, 信息技术安全问题具有动态性。今天的安全问题到明天也许不再成为安全问题, 而今天无关紧要的问题明天可能成为严重的安全威胁。这种动态性导致不可能 存在一劳永逸的解决方案。 威胁信息系统的因素主要有以下几方面: 1 目前在技术的缺陷 网络通讯协议:目前网络所采用的t c p i p 协议栈( t c p i p 、h t t p 、f t p 、 s m t p 、t e l n e t 等) 大多带有先天性的安全漏洞,因为它在设计时并没有 一5 大流量主干网络中实时网络监测 考虑到很严格的安全保护机制。 通信及电气特性上的缺陷:目前,许多通信技术有安全隐患,这些隐患包括 信息广播、电磁泄露、信号泄露、监听干扰等。 操作系统:目前的通用的操作系统都存在一定的安全隐患,如u n i x 系统的 访问控制机制就有一些固有的缺陷。绝大多数的网络入侵是建立在操作系统 漏洞上的。 数据库体系中存在的漏洞:虽然很多数据库系统都增加了安全性,但实际上 做到安全漏洞较少的仍i e l : l l 少。 其他的应用技术:许多i n t c m e t 应用技术,特别是基于w e b 应用的技术,存 在相当严重的安全漏洞,如c g i 、a c f i v e x 、w e bd bs e r v e r 、w o r d 、e x c e l 中自启动宏功能。 多技术组合产生更多的漏洞:大多数情况下,系统是由多个元素组合在一起 的,这就包含了多种技术。在多技术并存的情况下,更容易产生安全漏洞。 2 系统设计存在的漏洞 个良好的系统设计方案能使各个不同元素中存在的安全漏洞在协同运作 中相互防卫、相互填补。而一个差的设计方案不但使得原来的漏洞得不到填补, 反而产生新的漏洞,即使使用了昂贵的产品,但事倍功半,形同虚设。 3 操作或运行中存在的漏洞 系统运行时没有制定切实可用的安全管理手册和在特殊情况下的应急措施。 在日常运营中,操作人员不能完全按照规则操作,为了方便甚至漏掉某些环 节。 4 其他的人为因素 雇员的破环。雇员最熟悉他们雇主的计算机与应用,知道他们的行动可以造 成多么大的破坏或损害。这方面的例子包括:摧毁硬件设备,种植逻辑炸弹 摧毁程序或数据,不正确地访问数据,把系统“毁坏”,删除数据等。 恶意的黑客、工业间谍和政治问谍的欺骗和窃取行为。 从安全问题产生的根源分析中我们可以看到由于安全问题的动态性,我们 的系统不可能永远安全,同时一些操作和运行过程中的问题,让我们强烈地意 识到网络信息审计的必要性。 6 一 大流量主干网络中宴时网络监测 2 2 网络信息监测系统的原型研究 网络信息监测系统通常是这样一个应用模式( 如图1 所示) ,即数据源数据 的采集和过滤,数据的分析处理以及相关的系统响应和动作,具体的功能模块 包括用于数据采集的探针p r o b e 、数据过滤用的过滤器f i l t e r 以及用于数据分析 处理和触发系统响应动作的分析器a n a l y s e r 。 图2 - 1 信息监测系统应用模式 1 )数据的采集和过滤 数据的采集是信息监测系统的基础,采集效率好坏会严重影响到整个系统 的执行效率,针对不同类型的数据源应该要考虑不同的数据采集策略。数据采 集是由探针p r o b e 完成。 对采集到的数据进行过滤也是非常需要的,尤其是在大批量采集数据时, 这可以减轻数据分析的压力和分析器的复杂度。如果数据采集和数据分析不在 同一地点时,这也可以减少数据的传输量。过滤是过滤器f i l t e r 完成。 2 1数据的分析和处理 数据分析是根据具体的规则和运行参数,从过滤器过滤后得到数据中捕获 符合规则的数据,并进行实时或准实时的分析生成相关的审计报告信息。根据 数据分析的类型可以分为实时分析型的和事后分析型的。在对应用安全较高的 领域,实时数据分析是非常必要的,通常是在过滤器对数据过滤完成后即进行 数据分析。事后分析型则是在对过滤数据进行缓存后,每隔一定时间才进行批 量的数据分析。事后分析型往往是需要对批量的历史数据进行关联分析,对前 一段时间的运行数据生成相关的审计报告等,每次这类分析需要消耗大量的资 源,所以通常是阶段性进行。数据分析是由分析器a n a l y s e r 完成。 3 )系统的响应和动作 系统的响应和动作是跟分析器关联在一起的,属于事件触发型的。当分析 7 大流量主干网络中实时网络监测 器根据规则检查到违规事件时,会通过适当的方式进行相关的报警和阻止。 基于这种应用模式的处理,可以适用很多应用的需求,如网络管理、分布 式信息采集和挖掘、应用监管和信息审计等。本文就是这种应用模式在网络信 息监铡方面的的一个应用。 2 3 网络信息监测系统的研究现状 2 3 1 当前网络信息监测技术 防火墙和入侵检测系统是最常用的网络安全技术和产品,但是对于网络犯 罪取证和网络行为的监控而言,他们是无能为力的,因为网路犯罪取证和网络 行为的监控需要对内容信息的审计技术。内容信息审计也应该是安全网络支持 的功能特性。近年来,越来越多人们投入到网络信息监测技术的研究上来。从 技术研究的领域来看,网络信息监测技术分为两大类: 一类是基于异常的审计技术,它根据报文结构格式的完整性及合法性 ( 包括协议的完整性、数据结构的完整性、应用类型的完整性等) 进行 判定,先定义一组系统“正常”情况的数值,然后根据对当前网络的信 息统计判定当前网络是否正常,例如对病毒的审查和对黑客程序的审查 就属于这类审计的内容; 另一类是基于报文内容的审计技术,它采用一些智能化的处理技术以及 网络信息报文分割、组合、判别等方面的技术,对网络报文内容实时进 行处理和识别,凡是包含有害、非法、敏感信息的报文,就记录其源 目的i p 地址、源目的端口号、服务类型、报文发生的时间和报文内容 等相关信息,同时报警或阻止干扰这种行为,并形成系统日志提供给网 络管理员和其他有关用户进行事后审计和分析,进而采取相应的安全管 理措施,包括对非法的、不健康的信息进行追查等。 目前的对审计系统的研究大部分都集中在报文完整性和合法性的判别研究 方面,但是基于报文内容的网络信息的实时审计监控系统对于网络信息的安全、 网络的有效使用和国家社会的安全都重要,应该加大在这方面的研究。 3 大流量主干网络中实时网络监测 2 3 2 网络信患监测系统的实现方案 近几年来,随着网络规模的不断扩大,应用服务数量的剧增及计算机网络 的普及,网络流量大大的增加。网络流量增加同时意味着相应的网络信息监测 系统需采集的网络数据的增加,同样的网络信息监测系统的采集分析速度也需 要提高。如果采集处理速度低于网络流量的速度会造成部分网络报文的丢失。 根据对现有的一些系统的分析,网络信息监测系统的实现可以按其采集分析速 度所适应的网络环境分为以下三大类: 1 ) 在m u l t i g i b a b i t 的网络环境下,网络信息监测监控系统都是基于专门的 硬件设备。系统通常是以并列的方式接入网络,通过监听获得所有的网络流量。 专门的硬件设备具有快速采集网络报文能力,同时固化网络信息监测的能力于 硬件设备之上,以达到高速的信息监测的需要。从可以获得资料来看,华中科 技大学提出了一个基于网络处理器来进行高速网络的信息处理的方式,他们采 用i n t e l 的互联网架构( a ) 为硬件设备的体系结构,核心处理器采用i n t e l 公 司的网络i x p l 2 0 0 。利用i x p l 2 0 0 的高速网络报文处理能力和可编程能力来实现 高速网络环境下的网络信息审计。 2 ) 在千兆的网络环境下,网络信息监测监控系统都是软硬件相结合的。因 为纯软件的网络信息监测系统的速度还不能达到对这么大网络流量的完全监 控,通常需要一些硬件设备的辅助才能实现对网络流量的完全监控。系统是通 过并列的方式接入网络或通过千兆交换机的镜像端口获得网络报文。根据依靠 的硬件的不同可以分为以下两类: 一类是依靠数据分流器,把网络流量分流到多个可以处理更低流量的纯软件 的网络信息审计系统。数据分流器工作在网络的第三层( 路由层) 。一般情 况,数据分流器是按照某种规则( 如协议或者i p 地址) 来分流数据。例如 按i p 地址进行千兆网络环境下数据分流,如果现有的网络信息审计系统的 处理能力能达到1 0 0 m 的速度。就把该网段的流量按碍地址分成1 0 个网络 流,每个网络流由一个网络信息审计系统进行处理,这样能达到千兆网络环 境下网络信息审计的要求。为了保证数据分流器的性能,同时便于硬件实现, 在数据分流器上不做内容分析,而只做简单的数据包过滤及负载均衡。利用 数据分流器存在一些弊端,当来自于一个i p 地址段的数据或某种应用服务 流量突然增加的时候,数据分流器如果不能够智能地进行分流,则网络流量 超过对口负责的网络信息审计系统的处理能力,就会发生网络报文的丢失。 9 一 大流量主干网络中实时网络监测 如果数据分流器做了智能的流量均衡,当网络信息监测系统需要对网络数据 进行重组还原为相应的文件时,需要重组的网络报文可能被分流到不同的网 络信息审计系统中,这样就不能在一个网络信息监测系统上进行实时的报文 重组;此时要想实现报文重组需要把报文都保存下来。但在千兆的网络环境 下,保存这么大的数据量是不现实的。依靠数据分流器的网络信息审计系统 与上一种m u l t i g i b a b i t 环境下的网络信息监测系统相比,它可以做成比较独 立的软件产品,而不需要针对某种专门的硬件设备进行专门的开发。 另一类是可以通过专业的网卡来实现对网络流量的高速处理。通常这些专业 网卡通过增加一些硬件机制,来提高网络报文采集分析速度。例如新西兰公 司e n d a n c e 提供了种针对包捕获进行优化的设备卡:e n d a n c ed a g m o n i t o r i n g i n t e r f a c ec a 一。他们的设备卡通过硬件优化,很好地解决了高 速采集网络报文的难题。这种设备卡为每个收到的数据包通过卡载硬件产生 一个时间戳,并将它们传输到系统存储器,这些过程都由更智能的硬件来管 理;同时配合对网卡驱动程序“零拷贝”技术的改进,减少了报文采集时操 作系统的间接开销。基于这类专业的网卡也可以满足千兆网络环境下的网络 信息监测的需要。但依靠这类专业的网卡的网络信息监测系统也是躐硬件紧 密相关的,因为需要调用具体网卡的a l p i 函数。 3 ) 1 0 m l o o m 的网络环境下,网络信息审计系统几乎都是纯软件产品。系 统通过把普通的i o m i o o m 网卡工作模式设为混杂模式,利用操作系统提供的 数据链路层访问手段或其他工具来捕获所有的网络报文。 上面的分析的第一类和第二类网络信息监测系统都与硬件相关,相关的硬 件也价格不菲,这两类产品并不多见。现有的网络信息监测系统大都是上面所 分析的第三类。通过可获得的网络信息监测系统的产品资料看,可以发现大多 数的网络信息监测系统都是通过采集点采集和过滤网络报文,再把通过过滤的 网络报文发送到一个中心数据库进行事后的分析和报文重组。这种模式有它的 优点,它减轻了数据采集点的工作量,使得采集点的采集速度较快;但因为不 在采集点上进行网络信息的分析,对一些违规的网络连接不能采取及时的行动 去干扰或阻止这个网络连接,而且当网络流量较大时,中心数据库数据会非常 庞大,进行事后分析的效率也会降低。 本课题的系统实现是采用上面分析的第三类,通过在不同的网段设立采集 点,多个采集点协同工作来实现对一个大型内部网整体的监测监控。同时课题 为了实现对网络连接的监控,把网络报文的采集和对网络报文的审计分析都集 一1 0 大流量主干网络中实时网络监测 中在采集点完成,所以提高网络信息监测速度是本课题的一个主要的目标。 2 4 本章小结 本章首先对安全问题产生的根源分析,指出了信息监测的必要性,再通过 对信息监测系统原型和网络信息监测系统的研究现状的分析研究,为课题的设 计提供理论基础。 一1 l - 大流量主干网络中实时网络监测 第三章网络信息监测系统的相关技术 在上一章中,我们对信息监测系统的原型进行了研究,信息监测系统主要 由数据的采集和过滤,数据的分析处理以及相关的系统响应和动作三部分组成, 本章我们主要从这些方面对基于报文内容的网络信息监测系统相关技术和知识 进行研究。 3 1 报文捕获技术 网络报文的捕获是整个网络信息监测系统的基础,由它完成数据的采集工 作,因此它的速度对整个网络信息监测系统的效率至关重要。除了少数针对高 速网络,通过使用专门的硬件设备的方式对网络报文进行捕获的情况外,大多 数情况下,我们都是把网卡工作模式设为混杂模式对网络流量进行监听,利用 操作系统提供的直接访问网络底层的按口或其他软件的方式对网络报文进行捕 获。 3 1 1 报文捕获驱动程序 本课题运行在w i n d o w s 系统下,w i n d o w s 并没有为用户层的应用程序提供 直接访问网络底层的接口,用户层的网络信息审计系统所需要的原始网络报文 一般都是通过n d i s 与网卡驱动程序的交互获得。 3 1 1 1n d i s 与报文捕获驱动程序 n d i s 是n e t w o r kd r i v e ri n t e r f a c es p e c i f i c a t i o n ( 网络驱动程序接口规范) 的 缩写。n d i s 为传输层提供了标准的网络接口。在w i n d o w s 操作系统中,所有 的应用程序最终都通过调用n d i s 接口实现网络访问。n d i s 在操作系统中所 处的位置如图3 - 1 所示。 n d i s 支持编写3 种类型的驱动程序: m i n i p o r t 驱动程序( m i n i p o r t d r i v e r s ) 中间驱动程序( i n t e r m e d i a t ed r i v e r s ) p r o t o c o l 驱动程序( p r o t o c o ld r i v e r s ) m i n i p o r t 驱动程序可以通过n d i s 接口来完成对网卡的操作,同时开放 1 2 太流量主干网络中实时网络监测 m i n i p o r t 接口给上层驱动程序调用。 中间驱动程序位于m i n i p o r t 和p r o t o c o l 驱动程序之间,它同时具有m i n i p o r t 和p r o t o c o l 接口,可与上、下层驱动程序对接。利用中间驱动程序位于物理网 卡之上的转发功能,可以实现不可绕开的网络报文截获。 p r o t o c o l 驱动程序开放p r o t o c o l 接口供底层驱动程序调用,实现p r o t o c o l 接 口和m i n i p o r t 接口的对接。一个p r o t o c o l 驱动程序通常实现具体网络协议栈,如 t c p i p 、i p x s p x 等。 利用n d i s 编写的中间层驱动程序和p r o t o c o l 驱动程序都可以作为网络报文 捕获驱动程序来实现网络报文捕获。但通常网络报文捕获驱动程序是p r o t o c o l 驱动程序。虽然类型为p r o t o c o l 驱动程序的网络报文捕获驱动程序并不是报文捕 获的最理想的位置,但它可以独立于系统其它的p r o t o c o l 驱动程序( 如t c p i p ) 之外,作为操作系统的一个扩展,实现对原始网络报文的捕获,这样进行网络 报文的捕获时,对其他网络协议的工作影响不大。 s 接 口 本地介质类型 图3 - 1n d i s 拓扑结构 3 1 1 2 报文捕获流程 在以太网卡上一般都有一个板载的存储器,它用于存储接收到的网络报文 和需要发送的网络报文。当网卡收到一个的完整的网络报文后,把它存储在板 载存储器中,网卡先对收到的网络报文进行一些初步的检查,例如c r c 校验和 检测是否满足以太网短帧要求。经过检查,如果为无效的网路包,则及时丢弃; 如果为有效网络报文,网卡向系统总线控制器请求总线控制权以传输数据。网 1 3 大流量主干网络中实时网络监测 卡获得总线控胄4 权后,向主机主存的网卡缓冲区传输接收到的网络报文( 即d 姒 操作) 。完成传输后,网卡释放总线控制权,然后向a p i c ( a d v a n c e dp r o g r a m m a b l e i n t e r r u p tc o n t r o l l e r ) 芯片生成硬件中断。a p i c 接着唤醒操作系统中断处理程 序,操作系统中断处理程序进而触发网卡驱动程序的中断服务程序( i n t e r r u p t s e r v i c er o u t ir l e ) 。网卡驱动程序的中断服务程序所需完成的工作很少,最基 本的,如它会检测与本设备相关的中断( 由于在x 8 6 机器中允许多个设备共享同 一个中断) 并给予确认。然后,网卡驱动程序的中断服务程序调度一个网卡驱动 预置低优先级的函数( d e f e r r e dp r o c e d u r ec a t lo rd p c ) ,它会在收到网络报 文后处理硬件请求并通报上层驱动( 即协议层驱动、网络报文捕获驱动等) 。在 完成所有等待队列中的中断请求任务后,c p u 启动网卡驱动程序这个d p c 程序。 由于一次只能处理一个数据包,故网卡设备驱动处理数据包时,源于网卡的中 断将会被暂时屏蔽。因为中断产生是一个很耗系统资源的过程,现在新型的n l c s 允许在一次中断中传输一个以上的数据包,使得上层驱动程序在被激活时有能 力同时处理若干个数据包。图3 2 给出了网络报文捕获的流程。 图3 - 2 网络报文捕获流程 3 1 1 3 报文过滤技术 通过对网络流量的监听,可以捕获所有的网络报文,但用户常常所关心的 只是所有网络报文的一个子集。报文的过滤可以减少网络信息监测的工作量, 提高了网络信息监测系统的性能。为了减少内存操作,以尽量避开系统瓶颈, 报文过滤应该放在报文的原始位置( i n - p l a c e ,即d m a 操作存放数据的内存位 置) 网卡缓冲区上进行,而不是把报文拷贝到报文捕获驱动程序的缓冲区后再 进行过滤。所以报文过滤一般是由网络报文捕获驱动程序来完成。 c m u s t a n d f o r dp a c k e tf i l t e r ( c s p f ) 可以算是元老级网络报文捕获机制, 它是最早发布的实现从应用层存取数据链路层数据的可行系统。它介绍了报文 过滤虚拟机的概念:一个拥有精简高效指令集,基于虚拟c p u ( 含有寄存器等) 的报文过滤机。过滤器则是能工作在虚拟机的可执行程序。 目前为止,在报文过滤这一领域做出重大贡献的是来自洛仑兹伯克利实验 1 4 大流量主干网络中实时网络监测 室的研究人员s t e v e nm c c a n n e 和v a nj a c o b s e n ,他们于1 9 9 3 年在u s e n i x 9 3 会议上正式提出的一种用于u n i x 内核的包过滤机制b p f ( b e r k e l e yp a c k e t f i l t e r ) 。它通过限制拷贝网络报文的数量,并定义了一个新的、更加高效的、 基于寄存器的虚拟机的完整指令集( 即含有l o a d 、s t o r e 、c o m p a r e 和j u m p 等基 本指令) 来改进c s p f 的报文过滤虚拟机。b p f 使用的是基于寄存器的过滤虚拟机, c s p f 使用基于内存堆栈的过滤虚拟机,这是b p f 比c s p f 性能显著提高的一个重 要原因,因为在现代计算机中,内存操作是系统的瓶颈之一。b p f 由于其优越的 报文过滤性能,已经成为最常用的包过滤技术。 b p f 过滤机制的过滤功能是通过虚拟机( p s e u d om a c h i n e ) 执行过滤程序来 实现的。虚拟机主要由累加器、索引寄存器、数据存储器和隐含的程序计数器 几部分组成。过滤程序实际上是一组过滤规则。过滤规则由用户利用b p f 提供 的语法定义,以决定接受用户需要的网络报文。每一条规则执行一组操作,具 体操作可以分为装载、存储、运算、比较、跳转、返回等几种类型。 3 1 2w i n p c a p 分析 w i n p c a p ( w i n d o w sp a c k e tc a p t u r e ) 是w i n d o w s 平台下一个免费,公共的网 络底层访问系统,可以捕获、发送原始网络报文。它可以说是u n i x 平台下广 泛使用的l i b p c a p ( p a c k e tc a p t u r el i b r a r y ) 的w i n d o w s 版本。课题选用w i n p c a p 来完成报文捕获。选用w i n p c a p 的主要原因有:( 1 ) 提供了一套标准的报文捕 获接口,而且这套接口与l i b p c a p 兼容,便于将程序移植到u n i x 平台下;( 2 ) 除了跟l i b p c a p 兼容外,w i n p c a p 还考虑了各种性能和效率的优化,提供了内核 态的统计模式。 3 1 2 ,1w in p e a p 的体系结构 w i n p c a p 由内核级的n e t g r o u pp a c k e tf i h e “n p f s y s ) 、低级动态链按库 ( p a c k e t d i d 和高级动态链接库( w p c a p d l t ) 三部分组成。图3 - 3 为w i n p c a p 库的体系结构。 - 1 5 - 大流量主干网络中实时网络监测 用户 层 内棱 层 对w i n p c a p 调用对w i n p c a p 调用 用于统计的用户 的用户代码的用户代码代码 用户代码 + 一 1 对n p f 的直接 访问 应用程序 用户缓存】 用户缓存2l 2 p a c k e t 的曲数 w t c a p d l l w p c a p d l lw p c a p d l l 调用 j f 。 l p a c k e t d l l i 内桉疆存1ll 内棱缓存2 |i 统计引擎l ttt 卜莘删l 卜翠洲 卜翠删l 其他协 千千千 议栈 l 过滤器lli 过滤鼍2ll 过滤嚣3 l ,j 矿 6 叩u 坤a f 5 一盛e t 。g 。r o u p , o 途仫一 网卡疆动( n d i s 3 0o rh i g h e r ) 网络报文 图3 - 3w i n p c a p 体系结构 图中各部分的功能与特征如下: 1 ) n e t g r o u pp a c k e tf i l t e r ( n p f s y s ) 是利用n d i s 编写的类型为p r o t o c o l 驱动报文 捕获驱动程序。它对系统的其它p r o t o c o l 驱动程序是透明的,通过与网卡驱 动的交互来捕获和发送网络报文。 当有新的网络报文到来时,网卡驱动通知系统的网络协议驱动程序( 如 t c p i p 协议驱动) 。n e t g r o u p p a c k e t f i l e t e r 通过在系统中插入一个“h o o k ” 来获得新报文到来时网卡驱动程序的通知,系统再调用“h o o k ”的处理函数 n p f _ t a p o 对新到的报文进行处理。函数n p f _ t a p o 首先在网卡缓冲区上对报文 进行过滤;再给通过过滤的网络报文生成一个结构p c a p _ p l ( ( h d r 来记录网络 报文的相关信息( 如报文长度,捕获的时间戳) 供用户层的应用程序使用; 最后把这个结构和捕获的原始网络报文一起拷贝到w i n p c a p 的内核缓冲 区。 n e t g r o u pp a c k e tf i l t e r 使用的报文过滤机制是演化自b e r k e l e y p a c k e tf i l t e r , 它在内核缓冲区、动态代码的生成等方面对b p f 进行了优化。 1 6 大流量主干网络中实时网络监测 2 ) 低级动态链接库( p a c k e t d 1 1 ) 向高级动态链接库提供一套接口相同的低层函 数,用于处理一些与操作系统紧密相关的操作( 比如安装、启动、设置和停 止n p f s y s 、获取和设置网卡参数、发送网络报文等) 。 低级动态链接库有两个版本,一个运行在w i n d o w s 9 5 ,9 8 舢e 下,一个运行 在w i n d o w s n t 2 0 0 0 x p 下,但它们提供的接口都是相同的,这样高级系统 链接库不依赖于特定的w i n d o w s 平台,利用高级动态链接库编写的应用程 序在不同的w i n d o w s 平台下不需要重新编译。 3 1 高级动态链接库( w p c a p d 1 1 ) 和应用程序编译在一起,它使用低级动态链 接库提供的服务,向应用程序提供完善的监听口。高级动态链接库提供的报 文捕获函数与l i b p c a p 提供的报文捕获函数是兼容的,所以利用这些函数编 写的程序模块可以很方便的移植到u n i x 平台下。 3 1 2 2w i n p c a p 开销测试 通过w i n p c a p 提供的函数库,我们可以很方便的完成网络报文的捕获和过 滤。很多人使用w i n p c a p ,但并不清楚它的性能指标,本节利用w i a p c a p 的官 方测试结果,介绍一下使用w i n p c a p 进行报文捕获主要的开销。 图3 4 给出了测试平台,两台p c 机通过高速以太网直接连接。一台p c 充 当通信发生器,另一台则用于实际测试。在用于测试的p c 上面安装了改良的 w i n p c a p ,里面有用于测试的扩展插件。该扩展插件能调用p e n t i u r n 系列微处理 器的性能监视计数器( 这些计数器能被用于追踪事件,比如已编译的指令数目、 中断请求的数目、加载缓存的数目和c p u 在特定时间间隔内有效的钟周期数 等) 。通信发生器能够以精确的频率不断产生突发网络报文,网络报文指向一台 在该网段中并不存在的主机,这样一来它发出的数据包不会影响试验平台中测 试主机的协议栈。 t r a f f i c 3 廿1 a j t o r p a c k e tc a p t u r e p 口坩岫i v 2 g h z 1 g b r a m4 0 g l i d 3 c 9 9 6 g i g

温馨提示

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

评论

0/150

提交评论