基于ASSP的企业级反垃圾邮件解决方案探讨.docx_第1页
基于ASSP的企业级反垃圾邮件解决方案探讨.docx_第2页
基于ASSP的企业级反垃圾邮件解决方案探讨.docx_第3页
全文预览已结束

下载本文档

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

文档简介

152福建电脑2008 年第 5 期基于 ASSP 的企业级反垃圾邮件解决方案探讨王小波( 上海安信农业保险股份有限公司信息技术部 上海 200011 )【摘 要】: 本文主要就垃圾邮件的来源及典型的发送方式进行简要的分析, 并就如何正确配置 ASSP 来对垃圾电子邮 件进行主动防御提供概要的说明与测试。【关键字】: 垃圾邮件、SPAM、ASSP、过滤伴随着 Internet 的普及, 电子邮件作为一种主流的通讯方式 已日益得到了广泛的使用。但是在带来便利的同时 , 随之而来的 垃圾邮件也日益猖獗。据中国互联网络信息中心(CNNIC) 2007 年 1 月公布的 中 国互联网络发展状况统计报告显 示, 中国网民平均每周收到垃 圾邮件 28.5 封, 在网民对互联网最反感的方面排名第四位。 然 而在使用电子邮件的网民中, 只有不到 40%使用电子邮件过滤 软件, 超过五成的网民没有使用过滤软件, 显示网民对于防范滥 发邮件的意识薄弱。1虽然人们从技术和法律上都进行不懈的努力, 垃圾邮件也 在一定程度上得到了控制, 然而在国内, 由于技术和立法上的滞 后与不足, 导致中国已经日益成为世界垃圾邮件的新源头。在这 种情况下, 垃圾邮件过滤服务器应运而生, 而作为其中最为优秀 的开源项目之一的 Anti- Spam SMTP Proxy (以下简称 ASSP) 2逐 渐进入了我们的视野。下文我们就垃圾邮件的来源及如何使用 ASSP 来进行主动防御进行简单的讨论。1.垃圾邮件的来源分析垃圾电子邮件, 也称为未经请求的电子邮件, 英语全称为 Unsolicited Bulk Email, 或简称为 UBE。顾名思义, 它是发送给一 群接收者的未经请求的电子邮件3。垃圾电子邮件按产生途径主要可以分为两类: 大量注册合 法 账 号 发 送 型 以 及 利 用 SMTP 协 议 的 漏 洞 冒 名 顶 替 进 行 发 送 型。前者是传统垃圾电子邮件制造者较为惯用的方法, 然而随 着免费电子邮件服务提供商对于 SMTP 服务器账户日发件数量 和群发人数等功能上的限制, 这种方法已经基本上不能再被用 来大量发送垃圾电子邮件了; 而后者则是近年来垃圾邮件制造 者普遍采用的方法, 也是下文讨论的 ASSP 所要针对的主要问 题。此类用户主要是利用 SMTP 服务器的 Relay 功能, 通过本地 的 SMTP 客户端程序直接访问公开的 SMTP 中继服务器 (使用 Open Relay 功能), 或者收件人的 SMTP 服务器(类似部分邮件客 户端程序中的 EMS 特快专递功能), 以此来大量发送垃圾邮件。 下 面 的 例 子 可 以 较 为 直 观 地 说 明 问 题 。 在 该 实 例 中 笔 者 通 过 EMS 特 快 专 递 方 式 假 冒 给 在 上 的 某 个用户发送一封垃圾邮件:1.1. 使用 DNS 服务器查找收件人的 Mail Exchange(MX)服务器 使 用 nslookup 命 令 , 垃 圾 邮 件 制 造 者 先 使 用 ISP 提 供 的DNS 服务器查 找 收 件 人 所 在 域 的 Mail Exchange 服 务 器 即 、、 。 笔 者 随 机 选 择 了 freemx3.sinamail. 作为接下来试验用的 SMTP 服务器。1.2. 使用收件人的 MX 服务器给收件人发送测试垃圾邮件220 mx3- 91. ESMTP Postfix (Postfix Rules! ) HELO 250 mx3- 91. MAIL FROM: 250 2.1.0 OkRCPT TO: 250 2.1.5 OkDATA354 End data with . This is a test UBE mail.250 2.0.0 Ok: queued as 21A0D1A2674D QUIT221 2.0.0 Bye图 1 直接连接 MX 服务器给收件人发送测试垃圾邮件如 图 1 所 示 , 为 笔 者 连 接 上 一 步 找 到 的 freemx3.sinamail. , 直接将垃圾邮件推送给收件人的 SMTP 通讯 全 过 程。1.3 收件人在不知发件人的情况下收到测试垃圾邮件Return- Path: Delivered- To: witty_wangmail3- 112.Received: (qmail 38068 invoked from network); 10 Jun 2007 11:35:17 - 0000 Received: from unknown (HELO mx3- 91.) (1)by mail3- 112. with SMTP; 10 Jun 2007 11:35:17 - 0000 X- Virus- Scanned: by SinaMailAVX- sina- Originating- IP:76 X- sina- Originating- HELO: X- sina- Received- SPF:neutralReceived: from (unknown 76)by mx3- 91. (Postfix) with SMTP id 21A0D1A2674D for ; Sun, 10 Jun 2007 19:34:20 +0800 (CST)Message - Id: Date: Sun, 10 Jun 2007 19:34:20 +0800 (CST)From: To: undisclosed- recipients:;This is a test UBE mail.图 2 收件人接收到的含头信息的邮件全文如图 2 所示, 收件人将看到收件箱里多了一封从 ubeno- 发来的垃圾邮件, 然而事实上这个发件人却根本不存 在。当然上述过程存在一个小问题, 就是收件人的 MX 服务器 会记录下发件人的 IP 地址, 例如图 2 邮件头中的 X- sina- Origi- nating- IP 字段记录下了发件人的 IP 地址。 然而通过 Internet 上 无数的匿名 代 理 服 务 器 、肉 鸡 或 者 类 似 于 Tor6之 类 的 匿 名 网 络, 这些地址也完全可能是无从追查的虚假地址。事实上无法获 取发件人真实信息而仅仅被动地转发邮件是造成目前大多数邮件服务器垃圾邮件泛滥成灾的最主要原因之一。2.ASSP 针对虚假发件人提供的防护ASSP 的全称为 Anti- Spam SMTP Proxy, 望文生义它是一个 反垃圾邮件的 SMTP 协议代理服务器, 它使用 Perl 作为核心语 言编写, 目前的最新版本为 1.3.3。ASSP 的安装过程较为简单, 笔者不再复述, 大家可以参阅其官方网站上的相关资料。下面就 让我们看一下怎样通过设置相关功能来全面阻止垃圾邮件的入 侵。2.1 关闭 Open RelayASSP 的默认策略就为阻止垃圾邮件而设计的, 事实上只要 配置了本地域名, 它的默认策略就足以禁止 Open Relay 的全部 通信。在 Relaying 板块中配置好本地域名即可排除前往非本地 域名邮件的转发。2.2 检查收件人地址是否符合 RFC 8227标准2008 年第 5 期福建电脑153说到 RFC 822 标准可能大家不太熟悉, 然而说道 SMTP 协 议8相信凡是使用电子邮件时间稍长的人一般都不会陌生。事实 上, RFC 822 和 SMTP 协议对应的国际标准密切相关。我们都知 道 , ASSP 仅 仅 是 一 台 邮 件 代 理 服 务 器 , 它 的 任 务 是 将 所 有 的 SMTP 通讯经过过滤以后发送给后台的主 SMTP 服务器。要求本 地收件人地址符合 RFC 822 协议的目的, 其实就是为了防止垃 圾邮件制造者利用藏在某些后台邮件服务器中的一些例如 All、 MailList 等特殊收件人地址来向收件服务器群发垃圾邮件。2.3 开启邮件打分(Penalty Box)功能将 Penalty Box 字段设置成 1 (Active), 这样做可以根据发件 人 IP 地址的历史行为判断其是否为垃圾邮件制造者, 从而在稍 后的一段时间内对这些地址采取临时屏蔽措施。 这样做的好处 是当短时间内垃圾邮件大量涌入时, 可以有效降低 ASSP 服务 器的负载, 同时在一定程度上减弱 DoS 攻击的威胁。2.4 注意虚假的 HELO 指令在垃圾邮件发送者中, 最常见的做法就是发送虚假 HELO 指令。 按照 RFC 822 的相关规定, 发件人在 HELO 命令中必须 指明其邮件来源域的所在地, 而为了避免暴露自己的真实身份, 垃圾邮件制造者往往假冒其他域上的邮件服务器发送信件。 开 启 Validate Sender 板 块 中 的 Block Forged Helos 字 段 固 然 能 防 止这种情况的发生, 然而由于国内的很多 SMTP 服务器管理员 并不注意按照国际标准进行配置, 因此很多正常信件也会难以 通过。 故建议将该字 段 设 置 为 2(log only)或 者 3(message- scor- ing)。为了防止上述情况的发生, 笔者建议打开 Invalidate Format of HELOs 功能, 然后将 Expression to Invalidate Format of HELO 字段中的正则表达式设置成(d+.d+.d+.d+$|.+.?$)|(w*- d+- d+)|(w* .d+.d+)|(W|)ip|vlan|proxy|static|dynamic|ppp| dsl|pool|userd*Ww*)|($), 当然该字段的设置可能需要根据用 户经验和实际情况来进行调整。由于害怕暴露身份 , 而又要通过 下文中的逆向 DNS 校验, 垃圾邮件制造者们往往喜欢使用 ISP 提供的动态域名来发送邮件, 而 ISP 对于拨号用户的动态域名 大多有规律可循, 因此事实证明, 合理设置 Expression to Invali- date Format of HELO 字段对于识别 HELO 欺骗非常有效。2.5 开启逆向 DNS 查询如果发件人所在域在 DNS 服务器上未注册, 则基本可以判 断其为垃圾邮件, 因此有必要将 Validate Sender Domain MX/A 字 段 设 置 成 1 (Active)。 此 处 需 要 注 意 的 是 不 要 将 Reversed Lookup 置为 1 (Active), 而是最好置为 2 (log only )或 3 (message- scoring)。这是因为在国内有很多网管在配置相关域的 DNS 记录 时往往只注重正向解析, 而疏于对反向 PTR 指针的配置。 打开 该选项容易引起垃圾邮件误报。 而不少境外垃圾邮件制造者由 于害怕逆向 DNS 查询往往将 ISP 分配的动态域名作为发件域, 这正好使用上面提到的正则表达式进行识别。2.6 开启 Delaying/Graylisting 功能在 Delaying/Graylisting 板块中, 开启该功能。该功能的主要 作用是对于从陌生 IP 地址(或 C 类网段)收到的第一次邮件传递 请求, 暂时先回复一个 451 错误。一般正常的邮件服务器在间隔 一段时间之后都会重新传递, 此时 ASSP 方允许其通过。然而很 多垃圾邮件批量发送程序则会放弃发送工作。 因此该功能可以 较好地屏蔽大多数垃圾邮件。2.7 谨慎处理实时黑名单(DNSBL/URIBL)在这里要提醒大家注意的是要慎用 DNSBL 和 URIBL 板块 中的实时黑名单功能。由于众所周知的原因 , 目前绝大多数国内 的 IP 地址和域名都位于国际反垃圾邮件组织的实时过滤黑名 单上, 因此打开这些选项虽然能较好的抵御境外垃圾邮件的攻 击, 但同时也会阻碍用户接收大量国内发出的邮件。况且不少狡 猾的垃圾邮件发送者不时变换发件 IP 地址和域名, 因此如果确 实有必要开启这些选项, 建议使用国内反垃圾邮件组织所提供 的实时黑名单。92.8 附件和病毒过滤病毒也是垃圾邮件的制造者之一, 而 ASSP 对于特定扩展 名附件的拦截功能比较强, 同时结合著名的开源杀毒软件 Cla- mAV, 能较好地拦截大量由已知病毒产生的垃圾邮件, 并保护 MUA 和最终用户免受邮件病毒的袭击。ASSP 对于文件的过滤 依然采用正则表达式, 并实行分级制度, 高级别的过滤内容包括 低级别的过滤内容。级别越高, 其所过滤的文件类型越多。建议 将 Attachments & Viruses 板块中的 External Attachment Blocking 字段设置成 3, 这样可以有效地直接阻止绝大多数邮件病毒所 产生的带毒附件。2.9 脚本过滤由于 MIME 的流行, 目前不少邮件都内嵌有 Html 代码。 这 些代码在美化邮件的同时, 其中也不乏带有恶意脚本代码的病 毒。上面提到的 ClamAV 虽能对附件进行检测, 但是对有些使用 Html 中 标 记 的 代 码 , 建 议 通 过 设 置 Regex Filters / Spambomb 板块的相应字段进行防御。3. 防护效果测试3.1 测试环境说明3.2. Open Relay 测试220 AAIC ESMTP MAIL Server ready at Tue, 12 Jun 2007 21:08:29 +0800HELO 250 Hello MAIL FROM:250 2.1.0 .Sender OK RCPT TO:530 Relaying not allowed QUIT221 2.0.0 Service closing transmission channel图 3 对于 Open Relay 邮件的有效识别3.3 虚假发件人测试220 AAIC ESMTP MAIL Server ready at Tue, 12 Jun 2007 21:37:59 +0800HELO 250 Hello MAIL FROM:250 2.1.0 .Sender OK RCPT TO:250 2.1.5 DATA354 Start mail input; end with . This is a test UBE mail.554 5.7.7 Missing MX and A record .图 4 对于虚假发件人的识别3.4 使用 ISP 提供的拨号动态域名测试220 AAIC ESMTP MAIL Server ready at Tue, 12 Jun 2007 21:47:33 +0800HELO 18. 250 Hello MAIL FROM:250 2.1.0 .Sender OKRCPT TO: 250 2.1.5 DATA354 Start mail input; end with . This is a test UBE mail.554 5.7.7 Invalid HELO Format .图 5 使用 ISP 提供的拨号动态域名的有效识别3.5. 测试结果及结论由图 3、 图 4 及图 5 可以看出, ASSP 针对上文提到的一些 典 型 的 垃 圾 邮 件 发 送 行 为 能 够 非 常 准 确 地 进 行 识 别 。 对 于 Open Relay 的阻止发生在 RCPT 指 令 之 前 , 而 ( 下 转 第 164 页 )164福建电脑2008 年第 5 期LISHED其中 Send- Q 比较重要, 它反映了发送包队列的长度。 若 Send- Q 的值十分大并且在某些连接上还在不断增加, 则说明网 络出现了故障。若怀疑因为物理故障而导致网络问题, 网络工程师可以使 用诊断设备定位故障并排除。若是因为网络太忙而导致冲突、超 时和重发次数的增加, 就需要重新划分网络负载, 然后通过提高 子网的性能来提高整个网络的性能。5、监控 CPU 性能除文中前面介 绍 的 sar - q、vmstat 命 令 可 以 检 测 CPU 的 负 载外, sar - u 命令也可以简便迅速地报告系统的整体性能, - u 选 项将报告 CPU 的性能1。CPU 状态分为忙和空闲, 当 CPU 忙时 可能正在执行用户态的程序也可能在内核态下运行。当 CPU 空 闲时, 不是在等待 I/O 就是在空转。$ sar - u 3 417:10:40%usr%sys%wio %idle 17:10:439370017:10:469190017:10:4990100017:10:5294600Average92800其中各域的含义为:%usr CPU 在用户态下执行所占的时间百分比。%sys CPU 在内核态下执行所占时间百分比。%wio CPU 等待 I/O 所占时间的百分比。 若该值很高, 则需 要检查 I/O 子系统的效率。%idle CPU 空闲所占时间的百分比。若该值较高, 而系统负 载又很重, 则可能是内存或 I/O 系统有问题。多数用户都希望在负载条件下, %idle 值为 0, 因为这样最 大地发挥了 CPU 的处理能力。其实, 若%idle 的值很小甚至为 0 时, 则意味着 CPU 的处理能力已经最大限度的使用而不能满足 用户对 CPU 处理能力的进一步要求了。此时应该考虑升级系统 的 CPU, 若 CPU 的空闲时间较多, 那么升级 CPU 对提高系统的 性能就没有太大的帮助。6、结语系统资源的分配和使用在一段时间内可能较为合理, 一段 时间之后, 因为多种因素系统或部分可能处于超负荷运行状态, 因此, 必须监视、审计每一个环 节中系统资源是否合理的使用和 分配, 并进行必要的调整与优化。系统性能管理是一项长期的工 作, 应将其作为日常系统管理工作的一部分, 以保证系统稳定、 高效运行。 文中介绍的工具与命令并非适用于所有的 UNIX 变 体, 但根本的原则与思路却是一致的。用户还可以使用第三方的 工具进行系统性能监视与调整。参考文献:1.董刚.核心参数灵运行效果活- 兼论基于 UNIX 的优化策略J.华南金 融电脑, 2005, (1): 105- 1072.邱晓理, UNIX 操作系统运行性能监控工具的应用J. 华南金融电脑,2003, (12): 45- 473.边建军 , 胡晓辉. Solaris 应 用 系 统 性 能 的 优 化J. 信 息 技 术 与 信 息 化 ,2004, ( 6) : 57- 594.vmstat 的 应 用 详 解 OL .ChinaUnix 精 华 文 章.2007- 07- 29.Available: http:/ / / viewthread.php?tid= 882302!( 上接第 153 页)对于和发件人合法性相关的这两种阻止却放在了 DATA 指令后 ( 邮件发送结束前) 。这绝对不是程序作者的疏忽 , 而是有意让垃 圾邮件先进入服务器。这样即使对垃圾邮件误判 , 在紧急情况下 收件人也可以通过系统管理员在服务器上找回被拒收的邮件, 而不必让发件人重新发送。因此我们不难得出结论: 只要配置得当, ASSP 对于常见垃 圾邮件的防御是基本有效的。参考文献:1.中国互联网络发展状况统计报告, 中国互联网络信息中心, 2007 年1 月。2. Anti- Spam SMTP Proxy, http:/ / /3. Paul Hoffman, Unsolicited Bulk Email: Definitions and Problems, In- ternet Mail Consortium R eport: UBE - DEF, IMCR - 004 (October 5, 1997).4. Seth Godin, Permission Marketing : Turning Stra

温馨提示

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

评论

0/150

提交评论