




已阅读5页,还剩44页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 基于l i n u x 防火墙的内部邮件监控与阻断系统的设计和实现 摘要 电子邮件给信息安全带来的风险主要体现在信息泄密以及网络资源浪费,因 此,企业内部邮件的发送给企业带来极大的风险。信息安全技术和信息安全管理 是保证信息安全的两个最重要的方面,从信息安全管理的角度讲,几乎所有的企 业对外发送邮件都是允许的,风险不可避免;从信息安全技术角度讲,目前对于 s m t p 邮件的研究层出不穷,然而还没有成熟的对w e b 邮件的监控手段。因此, 研究企业内部邮件监控具有重要意义。 本论文针对企业内部邮件信息的安全问题,提出了基于l i n u x 防火墙的内 部邮件监控系统一i e m s 系统。i e m s 系统以l i n u x 操作系统为开发平台,采用 l i n u x 防火墙技术作为主要的技术支持,并利用非协议还原邮件方式作为监控 手段。 在分析s m t p 、w e b 两种邮件传输协议差异的基础上。论文提出了对s m t p 邮件和w e b 邮件的不同处理方式。常见的邮件监控方法是把邮件协议栈报文还 原,得到整个邮件以后再对邮件进行监控,这种方法对网络性能影响较大。与传 统方式相比,i e m s 系统针对邮件坤报文进行监控,降低了网络协议栈的处理时 间。i e m s 着重于对邮件正文内容的监控,采用多关键字匹配算法对邮件正文进 行扫描,从而判断邮件中是否存在非法信息。为了解决匹配过程中两个报文相连 信息的处理问题,论文提出了信息补偿的思想,即把前一个口报文的结尾信息 暂时保留起来,跟下一个i p 报文一起作匹配。为了提高对邮件正文扫描性能, 1 e m s 系统采用了树一位图多关键字匹配方法。i e m s 系统经过对邮件口报文的 扫描,判断邮件合法性,最后决定邮件是否可以通过。 由于i e m s 系统采用了l i n u x 防火墙技术和l i n u x 内核模块技术,所以 i e m s 系统具有良好的扩展性和可裁减性。 关键字:邮件监控防火墙关键字匹配 a b s t r a c t d e s i g na n di m p l e m e n t a t i o no ft h ee - m a i lm o n i t o r i n ga n d b l o c k i n gs y s t e mb a s e do nl i n u xf i r e w a l l a b s t r a c t t h er i s k st oi n f o r m a t i o ns e c u r i t yi n c u r r e db ye - m a i l sa r et h ed i s c l o s u r eo f i n f o r m a t i o na n dt h ew a s t eo fn e t w o r kr e s o u r c e c o n s e q u e n t l y , s e n d i n gi n n e re m a i l s b r i n g sg r e a tr i s k t oc o r p o r a t i o n s t h e r ea r et w ok e ya s p e c t st h a tg u a r a n t e et h e i n f o r m a t i o ns e c u r i t y , n a m e l y , t h et e c h n i q u e sa n dm a n a g e m e n to fi n f o r m a t i o ns e c u r i t y f r o mt h ea n g l eo fm a n a g e m e n t ,t h er i s k sa r ei n e v i t a b l e ,s i n c ea l m o s ta l lc o r p o r a t i o n s a l l o we m p l o y e e st os e n de x t e r n a le m a i l s f r o mt h ea n g l eo ft e c h n i q u e s ,t h er e s e a r c h e s o ns t m p p r o t o c o la r ei n c r e a s i n g l yb e c o m i n gp o p u l a r , b u tn om a t u r em e c h a n i s mo f m o n i t o r i n gw e be m a l l sc o m e sf o n l l h e n c e t h er e s e a r c ho nm o n i t o r i n ge m a i l ss t i l l h a ss i g n i f i c a n c e a i m i n ga te l i m i n a t i n go ra l l e v i a t i n gt h er i s kp r o b l e mo fi n n e re m a i l s ,t h i sp a p e r p r o p o s e sa ni n n e re - m a l lm o n i t o r i n gs y s t e mo e m s ) , w h i c hb a s e so nl i n u xf i r e w a u i e m st a k e sl i n u xo sa sad e v e l o pp l a t f o r m ,t a k e sl i n u xf i r e w a l lt e c h n i q u ea sam a i n t e c h n o l o g ys u p p o r t ,a n du s e sn o n r e c o v e r i n gm e t h o dt om o n i t o re - m a i l s b a s e do nt h ea n a l y z i n gd i f f e r e n c e sb e t w e e nw e bm a l lt r a n s f e rp r o t o c o la n ds m t p , t h i sp a p e rp r e s e n t st w od i f f e r e n tm e t h o d st od e a lw i t ht h ew e bm a l l sa n ds m t p m a i l s , r e s p e c t i v e l y i nt h eu s u a lm e t h o d ,t h ep r o c e s st om o n i t o re - m a i l st a k e st w os t e p s f i r s t , r e c o v e rt h ep r o t o c o ls t a c ko fe m a i ld a t a g r a m s e c o n d ,m o n i t o rt h ee - m a i la f t e r r e c e i v et h ew h o l ec o n t e n to ft h ee - m a l l c o m p a r e dw i t ht h eu s u a lm e t h o d ,i e m s m o n i t o r st h ee - m a i li pd a t a g r a m ,h e n c es h o r t e n st h et i m eo fp r o c e s s i n gn e t w o r k p r o t o c o ls t a c k i e m sf o c u s e so nm o n i t o r i n gt h et e x tc o n t e n to ft h ee - m a i l t oj u d g e w h e t h e rs o m ei n v a l i di n f o r m a t i o ne x i s ti nt h ee - m a i l s ,i e m st a k e sm u l t i - k e y w o r d s m a t c h i n ga l g o r i t h mt os c a nt h et e x tc o n t e n t i no r d e rt os o l v eh o wt od e a lw i t ht h e c o n j o i n ti n f o r m a t i o nb e t w e e nt w od a t a g r a m ,t h i sp a p e rp r e s e n t sa ni d e ac a l l e d i n f o r m a t i o nc o m p e n s a t i n g ,n a m e l y , t e m p o r a r i l ys a v et h ef i n a l i t yi n f o r m a t i o no ft h e i i a b s t r a c t p r e d e c e s s o rd a t a g r a m ,w h i c hi sp r o c e s s e dw i t ht h es u c c e s s o rd a t a g r a mt o g e t h e n a i m i n ga ti m p r o v i n gt h ep e r f o r m a n c eo fs c a n n i n gt h et e x tc o n t e n to fe m a i l s ,1 e m s t a k e sam a t c h i n gm e t h o dc a l l e dt r e e - b i t m a pm u l t i - k e y w o r d sm e t h o d t h r o u g ht h e p r o c e s so fs c a n n i n gt h ei pd a t a g r a mo fe - m a i l s ,1 e m sj u d g e st h ev a l i d i l yo fe - m a i l s , a n dt h e nd e c i d e sw h e t h e rl e tt h ee m a i l sp a s s d u et ot h el i n u xf i r e w a l lt e c h n i q u ea n dt h el i n u xk e r n e lm o d u l et e c h n i q u e ,w e b e l i e v et h a td e m si sw e l ls c a l a b l ea n dw e l lc u t t a b l e k e y w o r d s :e - m a i lm o n i t o r i n gf i r e w a u k e y w o r d s m a t c h 第1 童引言 第1 章引言 1 1信息安全与防火墙 信息安全涉及到信息的保密性( c o n f i d e n t i a l i t y ) 、完整性n n t e g f i t y ) 、可用性( a v a i l a b i l i t y ) 、 可控。| 生( c o n t r o l l a b i l i t y ) 。综合起来说,就是要保障电子信息的有效性。 保密性是对抗对手 的被动攻击,保证信息不泄漏给未经授权的人;完整性是对抗对手主动攻击,防止信息被未 经授权的人篡改;可用性是保证信息及信息系统确实为授权使用者所用;可控性是可咀对信 息及信息系统实施安全监控。 近年来,随着i n t e m e t 的普及和发展,信息安全的重要性也逐渐被越来越多的人所重视。 i n t e r a c t 是一种开放的标准的匠向所有用户的技术,其资源可以通过网络共享。资源共享和 信息安全是一对矛盾,由于i a t e m e t 的飞速发展,计算机网络的资源共享程度进一步加强, 随之而来的信息安全问题便日益突出。 对于一个企业的内部网络而言,信息安全问题从产生地点的角度讲,一般有两个产生途 径,来自企业内部的威胁和来自企业外部的威胁。来自企业外部的威胁主要包括病毒入侵、 黑客入侵等:而来自企业内部的威胁主要是对企业内部机密的泄漏等。无论威胁来自何方, 都会对企业造成无法想象的后果。 据统计,全球企业由于信息安全问题造成的损失逐年增长,从下表中我们可以有个大致 的了解i l j 。 表l 1全球信息安全损失数额 1 9 9 9 2 0 0 0 2 0 0 1 2 0 0 2 2 饷3 3 6 亿美元 4 2 亿美元 1 2 9 亿美元 超过2 0 0 亿美元 超过2 8 0 亿美元 随着人们信息安全意识的不断增强,对信息安全所带来后果的逐步认识,以及信息安全 相关法律、规章制度的制定,各个企业单位都制定了一些策略,采取了一些相应措施来加强 对企业信息安全的保护。 信息安全技术和信息安全管理是保障企业信息安全的两个重要方面。一方面,很多企业 采取一定的限制手段对员工访问i n t e r n e t 进行限制,另一方面,他们也应用信息安全技术来 保证内部敏感信息的流出、外部的非法入侵。 毫无疑问,从技术上讲,防火墙在企业信息安全中始终扮演着重要的角色。传统的基于 包过滤的防火墙随着各种应用程序以及违法手段的出现已经不能满足网络安全的要求,而基 于应用层的防火墙成为了传统防火墙的替代者口】。 第1 章引言 1 2 邮件监控系统研究意义与方法 电子邮件是i n t e m e t 出现早期就开始出现的网络应用之一随着i n t e m e t 的不断发展, 其仍然是互联网不可或缺的服务成为人们使用最为频繁的因特网服务之一。电子邮件给人 m j 带来馒刹的同时,也给信息安全带来了极大的挑战。垃圾船锋、非法部件、网络泄密都是 电子邮件带来的副作用,给企业带来直接经济损失。据我国国家保密局官员透露,约有3 0 的泄密案件祸起网上,而电子邮件泄密是威胁网络信息安全的主要原因之一【3 】。 某些不法分子将电子邮件作为一种传送非法信息的途径,反动文章、企业乃至国家机密 都可以通过不安全的电子邮件系统传送出去:某些企业内部员工也会蓄意或不经意的把企业 内部机密信息泄露出去。以上都会给企业、国家机关带来直接经济损失。因此,企业对流经 系统的电子部件进行有效的实时检测和拦截具有重要的意义。据调查,截止到2 0 0 2 年8 月, 大约3 4 的美国企业对员工的电子邮件进行检查。据日本京都新闻报2 0 0 2 年的一项统计, 超过1 5 的曰本大企业监视管理人员和普通员工的电子邮件,这样做的目的是防j l 泄漏企业 机密和客户信息i j 。2 0 0 1 年3 月,美国塞纳尔公司的首席执行官帕特森为了教训懒散的员工, 向4 0 0 名中层经理发出了一封措辞强硬的电子邮件。正是由于这封邮件被获取,短短的3 天时间,塞纳尔公司的股票市值即由1 5 亿美元暴跌至1 1 7 亿美元纠。 由此可见。对于企业,来自内部的威胁不可低估,监视内部电子邮件无疑是企业信息安 全的一个重要方面。 目前,邮件监控用于企业主要包括两个方面:邮件服务器端的监控以及企业网关处的邮 件监控。 对于邮件服务器端的邮件监控,当企业内部布置邮件服务器时,通过对经过邮件服务器 的邮件进行监控,能够有效的控带b 企业内部信息安全。这种方式可甑有更多的处理时间,方 法多,准确性高,同时为阻断外部垃圾邮件提供很好的平台。布箕邮件服务器,屏蔽所有外 部网络应用是企业有效控制信息安全的解决方案哪“。 对于企业网关的邮件监控,由于大多数企业需要访问互联网,所以企业跟外部的联系不 可避免,该种方式正起到作用。这种方式处理起来不能占用过多的时间因为这样会影响内 部网络的运行,所以准确性相对较低。 对于有信息安全保证的企业,只要跟i n t e m e t 相连,就存在内部机密泄漏的安全风险, 所以研究内部邮件监视控制系统具有现实意义。 1 3 1i e m s 系统综述 1 3i e m s 系统特点 i e m s ( i n n e re - m a i lm o n i t o r i n gs y s t e m ) 是内部邮件监控系统的简称。 目前,电子邮件主要有两个发送途径,通过w e b 方式以及通过s m t p 方式,由于w e b 界面的操作简单、无需额外软件、少额外配置的特点,越来越多的人都热衷于这种邮件发送 方式。不论对于w e b 邮件还是对于s m t p 邮件,邮件的发送过程是从主机到服务器的过程, 2 第1 章引言 只有有效地控制这条路径上的敏感邮件才能达到保护网络安全的目的,所以i e m s 系统选择 了企业边界网关作为驻留防火墙软件的网络位置。 内部邮件的发送既然有w e b 邮件和s m t p 两种方式,因而只有有效的控制两种方式的 邮件,才能做到对企业内部网络安全的有效保护。对于邮件监控来说,必须能够有效地同时 控制这两种方式。由于这两种方式所使用协议的传输特性不同。分而治之是一种有效的监控 策略。i e m s 正是采用这种分而治之的策略。完成对w e b 邮件和s m t p 邮件的监控。 现有的邮件监控系统大都首先进行邮件还原,然后利用基于规则或基于内容的策略进行 邮件过滤8 1 9 1 1 0 1 1 1 1 1 【1 2 l 。当用这种设计方法进行邮件过滤的时候,邮件还原必然会影响到网 络协议栈的运行;同时在邮件还原、对还原的邮件进行基于规则过滤和基于内容过滤的过程 中,传送邮件的t c p 连接都是存在的,处理邮件过程中的时间会影响到这条连接,从而引 起t c p 数据报重传,甚至连接超时,影响邮件传送。因此这种设计方法对网络性能影响很 大,难以在高速网络上使用。i e m s 对此进行了改进,使得邮件监控的大部分工作在l i n u x 内核空间运行,而且只针对存在安全隐患的数据报文进行处理。提高了系统的效率,有更高 的应用价值。 i e m s 系统的提出主要是对“基于电子政务的邮件监视控制系统”项目的延伸以及对“基 于l i n u x 防火墙的内部邮件监视与阻断系统的设计与实现”论文的改进( 该论文已经被计 算机工程录用) 。 1 3 2 项目延伸 “基于电子政务的邮件监视控制系统”项目采用了l i n u x 系统作为开发环境,只针对 s m t p 邮件以及p o p 邮件作了邮件还原。邮件还原是采用了用户空间守护进程的方法,利 用l i n u xl i b i p o 技术得到报文,整合以后的报文存放到数据库中。然后利用基于内容的邮 件分类的方法对邮件进行分类,起到了对企业内部邮件的监视作用。 “基于电子政务的邮件监视控制系统颂目邮件阻断部分薄弱,只能针对收件人、发件人 等进行过滤。i e m s 可以对邮件主题以及邮件内容进行多关键字匹配过滤。 该项目邮件监视系统过分薄弱,只能对s m t p 邮件进行监视,无法达到对所有邮件信 息安全的要求。i e m s 支持对w e b 邮件的监控。 1 3 3 论文改进 “基于l i n u x 防火墙的内部邮件监视与阻断系统的设计与实现”论文提出了对w e b 以及 s m t p 两种内部邮件的监视控制架构。对于w e b 邮件,利用l i n u x 防火墙机制进行监控, 因为w e b 邮件发送涉及t c p 连接较多,该论文针对所有的连接。对于s m t p 邮件,利用 欺骗的方式构造邮件服务器,从而完成监控功能。 由于“基于l i n u x 舫火墙的内部邮件监视与阻断系统的设计与实现”论文邮件服务器欺骗 方式实现复杂,容易被察觉,所以i e m s 采用跟w e b 邮件相同的处理方式,但是设计成不 同的模块。所以也是一种分而治之的思想。 “基于l i u u x 防火墙的内部邮件监视与阻断系统的设计与实现”论文标识所有邮件交互连 3 一兰! 兰! ! 重 接,复杂性大。i e m s 系统只针对最主要的邮件发送连接进行标识,降低问题复杂度。 4 第2 章邮件传输协议分析及邮件监控系统研究 第2 章邮件传输协议分析及邮件监控系统 研究 本章主要内容是对邮件传输过程的介绍以及邮件传输协议的分析,并且对s m t p 以及 w e b 邮件两种协议进行比较。本文所讨论的邮件传输都是指企业内部邮件的发送。 对于邮件传输过程的了解有助于我们了解邮件在整个互联网上的传输,本章是从宏观的 角度说明。对丁邮件传输协议的分析,是i e m s 系统的理论基础对整个系统防火墙模块的 设计将起剑指导作用。对于两种邮件协议的分析比较,得到了设计两种不同处理方式的根据。 2 1邮件传输过程分析 邮件传输是一个典型的客户端、服务器通信模式,邮件传输的过程就是客户端与服务器 交互的过程。 内部邮件的发送主要分成两种邮件,s m t p 邮件发送和w e b 邮件发送。所以讨论邮件 传输过程将从这两个方面分另进行讨论。 对于电子邮件系统来说,单纯地使用邮件客户端程序进行邮件收发已经不能满足用户移 动办公的需要。w e b 邮件技术的出现,彻底解决了用户办公的需要,使得邮件用户可以在 任何地方使用浏览器登录邮件服务器收发邮件而不用配置邮件客户端程序。 2 1 1w e b 邮件发送 发送w e b 邮件的第一步是登陆w e b 服务器,这个过程首先主机向所配置的d n s 服务 器发送请求,得到w e b 服务器的l p ,然后登陆到w e b 服务器。 一般地,都会首先进行登录,然后进入w e b 邮箱管理页面,发送邮件的时候需要填充 一些w e b 表单,使用h t i p 的p o s t 方法把邮件传递到服务器端。 w e b 邮件服务器得到邮件之后会把得到的邮件传递给指定的s m t p 服务器,然后s m t p 服务器可能继续投递邮件到其它s m t p 服务器,最后传送到p o p 服务器。 整个过程如图2 1 所示: 图2 1w e b 邮件发送过程 客户端与w e b 服务器的交互过程使用的都是h t l v 协议f ”】,对于内部邮件的监控工作 就是能够监控客户端与w e b 服务器的交互,也就是分析m 执议。 5 第2 蕈邮件传输协议分析及邮件监控系统研究 2 1 2s m t p 邮件发送 s m t p 邮件的发送与w e b 邮件的发送不同,不会涉及到w e b 服务器。首先客户端通 过d n s 解析得到一个台适的s m t p 服务器i p ,然后客户端通过s m t p 协议把邮件发送到这 个s m t p 服务器上。这个s m t p 服务器会把邮件投递到目的p o p 服务器,中间可能需要其 它s m t p 服务器中转,晟后到达p o p 服务器。 整个过程如图2 2 所示【1 4 】: 图2 2s m t p 邮件发送过程 客户端与s m t p 服务器之间交互用的是s m t p 协议【1 5 l ,因此i e m s 系统提供s m t p 髓 控模块来实现s m t p 协议的监控功能。 2 2邮件传输协议分析 通过以上分析,我们知道邮件传送主要有两种方式,w e b 方式以及s m t p 方式,它们 所使用的协议分别是h t r p 协议以及s m t p 协议。本节将着重介绍这两种协议。 2 2 1w e b 邮件传输协议 传送w e b 邮件使用的足h 1 1 甲协议,然而h t r p 协议是一个非常庞大的协议,本文只 讨论跟i e m s 系统密切相关的部分不多赘述。 目前大多数邮箱服务器都会提供w e b 邮箱,比如w w w e y o u t o m ,m a i l s i n a c o i i l c l l 等 等。虽然他们都使用h t r p 协议进行邮件传送,但是他们的实现方法却各不相同,也就是说, 不能用相同的方法提取到邮件的各种信息。 为了得到直观感觉,本节分析了e y o u 的w e b 邮件处理方式。 一般地说,用e y o u 发送邮件的时候会使用到3 条h 兀甲连接。用户登录连接,附件上 传连接,以及邮件发送连接。 通过这三条连接,就会把整个邮件的内容传递到服务器上。用户登录连接用来标识用户, 也就是邮件的发件人;附件上传连接主要是传递附件,客户端通过m i tu p l o a d 方法把附件 传递到服务器:邮件发送连接可以发送邮件的其它部分,比如收件人、主题、正文等,而对 于邮件附件,只传递了附件的文件名,因为附件已经上传到了服务器上,依靠文件名就可以 找到附件副本,邮件发送连接使用h t f p 的p o s t 方法实现的。 以上是e y o a 发送邮件的整个过程,但是其它w e b 邮箱却不尽然。s i n a 的邮箱就是使用 两条m 1 下连接,所有的附件跟邮件体一起发送。 由此可见,不同w e b 服务器发送邮件差异性对于邮件监控是一个难题。i e m s 将使用 6 画一 型 露一 喾 坠醛 竺吣; 画一 第2 章邮件传输协议分析及邮件监控系统研究 提取共性的方法对w e b 邮件进行监控。 一般来讲,一个w e b 邮件发送都会使用到一个页面,用 n 1 甲的p o s t 方法来实现。 i e m s 主要根据这个特点来尽可能多的提取邮件信息。下面来分析一下e y o u 的这个页面。 e y o u 的发送页面如图2 3 所示: 图2 3w e b 邮件发送页面 该页面提交时的数据报文如图2 4 所示: 图2 4w e b 邮件提交数据报文 通过数据报文,我们不难发现一些特征: 表2 1w e b 邮件传输特征 收件人 r e c i p i e n t = 发件人c o o k i e = s p a c e 主题 s u b j e c t = 内容c o n t e n t = 从对各个w e b 服务器的分析可以得出结论各个w e b 服务器都存在着这样的共性: 存在着一条传送邮件主要信息的肌p 连接,通过对这条连接的监控就可以有效的监控该站 点的w e b 邮件。 7 第2 章邮件传输协议分析厦翻;件监控系统研究 我们还可以得到一个结论:对于w e b 邮件协议分析不是对 册协议本身的分析,而 是建构在m t p 之上,w e b 邮件协议只是 r r r p 协议的一种应用,而且各不尽然。 2 2 2 s m t p 邮件传输协议 s m t p ( s i m p l em a i l t r a n s f e r p r o t o c 0 1 ) 协议是为了保证电子邮件的可靠和高效传送i ”】。 t c p i p 协议的应用层中包含有s m t p 协议,但事实上它与传输系统和机制无关,仅要求一 个可靠的数据流通道。它可以工作在t c p 上,也可以工作在n c p 、n i t s 等协议上。在t c p 上,它使用端口2 5 进行传输。s m t p 的一个重要特点是可以在可交互的通信系统中转发邮 件。 连接和发送过程: 1 、建立t c p 连接 2 、客户端发送h e l o 命令以标识发件人自己的身份,然后客户端发送m a i l 命令服务器端 希望以o k 作为响应,表明准备接收。 3 、客户端发送r c p t 命令,以标识该电子邮件的计划接收人,可以有多个r c p t 行服务器 端则表示是否愿意为收件人接受邮件。 4 、协商结束,发送邮件,用命令d a t a 发送。以表示结束输入内容一起发送出去。 5 、结束此次发送,用q u i t 命令退出。 通信过程中,发件方s m t p 与收件方s m t p 采用对话式的交互方式,发件方提出要求 收件方进行确认,确认后才进行下一步的动作。整个过程由发件方控制,有时需要确认几回 才可以,如图2 5 所示 l 兰! 竺竺一 7 l 三竺竺坚_ 口堕四矗 童 i 垄耋垒皇i- 臣圜 厂1 i i 面神 主 发送方s l n p接收方s g r p 圈2 5s m t p 对话方式 为了保证回复命令的有效,s m t p 要求发件方必须提供接收方的服务器及邮箱。邮件的 命令和答复有严格的语法定义,并且回复具有相应的数字代码。所有的命令由a s c i i 码组 成。命令代码是大小写无关的,如m a i l 和m a i l ,m a i l 是等效的。 下面介绍一下s m t p 命令。 s m t p 定义了1 4 个命令,其中使得s m t p 工作的基本命令有7 个,分别为:h e l o 、 m a l l 、r c p t 、d a t a 、r e s t 、n o o p 和q u i t 。下面分别介绍如下。 h e l o :发件方问候收件方,后面是发件人的服务器地址或标识。收件方回答o k 时标 识自己的身份。问候和确认过程表明两台机器可以进行通信,同时状态参量被复位,缓冲区 被清空。 8 第2 章邮件传输协议分析及邮件监控系统研究 m a i l :这个命令用来开始传送邮件,它的后面跟随发件方邮件地址( 返回邮件地址) 。 它也用来当邮件无法送达时,发送失败通知。为保证邮件的成功发送,发件方的地址应是被 对方或中间转发方同意接受的。这个命令会清空有关的缓冲区,为新的邮件做准备。 r c p t :这个命令告诉收件方收件人的邮箱。当有多个收件人时,需要多次使用该命令, 每次只畿指明一个人。如果接收方服务器不同意转发这个地址的邮件,它必须报5 5 0 错误代 码通知发件方一如果服务器同意转发,它要更改邮件发送路径,把最开始的目的地( 该服务 器) 换成r 卜一个服务器。 d a t a , 收件方把该命令之后的数据作为发送的数据。数据被加入数据缓冲区中,以单 独一行是”的行结束数据。结束行对于接收方同时意味立即开始缓冲区内的数据传送,传 送结束后清空缓冲区。如果传送接受,接收方回复o k 。 r e s t :这个命令用来通知收件方复位,所有已存入缓冲区的收件人数据,发件人数据 和待传送的数据都必须清除,接收放必须回答o k n o o p :这个命令不影响任何参数,只是要求接收放回答0 k 不会影响缓冲区的数据。 q u i t :s m t p 要求接收放必须回答o k ,然后中断传输;在收到这个命令并回答o k 前, 收件方不得中断连接,即使传输出现错误。发件方在发出这个命令并收到o k 答复前,也不 得中断连接。 下面是s m t p 答复中用到的代码和含义: 通过以上介绍,我们对协议有一定的了解,总体来说,如果对于整个协议状态机实现, 难免有些复杂。在不失准确性的同时,可以只对邮件中的d a t a 字段作处理,同样能够很 好地完成监视控制的功能。下面给出了一个完整的s m t p 邮件的d a t a 字段,很容易发现, 所有的邮件信息都能从中提取出来。 9 一 要! 兰坚堡生塑塑塑坌堑垦塑竺兰堡至壅望窒 2 3邮件传输协议比较 通过以上分析:s m t p 协议是一种专门的邮件发送协议,所有s m t p 服务器都是统一的; w e b 邮件协议只是h r r p 协议的一种应用,不同w e b 邮件服务器有着不同的协议规则。 以上决定了i e m s 系统邮件标识部分的处理方法: 首先,s m t p 邮件与w e b 邮件分别处理,因为两种协议存在着很大的差异。不可能统 其次,w e b 邮件单独处理,但是对于所有站点,找到共同点,统一处理,这样可以简 化问题的复杂度。而且每个站点都相对稳定,不会改变邮件传输的格式,所以准确性也很高。 2 4 邮件监控方法研究 目前存在很多关于邮件监视控制的系统,无非包括两类,监视系统和监视控制系统。 邮件监视系统的实现相对来说比较简单,平台选择比较宽泛。无论是l i n u x 还是 w i n d o w s 系统都提供一些可以得到网络数据报文的库,如l i n u x 下的l i b c a p 以及w i n d o w s 下的w m p c a p ,而这种系统的方法就是通过库函数得到邮件数据报文,根据邮件数据报文进 行协议整合,从而还原成邮件。而这种系统目前来说都是针对s m t p 邮件和p o p 3 邮件,而 对于w e b 邮件几乎没有邮件篮视系统。邮件监视系统对于敏感信息的传递只能起到记录的 作用,不能从根本上解决邮件服务给信息安全带来的隐患。 邮件监视控制系统的实现相对来讲比较复杂。因为邮件的阻断要求实时性比较高,这样 如果进行协议还原会影响网络协议栈的正常处理,无法应用在流量相对比较大的企业内部网 络。目前的邮件监视控制系统大多建立在l i n u x 平台基础上,应用多关键字匹配甚至文本分 析来对还原邮件进行识别。这主要得益于l i n u x 平台的开放性。 l o 第3 章l i n u x 防火墙及其相关技术分析 第3 章l i n u x 防火墙及其相关技术分析 l i n u x 2 4 于2 0 0 1 年1 月4 日正式发布,在该版本中,开发人员花费了很多时间改进现 有的a p i 和其它组成部分,使系统结合更紧密。l i n u x 2 4 内核相对于以前的版本,具有广泛 的硬件支持,优秀的可伸缩性和可靠性。 3 1 l i n u x 内核防火墙机制 l i n u x 2 4 内核防火墙机制主要涉及到n e t f i t e r 和l p t a b l e s , 3 1 1n e t f f i t e r 技术分析 n e t f i l t e r 是l i n u x 2 4 内核的一个子系统,它构造了一个抽象、通用的框架,使得诸如数 据报文过滤、网络地址转换以及网络连接跟踪等技巧成为可能i 。n e t f i l t e r 定义了协 议栈中的检查点和在检查点上引用的数据结构,以及在检查点上对这些结构引用的过程n “。 当数据报文游历l i n u x 内核的网络协议栈时,它必须要穿过几个检查点,在这些检查点 上,数据报文可以被分析并且选择是保留还是丢弃,这些检查点就是n e f f i l t e rh o o k , 一它就 像是高速公路上的检查站,所有经过的车辆都要在这里接收检查,只有合法的车辆才能顺利 通过,其他的刚被扣留或者做其他处理。检查点分布在协议栈的流程中,处于t c p i p 网络 模型的网络层。 图3 1 是i p v 4 协议栈中的检查点分布: 困 图3 , 1n e t m t e r 中的检查点 图中检查点的名称如表3 1 所示: 衰3 1n e t l m t e r 检查点名称 检查点编号检查点名称 n f i pp i t er o u l 啪 n fi p _ l o c a li n n f 口f o r w a r d n fi pp o s tr4 0 u 1 1 n o n f 口l o c a lo u t 1 1 墨! 垦兰垫三堕查堕垦苎塑茎鎏查坌堑 图3 1 中tr o u t e l 处对收到的报文做路由查找并判断这个包是需要转发的报文还是发 往本机上层的报文,r o u t e _ 2 处查找发出报文的路由。n f i p p r e r o u t i n g 处对所有传入 i p 层的数据报文进行检查,在这之前,有关数据报文的版本、长度、校验和等正确性检查 已经完成en f i p 一乙0 c a l _ i n 对发往本机上层的数据摄文进行检查。n fi pf o r w a r d 处 检查需要转发的数据报文。n f - 吐p o s tr o u t i n g 处对所有向链路层传递的数据报文进行 检查,注意在此处数据报文的路由已经确定。n fi pl o c a l _ o u t 对本机发出的报文进行 检查。 n e t f i l t e r 的每个检查点上都引用了一些数据结构,就是a f _ h o o k 。 为每个协_ o p s n e t f i l t e r 议栈预先定义了8 个链表数组用于保存检查点上的数据结构,这些链表与协议栈中的检查点 一一对应。在实际韵应用中,这8 个链表并不一定都被使用,比如在i p v 4 中,只定义了5 个检查点,分别对应前5 个链表,后面的3 个链表没用使用。 h i _ h o o ko p s 结构在1 n u x - 2 4 x i n c l u d e l i n u x n e f f i l t e r h 中定义如下: 协议栈链表数组与n f _ h o o k _ o p s 的结构关系如图3 2 所示 协议拽 p v 4 协议栈协议栈协议栈 s l d i 献h e e dm d m h e a ds l n l e l i l s i h e a djs h u d l i s t h e a d 3 t n j c tb a th e a d s 打u dl i s th e a d a b l j c ti i s th e a d 藿h而剥p d o d t yp d o d t y 指向最后一个 g t l l l l di i s th e a d n l h o o k _ o p # s l n j c lj i s th e a d a b u c ti i s th e a d 5 1 t l i c ti i s th e a d 点 图3 2 怫议栈链表数组与n fh o o k _ o p s 结构 这些结构体通过l i s t 连成个链表。此外,在l i n u x 核心网络协议栈中有一个全局变量 s t r u c tl i s t _ h e a dn f _ h o o k s n p r o t o i n f _ m a x _ h o o k s ,该变量是一个二维敷组其中第一 维用于指定协议族,第二维用于指定h o o k 的类型( 检查点) 。该二维数组的每一个元素都对 应着这样的一个n fh o o ko 口s 结构链表。 n fh o o k _ o p s 结构中的a fh o o k f nh o o k 函数指针指向的函数负责对经过的数据报文进行 操作。a f _ h o o l c f n 函数的原型在l i n a x l n e t f i l t e r h 中给出: 第3 蕈l i n u x 防火墙及其相关技术分析 第二个参数是一个指向指针的指针,该指针指向的指针指向一个s kb u f f 数据结构,用 来描述接受处理的数据报文。后面的两个参数是指向n e td e v i c e 数据结构的指针,n e td e v i c e 数据结构被l i n u x 内核用于描述所有类型的网络接e l 。参数i n ,用于描述数据报文到达的接 口,参数o u t 用于描述数据报文离开的接口。通常情况下,这两个参数中将只有一个被提供。 例如:参数i n 只用于n f _ i p p r e _ r o u t i n g 和n f _ i p _ l o c a l _ i n 检查点,参数o u t 只用 于 一i p l o c a l _ o u t 和n f _ i p _ p o s tr o u t i n g 检查点。最后一个参数是一个命名为 o k f n 函数指针,该函数以一个s kb u f f 数据结构作为它唯一的参数,并且返回一个整型的值。 当n e f f i l t e r 被启用时,它用于完成接收数据报文后的后续操作。h o o k 函数最后必须返回下 列预定义的n e t f i l t e r 返回值中的个,如表3 2 所示: 表3 2h o o k 函数返回值含义 返回值含义 n fd r o p n fa c c e p t n fs 1 d l e n n fq u e u e n fr e p w 丢弃该数据报文 接受该数据报文 该数据报文交由h o o k 函数处理,不要继续传辅该数据报 将该数据报文排队,交给用户空间进程处理 再次调用该h o o k 茵数 n fd r o p 这个返回值的含义是该数据报文将被完全的丢弃,所有为它分配的资源都应 当被释放。n f _ a c c e p t 这个返回值告诉n e t f i l t e r :到目前为止,该数据报文还是被接受的 并且应当被递交到网络协议拽的下一个阶段。n f _ s t o l e n 表示该h o o k 函数将从此开始对 数据报文的处理,并且n e t f i l t e r 应当放弃对该数据报文做任何的处理。但是,这并不意味着 该数据报文的资源已经被释放。这个数据报文以及它独自的s kb u f f 数据结构( h n u x 网络协 议栈用s kb u f f 数据结构来描述数据报文,这个数据结构在l i n u x s k b u f f h 中定义) 仍然有效, 只是h o o k 函数从n e t f i l t e r 获取了该数据报文的所有权。最后一个返回值n fr e p e a t 请求 n e f f i l t e r 再次调用这个h o o k 函数。显然,使用者应当谨慎使用n fp e p e a t 这个返回值 以免造成死循环。 f 丽介绍如何注册一个h o o k 函数【1 ”,注册一个h o o k 函数并不是增加一个检查点,而 是在检查点上挂一个n f _ h o o k _ o p s 结构体。这需要调用n f r e g i s t e r _ h o o k 函数,以及用到一 个n fh o o k _ o p s 数据结构。n f _ r e g i s t e r _ h o o k 函数以一个n f _ h o o k _ o p s 数据结构的地址作为参 数并且返回一个整型的值。首先声明并填充一个n f _ h o o
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论