(通信与信息系统专业论文)http报文监测和过滤技术研究.pdf_第1页
(通信与信息系统专业论文)http报文监测和过滤技术研究.pdf_第2页
(通信与信息系统专业论文)http报文监测和过滤技术研究.pdf_第3页
(通信与信息系统专业论文)http报文监测和过滤技术研究.pdf_第4页
(通信与信息系统专业论文)http报文监测和过滤技术研究.pdf_第5页
已阅读5页,还剩62页未读 继续免费阅读

(通信与信息系统专业论文)http报文监测和过滤技术研究.pdf.pdf 免费下载

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

文档简介

西南交通大学硕士研究生学位论文第l 页 摘要 随着信息技术的发展与i n t e r n e t 应用的普及 在当前网络攻击 入侵等活动不断增多的情况下 信息系统安全 尤其是计算机网络 安全的重要性变得日益突出 加强网络安全方面的研究与实践就显 得更加重要 监控 审计与取证技术是保障信息系统安全 可靠运 行的重要手段 本文围绕网络安全监控与审计系统的设计与实现 研究了数据 包的采集与重组技术及l i n u x 下伯克利包过滤 b p f 机制 分析了监 听方式与网关方式下两种数据采集方案的特点与重组原理 把网络 监控系统的设计分解为与协议无关的网络探测器及与协议相关的 h t t p 数据还原模块两部分 并把网络探测器的设计分为与数据中心 的通信模块 解析配罨文件 记录探测器日志 采集网络数据包 缓冲采集到的数据包 重组t c p 会话这几个模块 研究了h t t p 数据 还原技术 包括对h t t p 内容的解压缩及传输编码的块解码 在还原 h t t p 数据后对设置的关键字进行过滤并把中标的数据传回数据中心 进行保存以便日后取证 重点研究了h t t p 数据过滤技术 针对基于模式匹配的过滤技术 在关键字较多时需要回溯多次造成过滤速度慢的缺点 采用以文本 反向匹配关键字的过滤技术 分别以哈希表及t r i e 树结构存储关键 字 以h t t p 数据中的文本反向匹配存储在哈希表或t r i e 树中关键 字的过滤技术 文本不再需要回溯 提高了匹配速度 本文设计实现的网络监控系统 能对敏感h t t p 内容的访问进行 实时报警 对严重影响系统性能的关键字过滤技术 采用以t r ie 树 存储关键字 以数据包中的文本反向匹配关键字的过滤技术大大提 高了匹配速度 关键字 网络j 监控 网络探测器 h t t p 还原 关键字过滤 西南交通大学硕士研究生学位论文第 l 页 a b s t r a c t w i t ht h ed e v e l o p m e n to fi n f o r m a t i o nt e c h n o l o g ya n di n t e r n e t a p p l i c a t i o n n u m b e ro ft h ea c t i v i t i e so fc u r r e n tn e t w o r ka t t a c k sa n d i n v a s i o ni si n c r e a s i n gf a s t c o n s e q u e n t l yi n f o r m a t i o ns y s t e ms e c u r i t y i np a r t i c u l a r t h ei m p o r t a n c eo fc o m p u t e rn e t w o r ks e c u r i t yi sb e c o m i n g i n c r e a s i n g l yp r o m i n e n t e n h a n c et h es t u d ya n dp r a c t i c eo fn e t w o r k s e c u r i t yh a sb e c o m em o r ei m p o r t a n t a n dm o n i t o r i n ga n di n f o r m a t i o n s y s t e ma u d i ta n df o r e n s i c st e c h n o l o g yi s ai m p o r t a n tm e a n st oe n s u r e i n f o r m a t i o ns y s t e m ss a f e r e l i a b l eo p e r a t i o n d u r i n gt h ed e s i g na n di m p l e m e n t a t i o no fn e t w o r ks e c u r i t ym o n i t o r i n ga n d a u d i t i n gs y s t e m t h et e c h n o l o g yo fc a p t u r ea n dr e a s s e m b l i n go ft h ed a t ap a c k e t a n d b e r k e l e y p a c k e tf i l t e rm e c h a n i s mi nl i n u xa r e d i s c u s s e d a n d t h e c h a r a c t e r i s t i c so ft h ed a t a a c q u i s i t i o n i n g a t e w a ym o d ea n d s n i f f e rm o d e s e p a r a t e l ya n dt h ep r i n c i p l eo fd a t ar e o r g a n i z a t i o na l ea n a l y z e d t h ed e s i g no f n e t w o r km o n i t o r i n gs y s t e mm a i n l yb ed i v i d e di n t on e t w o r kp r o b ew h i c hi s i n d e p e n d e n to na p p l i c a t i o np r o t o c o l sa n dh t t pp a c k e t sr e a s s e m b l i n gm o d u l e w h i c hi sd e p e n d e n tw i t ha p p l i c a t i o np r o t o c o l s s ot h ep r o g r a m m e rr e s p o n s i b l ef o r p r o t o c o lm o d u l e s j u s tf o c u so nt h es t u f f r e l a t e dt oa p p l i c a t i o np r o t o c o l w h i c hc a l l r e d u c e st h ec o m p l e x i t yo ft h ep r o t o c o la n a l y s i sm o d u l eg r e a t l ya n ds i m p l i f i e st h e m o d u l ed e s i g n b u ta l s oe n h a n c et h er o b u s t n e s so ft h es o f t w a r ei n d i r e c t l y n e t w o r kp r o b ei sm a d ef r o md a t as e n d r e c e i v em o d u l e p a r s i n gx m lf i l em o d u l e l o gm o d u l e p a c k e t sc a p t u r em o d u l e c a c h ep a c k e tm o d u l ea n dr e a s s e m b l i n gt c p s e s s i o nm o d u l e t h et e c h n o l o g yo fr e a s s e m b l i n gh t t pd a t af r o mr a wp a c k e t si s s t u d i e d i n c l u d i n gd e c o m p r e s s i n gt h ep a c k e t sw h i c hi sc o m p r e s s e dw i t hg z i pa n d d e c o d ef r o mc h u n ke n c o d i n g t h eh t t pt e x td a t ai sf i l t e r e dw h e ni ti s r e a s s e m b l e d a n d t h em m c h e dd a t ai st r a n s f e rt od a t a c e n t e rt of o r e n s i c s a r e r w a r d s t h ef i l t r a t i o nt e c h n o l o g yf o rh t t pd a t ai sm o r ei m p o r t a n tt on e t w o r k m o n i t o rs y s t e m i nm y p a p e r ip r o p o s e dam e t h o du s i n gt e x t sm a t c hk e y w o r d s r e v e r s e l yt oo v e r c o m e t h e s h o r t c o m i n go ft h em e t h o db a s e do nt r a d i t i o n a l p a t t e r n m a t c h i n ga l g o r i t h mw h i c hi su n a c c e p t a b l ys l o w ak e y w o r dl i s ti ss t o r e d 西南交通大学硕士研究生学位论文第1i i 页 i nah a s ht a b l ea n dt r i et r e es e p a r a t e l yi nm ym e t h o d a n dt h ek e y w o r dl i s t i s c o m p a r e dw i t ht e x tr e v e r s e l y w h i c hr e d u c et h ef i l t r a t i o nt i m eg r e a t l y t h en e t w o r km o n i t o r i n gs y s t e md e s i g n e di nm y p a p e rc a na l a r mi nt i m e w h e ns e n s i t i v eh t t pp a g e si sa c c e s s e d i nn e t w o r km o n i t o r i n g s y s t e mt h e k e y w o r df i l t e rt e c h n o l o g ys e r i o u s l ya f f e c t st h ep e r f o r m a n c e a n diu s et h e t e c h n o l o g yo f t e x tm a t c h i n gk e y w o r d ss t o r e di nt r i et r e e r e v e r s e l y w h i c h i m p r o v e dt h ek e y w o r d sm a t c hs p e e ds i g n i f i c a n t l y k e y w o r d s n e t w o r km o n i t o r n e t w o r kp r o b e h t t pd a t ar e a s s e m b l i n g k e y w o r d sf i l t r a t i o n 西南交通大学硕士研究生学位论文第1 页 1 1 研究背景 第1 章绪论 i n t e r n e t 最初开始于上世纪6 0 年代 源自于美国国防研究计划 署 a r p a 的一项计划 1 1 经过4 0 多年的发展 i n t e r n e t 己成为计算 机及网络技术应用最活跃的领域 成为世界上最大的计算机网络 并且成为事实上的 信息高速公路 如今 i n t e r n e t 覆盖了全球1 8 0 多个国家和地区 涉及军事 交通 电信 教育 商业 政府机关 等各行各业 2 1 而且它正从各个方面影响和改变着人们的工作及生 活方式 我国的i n t e r n e t 建设从9 0 年代初的科技网和教育网开始起步 逐步形成了遍布全国的众多大型网络 如今 中国科技网 中国公 用计算机互联网 中国教育和科研计算机网 中国金桥信息网 中 国联通互联网 中国网通公用互联网 中国国际经济贸易互联网 中国移动互联网和中国石油信息网等等大规模的网络正快速发展 这标志着我国己跨入了i n t e r n e t 全面发展的新时期 3 4 1 由于互联网普及和影响的日益深入 通过网络传递的信息已经 包含了国家经济 政治 军事等各方面的内容 保障网络信息安全 已经不再是信息产品和信息技术这一工业门类中的局部问题 而是 关乎国家安全 社会稳定和经济发展的重大问题 从某种意义上说 加强信息安全 掌握 制网权 将成为衡量国家综合实力的一个 重要指标 在计算机网络领域 除了不法分子利用网络进行电子商 务和信用卡诈骗等网络犯罪行为外 还有其他更严重的破坏活动 如利用网络攻击基础设施 破坏机场导航调度 能源 金融证券等 重要系统p j 给国民经济和国计民生造成巨大损失 在经济 政治 军事等领域内进行间谍活动 未来甚至还有可能进行电子信息战争 加强国家信息安全体系具有战略意义 当前 某些组织 个人利用一些基于特殊的网络应用协议的应 用程序在我国经济 政治 军事等领域从事着不法活动 给我国家 安全机关和公安机关的侦查工作带来了很大的困难 如何发现 识 别这些特殊的网络应用协议 如何分析 还原基于这些网络协议的 应用程序数据 如何定位这些网络应用程序的使用者等等问题迫切 西南交通大学硕士研究生学位论文第2 页 需要解决 网络安全监控系统作为信息化建设的安全保障 不论是重要的 国家机关还是企事业单位的核心技术部门对其应用的呼声都很高 特别是航天 军工 政府机关等重要的国家机密部门 以及银行 证券 高新技术企业等信息敏感型企事业单位 往往拥有大量的机 密信息 一旦泄漏就会造成巨大的经济损失和负面影响 甚至对国 家安全和社会稳定构成威胁 以上这些都迫切要求能够在实现信息 化的同时 提供高效的完备的可靠的信息化安全保证 而网络安全 监控系统的提出正符合了当前这一迫切的需要 网络安全监控系统 将在全面提高政府机关敏感机构和企事业 单位核心部门的信息安全 增强对网络内部各客户计算机的控制 加快信息化建设进程等方面产生巨大的经济效益 同时 网络安全 在信息化建设中的特殊性也使得网络安全监控系统产生了巨大的社 会效益 网络安全监控系统系统作为一个网络信息化安全的拳头产品 不仅适用于航天 军工等国防系统 而且将大量应用于政府重要机 密部门 各种企事业单位和金融机构等相关领域 可以为我国推进 企业信息化 做出巨大贡献1 6 1 2 国内外研究现状 网络安全问题因为计算机参与网络活动传输数据引起 围绕数 据保密性 完整性 有效性这三个中心目标 目前国内外网络安全 技术有 数据加密 访闯控制 身份验证 入侵检测 监控审计等 对网络数据进行监控的办法就是对网络上所有的流量进行检 验 但只记录其中确实需要的信息以供事后参考 由于内存总是比 硬盘要快 所以先利用内存实施监控并且进行过滤 再将需要的内 容进行记录是这种做法的最大优点 这使得监控繁忙的局域网或者 骨干网成为可能 从另一个角度讲 这样也可以避免不少隐私权相 关的麻烦 因为这些包含隐私或者机密内容的信息只是在内存中过 滤而并没有被保存在磁盘 这即是最先于9 0 年代初由m a r c u s q u a n t u m 提出来的 被称为 s t o p l o o k a n dl i s t e n 的监控审计机制 j 现在 它己经是n e tf l i g h tr e c o r d e r s i l e n t r u n n e r s n o r t n e t w i t n e s s 等众多国外知名系统的工作基础 西南交通大学硕士研究生学位论文第3 页 在2 0 0 2 年 美国信息安全杂志 i n f o r m a t i o ns e c u r i t y 提出了 网 络取证分析工具 n e t w o r kf o r e n s i ca n a l y s i st 0 0 1 n f a t 的术语来指 代这类产品 j 早在8 0 年代 d o s 和u n i x 就可以进行报文的捕获 现在的监 控与审计工具的特点在于 它们可以更有效率 更有选择性地得到 含有敏感信息的报文并将这些报文合理有序地存放在磁盘或其他存 储介质中 并将监控过程实时直观地显示在界面上 s a n d s t o r m 公司的n e t i n t e r c e p t 3 0 是较为著名的监控系统 如图 l l 所示 n e t i n t e r c e p t3 0 由一个或多个黑匣子以及一个监控中心 组成 9 1 该系统提供了相当多的审计功能 包括报文基础回复 流 量分析 主机状态监控等等 是国外监控系统中比较著名的产品 图1 一ln e t i n t e r c e p tf o r e n s i c s 的界面 目前国外的研究 亦有相当一部分集中在如何提高监控与审计 系统的效率这方面 内容审计系统需要记录用户使用计算机网络访 问的所有资源以及所有访问过程 所以 完整地记录审计追踪数据 是事故后调查取证的基础 亦是技术上的难点 日益加快的网络信 息交换速度以及不断提高的审计要求对监控与审计系统的处理效率 提出了更高的要求 提高监控与审计系统的效率可在多个环节上加以研究 比如在 采集方面 可以选用效率高的数据包采集机制 使用套接字环 p f 西南交通大学硕士研究生学位论文第4 页 r i n g 进行报文接收 在过滤方面采用低层次 高效率的匹配算法 甚至将过滤从硬件级别加以应用 在应用层 采用内存映射的方式 减少数据拷贝引起的中断对c p u 时钟的占用 使用支持内存映射的 l i b p c a p 特殊版本l i b p e a p m m a p 采用适应动态变化的高效显示方法 等等 2 0 l 本文对国内目前己有的一些监控审计系统进行调研 包括复旦 光华信息发展公司的s a u d i t 网络安全审计系统 l l l 北京天融信公 司的 网络卫士 监控系统 1 2 1 捷普j u m p 网络信息审计系统 1 中科新业网络入侵取证系统 14 1 启明星辰的天珥网络安全审计系统 1 5 1 以及e l i n u x 信息安全审计系统f 1 6 1 对这些产品的功能特点进 行了分析比较 比较结果参见表1 一l 表1 1 国内审计产品的功能特点比较 项目复旦光捷普中科新天碉 e l i n u x 丝 业 i d s 技术有有有无无 协议审计有有无有有 流量监测 有有有 有有 内容审计无有无无有 阻断反应无有无无无 过程回放 无有有有有 动态协议显无无无有有 不 协议还原无有有有有 日志采集查有有有有有 询 黑名单跟踪无无无有无 用户管理无无无有无 通信加密无无无有无 实时报警有有有有有 通过比较发现 多数商用监控审计系统具有针对具体应用层会 话进行审计的功能 但缺乏对应用层访问进行控制的功能 即多数 商用监控审计系统能够发现和记录网络中的违规事件 但不能实时 西南交通大学硕士研究生学位论文第5 页 跟踪和阻断该违规事件 多数产品对可疑的行为可以采取实时报警 但缺少直观的跟踪监视功能 有些产品的取证也只是对日志的取证 产品具有完整的过程回放 报文恢复功能的不多 产品内容审计方面 针对的协议一也较少 1 3 本文的研究内容 本文从网络安全的现状和特点入手 提出了网络安全监控系统 的设计方案 对于对系统性能有重大影响的关键字过滤算法提出了 以哈希表及t r i e 树存储关键字 以要过滤的文本匹配关键字的过滤 算法 全文共分五章 各章节组织如下 第一章为绪论 介绍了本文工作的背景和意义 以及论文的主 要研究工作与整体结构 第二章主要针对数据包的采集与重组技术展开研究 作为网络 安全监控与审计系统的基础 本章详细介绍了b p f 机制 并描述了 网络安全监控与审计系统中的重组原理 重组实现过程中的会话组 织结构与报文的重组过程 第三章设计并实现了一种网络监控系统原型 并讨论了系统的 体系结构及系统开发的环境 对网络探测器的各个模块进行了详细 的描述 第四章介绍了h t t p 协议基础 对h t t p 协议进行了分析 并 对这些数据进行了还原 第五章对系统性能有重大影响的关键字过滤技术进行了研究 介绍了基于传统模式匹配算法的过滤技术 讨论了这种过滤技术的 缺点 针对传统算法的缺点提出了以哈希表及t r i e 树存储关键字 以要过滤的文本匹配关键字的过滤技术 西南交通大学硕士研究生学位论文第6 页 第2 章数据包的采集与重组技术 监控系统通过采集模块采集 过滤 记录网络上所有的网络数 据包 再通过重组模块将数据恢复为应用层的会话内容 包捕获与 过滤技术是监控系统设计的重要环节 选用高效率的采集与过滤技 术并对其进行改进 是系统设计的重要基础 2 1 数据包采集的两种方式 采集网络上的数据流 首先要考虑网络的拓扑形式 对应不同的 物理拓扑结构 也有不同的数据包采集方式 根据某重要网络的实 际需要 数据包的采集方式主要分为两种 一种是监听方式 一种 是网关方式 两种方式各有优缺点 下面进行详细的分析 2 1 1 监听方式 当系统选用监听模式进行数据包采集时 主要有以下三种连接方 式 1 集线器连接 是服务器直接连接在集线器上 要监听的机器 和服务器之间不能跨过交换机 2 交换机连接 这种方式要求交换机上配有监听端口 将服务 器网卡和交换机监听端口连接 可以监听到通过该交换机流过的所 有数据 集线器方式和交换机方式网络拓扑如图2 一l 所示 图2 一l 交换机连接 西南交通大学硕士研究生学位论文第7 页 3 网桥连接 一8 1 这种连接方式要求服务器所在主机配成一个 网桥 所有内部网和外部网之间的数据必须通过网桥 服务器就可 以监听到通过的所有数据 其拓扑如图2 2 所示 图2 2 网桥连接 监听模式的优点在于 对原有网络设置不做任何改动郎可保护整 个内部网 还可监控内部网主机之间的相互访问 在意外情况下 若网络安全监控与审计系统无法正常工作 不会影响网络的任何正 常活动 监听模式的缺点在于 用户网络的物理配置必须支持监听方式 当网络流量太大的时候有可能丢失数据包 对某些恶意活动丧失拦 截功能 2 1 2 网关方式 在网关模式下 服务器作为一个包过滤网关 内部网和外部网之 问的通信数据必须流过服务器 而且必须经过采集模块过滤 如图2 3 所示 西南交通大学硕士研究生学位论文第8 页 图2 3 网关模式 在网关方式下 需要利用l i n u x 内核模块的功能 在l i n u x 内核 2 4 中实现了一种全新的n e t f i l t e r 框架用于完成包过滤 n a t 等功能 n e t f i l t e r 是一种内核中用于扩展各种网络服务的结构化底层框架 设 计思想是生成一个模块结构使之能够比较容易的扩展 新的特性加 入到内核中并不需要重新启动内核 这样 可以通过简单的构造一 个内核模块来实现网络新特性的扩展 同监听方式一样 采集模块只是简单的将数据包写入共享内存 并通过同步机制由重组模块所在的进程进行后续处理 网关模式的优点在于不影响原有网络设置 对网络物理配置没有 要求 只要处理速度能跟上 就不会丢失数据包 它的缺点在于 当网络流量太大时可能对网络性能产生影响 由于数据必须通过采 集模块 在意外情况下 若采集模块的进程无法正常工作 会使网 络通信中断 这种方式在实际情况中较少使用 2 2 数据包过滤技术 由于系统主要采用监听方式的数据包采集 所以本节讨论的数据 包采集与过滤技术都是针对监听方式进行的 通常的数据包到达网卡时 由网卡将数据交给网卡的驱动程序 当驱动程序处理完数据时就把经过处理的数据交给上层的协议栈 西南交通大学硕士研究生学位论文第9 页 通常会丢弃其中的一部分 出于对效率的考虑 减少无用数据包的 传送 应在这个过程中尽早的截获报文 也就是在尽可能低层的地 方截获所需报文 丢弃不必要的报文 包的捕获机制是依赖于操作系统的 不同的操作系统提供了不同 的包过滤器 常用操作系统的包捕获机制参见表2 l 表2 一l 常用操作系统的包捕获机制 包捕获机制系统平台各注 b p fb s d 系列 b e r k e l e yp a c k e tf i l t e r s o l a r i s h p u x d a t al i n kp r o v i d e r d l p i s c oo p e n s e r v e ri n t e r f a c e n i ts u n o s 3 n e t w o r ki n t e r f a c et a p s n 0 0 p i r i x s t r e a m sn e t w o r k s n i ts u n o s 4 i n t e r f a c et a p s o c k p a c k e t l i n u x基本类似b p f l s f l i n u x 2 1 7 5 l i n u xs o c k e tf i l t e r d r a i n i r i x用于窃听系统丢弃的包 不同的p a c k e tf i l t e r 的实现细节并不相同 但大致的工作原理是 类似的 要截获数据报文 可利用p a c k e tf i l t e r 机制编写相应的应用 程序 由于不同的操作系统上的p a c k e tf i l t e r 存在着不同 因此希望编 写的应用程序能在不同的操作系统上使用 就必须要求应用程序能 对不同的p a c k e t f i l t e r 进行识别并使用 l i b p c a p 库即可识别不同操 作系统的不同p a c k e tf i l t e r 并正确调用它们 最新实现的 l i b p c a p m m a p 还在处理效率上有了进一步的提高 接下来就详细分析一下b p f 的工作原理以及其在本系统中的相 关应用 b p f 是b s dp a c k e tf i l t e r 的简称 目前许多u n i x 版本提供的用 户级别的网络监听功能都是基于b p f 开发的 由于监听程序以用户 级别进程工作 数据包的拷贝必须跨越内核 用户保护界限 因此需 要使用名为包过滤器 p a c k e t f i l t e r 的内核代理程序 b p f 过滤技术使 用了新的基于寄存器的过滤算法 效率比旧的算法提高了2 d 倍 它 西南交通大学硕士研究生学位论文第10 页 的缓存机制也对整体效率提高有很大作用1 1 9 2 4 1 图2 4 给出了b p f 和系统其它部分的接口 网 内核 一葡螽 图2 4b p f 接口图 其过滤过程描述如下 当一个数据包到达网络接口时 数据链路 层驱动程序将其提交到系统协议栈 如果b p f 正在此接口监听 驱 动程序将首先调用b p f b p f 将数据包发送给过滤器 过滤器对数 据包进行过滤 并将数据提交给过滤器关联的上层应用程序 然后 数据链路层驱动将重新取得控制权 将数据包提交给上层的系统协 议栈处理 l i n u x 系统严格区分核心地址空间和用户地址空间 用户的应用 进程不能访问核心地址空间 由于网络监测器作为用户层进程运行 而网卡驱动程序工作在核心地址空间中 所以要提供用户层的接口 就要把数据从核心地址空间复制到用户地址空间 这样做系统负担 很大 当网络太忙或机器速度太慢时会发生丢包 为改进性能出现 了包缓冲和包过滤机制 在s u n o s 的n i t 中 收集来的数据包先复制到过滤器的缓冲区 中 再进行过滤 所以不论用户进程是否需要 每个数据包至少要 作一次内存复制 而内存复制引起的c p u 开销会给系统带来更大负 西南交通大学硕士研究生学位论文第1 1 页 担 l i n u x 的原来的s o c k p a c k e t 并不作任何缓冲 无内核过滤 在网络负载较大时效率很低 b p f 在核心设置了过滤器 在核心中更早地对数据包进行过滤 只将用户需要的数据提交给用户进程 减少了数据传送量 每个b p f 都有一个缓冲区 如果过滤器判断接收某个包 b p f 就将它复制到 相应的缓冲区中暂存起来 等收集到足够多的数据后再一起提交给 用户进程 这样减少了 r e a d 系统调用 提高了效率 b p f 还改进了过滤方式 目前基本的过滤规则表达方式有两种 一种是布尔表达树 另一种是b p f 使用的有向无环控制流图 d i r e c t e d a c y c l i c c o n t r o l f l o w g r a p h 简称c f g 树型过滤器的设计 是围绕一个基于栈的过滤求值程序 它把控制规则布尔表达式及相 关数据先压入栈 再逐步弹出 并计算结果 而b p f 使用基于寄存 器的过滤求值程序 比树型过滤器的快2 0 倍 b p f 还使用了一种简 单的缓冲策略 使得在同一硬件上b p f 的性能较s u n 的n i t 快约 l o o 倍 b p f 过滤器和缓冲器是经过优化的 用户可用b i o c s b l e n i o c t l o 增加缓冲区长度 j 2 3 数据包重组技术 2 3 1 重组原理 重组模块从共享内存中取得由采集模块放入的数据包 原始以太 报文 逐步重组为应用层数据 它是审计监控产晶能够实现所有应 用层功能的基础模块 根据以太网报文的物理帧的帧头 模块可以 识别出所有的i p 包 根据i p 包头中的信息 源地址 目的地址 标识 号等 模块可以识别出哪些i p 包属于同一个t c p 或者u d p 包 并 且将它们重组为t c p 或者u d p 包 再根据t c p 或u d p 包头中的信息 源端口号 目的端口号 序号等 模块可以恢复每一条原始会话的 内容 本质上 重组模块是操作系统协议栈中相应功能的实现和改动 只是操作系统协议栈一般只对属于本机的数据包进行操作 而重组 模块则是要对所有监听到的数据包进行操作 图2 5 说明了物理数 据包经过重组模块还原为应用层原始数据的过程 2 6 1 西南交通大学硕士研究生学位论文第12 页 组原理示意图 2 3 2 报文的重组过程 图2 5 重 报文重组模块从共享内存中读取采集模块写入的数据包 如果共 享内存中有数据 会话重组进程通过数据包的某些字段的值判断其 是否为t c p 协议 再通过端口号判断是否要对该应用协议进行重组 如果需要重组 则首先在会话列表中查找 如果没有发现该t c p 包 所在的会话 重组模块会在列表中将添加一条新的会话信息 t c p 协议将会话中的数据作为连续的字节流看待 为了便于传 输又把这个字节流分为若干个段 将报文段 s e g m e n t 作为传输的数 据单元 由于t c p 报文段在网络中是封装在i p 数据包中传输的 它 们可能丢失或乱序到达 因此重组模块利用会话信息中的报文段链 表来缓冲乱序到达的报文段 重组进程在重组t c p 会话时 比较报文段的序号与会话期待的 报文段序号 会话信息中的s e q 字段 如果相等 则将该报文段所含 的有效数据写入会话内容文件以供后续处理 并调整会话期待的报 文段序号 如报文段的序号大于会话期待的序号 则将其加入会话 报文段链表 同时搜索链表 查找其中是否含有与会话期待序号相 等的报文段 若有则将其含有的有效数据写入会话内容文件 并从 链表中删除 7 i t c p 报文重组处理流程如图2 6 所示 西南交通大学硕士研究生学位论文第13 页 图2 6t c p 报文重组流程图 西南交通大学硕士研究生学位论文第1 4 页 第3 章网络探测器设计 网络探测器在网络监控系统中占有非常重要的地位 探测器从 网络中采集数据包并对应用层数据进行分析 其处理结果存储到数 据库服务器用于以后的统计 查询 3 1 系统体系结构 网络监控系统由网络探测器 俗称探针 数据中心 数据库 服务器 w e b 服务器 报警器等部分组成 系统体系结构如图3 一l 所示 w e b 服务器 图3 1 系统体系结构 1 网络探测器 探测器是整个网络监控系统的核心 探测器对整个系统的作用 就如操作系统的内核对操作系统的作用 网络监控系统的工作主要 是基于利用l i b p c a p 直接通过网卡的混杂模式 使之可以接受目标地 址不是自己的m a c 地址的数据包 直接访问数据链路层 取数据包 不通过操作系统的协议栈 直接递给用户程序进行处理 并把处理 后的结果传给数据中心 网络探测器分为与协议无关的主程序及解 西南交通大学硕士研究生学位论文第1 5 页 析协议的协议分析器两部分 协议分析器以动态链接库的形式由主 程序调用 2 数据中心 数据中心是联系网络探测器 数据库 报警器及文件服务器的桥 梁 网络探测器通过数据中心从数据库提取规则 又把报警信息通 过中心发给报警器报警 同时把原始文件存放予文件服务器 通过 数据中心 网络探测器不需要考虑与数据库 报警器及文件服务器 之间通信的细节 在这里数据中心就像一个代理服务器 数据中心 的界面如图3 2 所示 图3 2 数据中心 3 数据库服务器 监控系统数据库文件 保存了网络监控系统的所有信息 例如 要给网络探测器下发的规则及探针往中心传回的数据 可选用微软 的s q l s e r v e r 2 0 0 0 数据库或o r a c l e 等 4 w e b 服务器 网络监控系统w e b 界面系统 用户可以通过终端登陆w e b 服 务器设置监管系统运行的各项参数 查询和统计各类报警 原始信 西南交通大学硕士研究生学位论文第1 6 页 息同时可以备份和还原配置文件和数据库日志文件 网络监控系统 w e b 界面如图3 3 所示 图3 3 网络监控系统w e b 查询及设置界面 5 文件服务器 对h t t p 数据进行还原之后 网络探测器把还原后的数据文件 传回数据中心 由数据中心把文件保存到文件服务器 3 2 探测器开发环境 网络探测器在l i n u x 下使用c 语言 采用g e c g d b 等标准工具 开发 此外 网络探测器还使用了用来捕获数据包的l i b p c a p 库及用 来解析x m l 文件的l i b s c e w 库 1 开发平台 网络探测器选择l i n u x 操作系统和c 语言作为开发平台主要基 于以下几点考虑 1 l i n u x 遵循公共版权许可证 g p l g e n e r a lp u b l i cl i c e n s e 是个免费的操作系统 和u n i x 不同的是 它不和同一厂商绑定 这保证了标准的统一性 有利于跨平台软件的开发 2 l i n u x 的稳定性 l i n u x 性能相当好 稳定性也很好 全球 已有8 0 0 万l i n u x 用户 2 9 的互联网s e r v e r 都已经采用了l i n u x 系统 足以说明其稳定性得到了广泛的认可 西南交通大学硕士研究生学位论文第17 页 3 l i n u x 是开放源代码的操作系统 开放源代码的l i n u x 会 使我们对系统具备控制权 可以通过修改内核来实现各种应用 使 软件和操作系统得到更完美的集成 l i n u x 正是以其具备自主开发和 高效灵活的特点成为全球增长最快的操作系统之一 2 l i b p o a p l i b p c a p 是u n i x l i n u x 平台下的网络数据包捕获函数包 大多数 网络监控软件都以它为基础 l i b p c a p 可以在绝大多数类u n i x 平台 下工作 l i b p c a p 共有二十多个c 程序的文件 将其按功能可以分为以下 几组 1 打开 读取设备 设置过滤器部分 这一部分集中了所有与具体系统监听方式密切相关的函数 也 就是最底层直接与具体设备打交道的部分 设计者将其独立出来 因此要加入对新的系统的支持 仅需要修改这一部分即可 这一部 分主要提供3 个函数 p c a p r e a d p c a p o p e n l i v e p c a p s e t f i l t e r 文件形式为p c a p 一 c 比如p c a p b p f c p c a p d l p i c p c a p l i n u x c p c a p n i t c 等 在m a k e f i l e 里实际只包含了这其中的一个文件 而具 体选择哪个文件到m a k e f i l e 里去 就是c o n f i g u r e 脚本的功能了 2 编译 优化 调试过滤规则表达式部分 过滤机制采用了虚拟机的方式 b p f 过滤器程序和实际机器语 言有很多相似之处 一条指令 即结构b p fi n s n 具有操作码 c o d e 操作数 i t j f 等 设计者还提供了一系列的宏来书写代码 这正 是b p f 编码的 汇编语言 正因如此 b p f 程序的编写也具有所有 低级语言的弱点 编程复杂 因此有必要提供更为简单易用的接口 正如高级语言的产生一样 有了过滤规则表达式 使用这种表达式 就直观 容易理解得多了 完成编译及优化得程序文件为 g e n e o d e c g r a m m a r c s c a n n e r c o p t i m i z e c 这一部分将输入得过滤规则表达 式编译为b p f 代码 存入b p f p r o g r a m 结构 再用p c a p s e t f i l t e r 来 加载程序 l i b p c a p 甚至还提供了 反汇编 得函数b p f i m a g e 定义在 b p fi m a g e c 中 p c a p c o m p i l e 函数编译完后的代码以二进制的形式 存放在s t r u e tb p f 中 如果需要修正过滤规则表达式 可以 program 调用b p f i m a g e o 将二进制代码 反汇编 成 汇编语言 的形式 如果 西南交通大学硕士研究生学位论文第1 8 页 懂得b p f 程序的编码规则 还能直接修改这段代码 以获得想要的 结果 3 脱机方式监听部分 l i b p c a p 支持脱机监听 即先将网络上的数据截获下来 存到磁 盘上 在以后方便时从磁盘上获取数据来做分析 主要函数为 p c a p o p e n o f f l i n e o 和p c a p o f f l i n er e a d o 定义在文件s a v e f i l e c 中 4 本地网络设置检测部分 包括检测网络用的p c a p l o o k u p d e v o p c a p l o o k u p n e t o 等函数 包含在i n e t c 中 它的主要实现方式是打开套接口 s o c k e t 然后 调用一系列的s i o i o c t l 来获取套接口状态 以达到检测t c p i p 层 网络设置的目的 各种系统的s o c k e t 接口已有统一的规范 所以它 是跨平台兼容的 而不必像对数据链路层的访问一样为不同的平台 编写不同的代码 这部分也包括名字地址相互转换部分的函数 实现的程序文件 为 e t h c r n e t c 和n a m e t o a d d r c 5 主控程序及版本部分 主控程序所在文件为p c a p c 这一文件定义了读数据的对外统 一接口p c a p n e x t 获取当前错误消息的p c a p g e t e r r o 等函数 用 户无论是用实时还是脱机方式打开设备 都调用p c a p n e x t 获取下 一个包的函数 版本声明部分所在文件为v e r s i o n c 3 3 探测器实现 探针主程序与具体的协议无关 为所有的协议模块搭建一个公芡 平台 现有的网络协议种类繁多 基本的网络应用协议有h t t p p o p 3 s m t p f t p t e l n e t d n s h t t p s p c a n y w h e r e 等 共享文件的s m b 协议 用于操作o r a c l e m y s q l 等数据库的协议 用于拨号的r a d i u s 及t a c a c s 协议 还有q q m s n i c q 雅 虎通等及时通讯协议 28 现有这么多应用协议 在今后还会出现更 多新的协议 这就要求系统必须方便的扩展 主程序把公共的部分 抽象出来 同时为协议模块提供一组接口 在添加新协议时只需要 写一组接口函数 而不需要关注主程序逻辑 这种结构简化了程序 逻辑 大大减轻了程序员的工作量 同时也能提高软件的质量 西南交通大学硕士研究生学位论文第19 页 网络探测器主要包含网络通信 解析配置 网络数据采集 记录 日志 包缓冲及t c p 会话重组这几个功能模块 其关系如图3 4 所示 各模块在下面的章节详细讲述 图3 4 网络探测器功能模块简图 3 3 1 与数据中心间的数据传输 数据中心是联系网络探测器 数据库 报警器及文件服务器的桥 梁 网络通信模块主要负责与数据中心的通信 包括套接字的建立 与数据中心建立连接 发送及接收网络数据 断开与数据中心的连 接 在网络探测器与数据中心两个迸程间的相互采用客户机 服务器 模式 c l i e n t s e r v e rm o d e l 网络探测器为客户端 数据中心为服务 器端 该模式的建立基于以下两点 l 非对等作用 2 通信完全是异 步的 客户机 服务器模式在操作过程中采取的是主动请示方式 首先服务器方要先启动 并根据请示提供相应服务 过程如下 西南交通大学硕士研究生学位论文第2 0 页 l 打开 通信通道并告知本地主机 它愿意在某一个公认地址 上接收客户请求 2 等待客户请求到达该端口 3 接收到重复服务请求 处理该请求并发送应答信号 4 返回第二步 等待另一客户请求 5 关闭服务器 客户方 l 打开 通信通道 并连接到服务器所在主机的特定端

温馨提示

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

最新文档

评论

0/150

提交评论