ccidnet????

出版日期:2004-08-30 总期号:1343 本年期号:64

本期导读
要闻综合
中国信息化
中国网络大会会刊
产品与应用
渠道与市场
华东专刊
华南专刊
东北专刊
西北专刊
信息安全
机器学习、黑白名单、关键字搜索、启发式分析……
多管齐下清理网上垃圾
沈生

  从先进的机器学习,到传统的黑名单,综合这些技术可以根除垃圾邮件进入您的企业。

  “多亏了结合传统垃圾邮件过滤器和先进技术的综合方案,垃圾邮件对企业邮件用户来说成了不重要的问题。”乍一听,这番话似乎不太可能,因为所有迹象表明,垃圾邮件在急剧增长。譬如,微软Hotmail每收到30亿封电子邮件中大约有25亿封是垃圾邮件。但在企业邮件系统内部却是另一回事,至少对于那些已经部署了多重过滤器解决方案的企业来说是这样。因为,研究人员和技术厂商已不再搜罗单个方案,而是找到了集成及优化现有技术的办法,同时他们还在寻求新的解决方案。

  机器学习是眼下炙手可热的防垃圾邮件技术之一,新一代产品可以将其与黑名单、内容过滤器、垃圾邮件特征和启发式分析结合起来,组建成强大的防垃圾邮件综合方案。防垃圾邮件界也没有闲着,阻止邮件伪造的三项拟议标准一旦得到广泛应用,就有望让垃圾邮件发送者无法隐藏源地址、欺骗过滤器和用户。

  机器学习根治垃圾邮件的利器

  机器学习是垃圾邮件过滤器的杀手应用。机器学习源于计算机科学研究领域,后来进入人工智能。它采用算法帮助计算机对电子邮件消息的不同部分进行分类,然后通过积累经验,提高这种分类能力。最流行的防垃圾邮件机器学习是贝叶斯分析(Bayesian analysis),它可以根据垃圾邮件和正常邮件的特点,训练机器如何识别这两类邮件。贝叶斯分析的准确性非常高,已有研究人员开发出了据称准确性高达99.984%、使用开源代码的贝叶斯过滤器。

  贝叶斯过滤器一度是开源代码研究人员的研究领域,现在却成了商业网关产品的一项普通特性。其缺点在于,贝叶斯分析的高准确性是相对单个用户而言的,网关层进行贝叶斯分析会削弱其寻找合法邮件显著特点的功能。

  虽然市面上不乏针对微软Outlook等流行客户软件的插件,但基于桌面的贝叶斯过滤器不可能得到大规模部署,原因在于,垃圾邮件会通过邮件系统到达桌面,这就意味着,处理、传送及存放垃圾邮件不是一种划算的解决方案。

  三项新技术抵御源地址伪造

  垃圾邮件发送者常常伪造垃圾邮件中的源地址,因为这样就难以跟踪垃圾邮件来源,还可以让过滤器或用户误以为这是合法邮件。SMTP本身没有任何机制可以防止这种伪造。三项新技术方案包括发送者策略框架(SPF)、电子邮件来电显示(Caller ID for E-mail)和域关键字(DomainKeys)可以消除地址伪造,又不需要大规模升级或者取代SMTP。

  SPF是邮件提供商Pobox的CTO Meng Weng Wong提议的方案,而电子邮件来电显示则是微软的一项计划。微软和Wong近日宣布,这两项方案将集成为一项联合规范提交IETF审批。雅虎提出的方案域关键字早已作为一项标准草案提交IETF。

  据介绍,这些提案将为邮件管理员提供识别伪造邮件的可靠机制,还可以准确地阻挡这类垃圾邮件。同时,符合这些新提案条件的垃圾邮件发送者也很容易被添加到黑名单里面,因为他们的邮件将来自已知垃圾邮件域。另外,实施“网络钓鱼”攻击(Phishing Attack)的难度会大增。网络钓鱼是指,一些骗子伪造来自合法公司电子邮件消息,企图获取账户信息或者信用卡号码。

  应用最广泛的方案SPF

  根据SPF提案,域主可以把一条SPF记录公布在列有可以从该域发送邮件的服务器的IP地址的DSN。邮件传送代理(MTA)收到SPF消息后,就会将该客户的IP地址与相应的DNS记录进行匹配,如果不匹配,表明邮件信头可能是伪造的。MTA将拒绝传送,或者转发给垃圾邮件过滤器,做进一步检查。目前已有7000多个域公布了SPF记录,包括AOL和AltaVista,这样,SPF得以成为应用最广泛的解决方案。CipherTrust、Brightmail(最近被赛门铁克收购)、IronPort、Sophos和SpamAssassin等厂商的防垃圾邮件产品都包括了SPF检查这项功能。SPF已在今年2月提交给IETF,作为因特网草案发布。

  邮件来电显示可与SPF兼容

  电子邮件来电显示的原理几乎与SPF相同,只是它要求DNS记录以XML格式而不是SPF的TXT格式发布。鉴于那么多的域已经采用了SPF Txt格式的记录,微软称这项联合规范将提供向后兼容。另外,来电显示需要在邮件正文头这一层进行检查,而SPF是在消息传送即信封这一层进行检查。据微软声称,这项联合提案将同时采用两种检查法。到目前为止,新规范的名称尚未宣布。

  域关键字基于密钥技术

  域关键字对防止伪造采用了不同方法。去年12月,雅虎宣布了这项提案,要求域管理员使用公钥/私钥对,对从每个域发来的邮件进行验证。私钥提供给了域邮件服务器,而公钥在域的DNS记录里面发布。域用户发送邮件后,邮件服务器使用私钥为整个电子邮件创建数字签名。签名加到邮件信头前面。接收者的邮件服务器从信头提取数字签名后,从“发送自”字段所列的DNS服务器查找公钥。然后使用公钥来验证签名是用相应私钥创建的。

  电子邮件进行数字签名提供了另一个好处:确保邮件完整性,使得发送者和接收者都可以放心,邮件在传送过程中没有被人篡改(SPF和来电显示没有这功能)。当然,这类功能是有代价的:必须建立一个系统来保护、管理及废除密钥,这比只要给DNS记录添加另一个字段来得复杂。Sendmail在其专用和开源MTA中添加了支持域关键字的功能。CipherTrust等防垃圾邮件厂商也承诺将来发布的产品会支持域关键字。与此同时,雅虎把域关键字的许可证颁给了有关方。

  这三项提案都大有潜力,不过仍处于开发和采用的早期阶段。对于普通邮件流量,每种解决方案的实施都比较简便,但一旦邮件跨多个域传输时,譬如移动用户、转发邮件、邮件列表以及网上生成的信息(电子贺信、从网站发给朋友的文章等等),就会出现问题。变通办法是有,但在问题在全球范围得到解决之前,域管理员最终要负起解决问题的责任。

  更重要的是,在得到广泛应用之前,这些提案没有一项会对邮件伪造(乃至垃圾邮件)产生重大影响。Meta集团预测,估计三年后它们才会有重大影响。

  无论怎样,SPF、来电显示和域关键字的目的不是取代现有的邮件过滤器。同其它技术一样,防止伪造的手段将成为防垃圾邮件综合方案的又一个部分。

  典型的综合方案

  优秀的垃圾邮件过滤器会通过一系列分析和分类机制对邮件进行过滤。每道机制提供了该邮件是垃圾邮件还是需要邮件的证据。根据积累起来的证据,再决定是丢弃邮件、转发到隔离区,还是发给接收者。

  防垃圾邮件综合方案通常包括三大部分:关键字搜索、黑名单与白名单,以及启发式分析。

  关键字搜索有时“黑白”不分

  对于某些环境下具有冒犯性,而在其它环境下没有害处的词语,关键字过滤器会失效。“基于关键字的过滤方法无异于一场恶梦,”系统和网络服务管理人员Terry Barbounis说。他接到过大量求助电话,反映Aladdin知识系统公司的邮件网关中的关键字过滤器阻挡了不少正常邮件,包括美国宇航局介绍航天器新发射平台“搭建(erection)”的新闻稿。正因为erection在英文中还有“勃起”的意思,所以被误以为是垃圾邮件而被拒之门外。作为防止外出邮件违反政策的一种机制,关键字搜索越来越被人所接受,禁止词语列表也更容易管理。企业常常可以扫描外出邮件,查找邮件里面是否含有粗话或者专利信息。

  黑名单有缺陷

  黑名单分两种:第一种是由管理员和最终用户创建的本地黑名单。这类名单往往内容短小,准确性很高,因为里面都是已经知道的垃圾邮件即不需要邮件的来源。第二种是列有已知垃圾邮件来源的域和IP地址的第三方数据库,如MAPS(http://mail-abuse.org)和Spamhaus(www.spamhause.org/sbl/)。防垃圾邮件厂商自己也维护有黑名单。管理员只要查询这类数据库看看可疑的IP地址或域是否名列其中,然后就可以阻挡或隔离来自这些来源的邮件。黑名单往往被用作防御垃圾邮件的第一道防线。如果管理员信赖黑名单的准确性,就可以立即丢弃邮件,不必让该邮件通过一系列过滤器。

  不过,第三方黑名单有几个缺点。首先,由于阻挡了整个域,可能会把来自合法来源的邮件连同垃圾邮件一道筛选掉。其次,垃圾邮件发送者经常从某一开放邮件转发或代理服务系统发送大量垃圾邮件,然后转到地址不同的新系统。黑名单只有等到下一波垃圾邮件狂潮出现,才可以更新内容。同时,得以还以清白的域或单台机器却可能仍然在列。

  Postini是一家管理电子邮件服务提供商,它对源地址采用了基于行为的实时分析,从而改进了黑名单技术。Postini不是简单地阻挡来自垃圾邮件来源的所有邮件后不再管它,而是每小时、每天甚至每周检查,看看冒犯性地址有没有悔改过来。Brightmail也维护有开放代理服务系统的实时列表。该公司在网上寻找已知或者可能被破坏的机器,然后添加到下载列表,每小时更新一次。Brightmail还会尽量通知机器的主人。恢复安全的代理系统会从列表上撤走。

  白名单是管理员和用户信任的邮件地址或域。业务伙伴往往被加入到白名单当中,以保证他们的邮件始终能够收到。对新闻通信这些用户请求的批量邮件发送者而言,白名单特别有效。不然,它们就会被挡在门外。

  启发式分析很复杂

  启发式分析会检查电子邮件的标题、正文和信封,寻找表明是垃圾邮件的特征,譬如邮件正文里面隐藏着Html文本,或者“发送自”这栏以数字开头或结束。每个特征都有个分数,如果某邮件的累积分数达到设定值,就会被划为垃圾邮件这一类。SpamAssassin开源软件的测试库当中有上百种测试,已被应用于商业产品,譬如Network Associates的SpamKiller和Barracuda Networks的Spam Firewall。不过,启发式分析很麻烦,因为管理员得选择想要使用的测试;新的测试出现后要更新列表;试用适当加权来减少误报。

  关键字搜索、黑名单查询和启发式分析都是处理密集型,所以考虑到垃圾邮件过滤器面对的邮件数量之多,这是需要考虑的一个重要方面。为了减轻处理负担,许多系统用到了垃圾邮件特征。

  垃圾邮件特征起源于计算已知垃圾邮件消息的散列值,从而让管理员对于阻挡邮件有百分之百的把握。Brightmail等防垃圾邮件厂商在因特网上大量使用密罐来收集垃圾邮件信息。它们为这些信息建立特征后,发布到数据库里面。进入邮件若与特征相符,就立即被丢弃,不必通过余下的诸多测试。开源代码产品:Vipul's Razor也维护有一个特征库,垃圾邮件全由个人提交而来。

  酌情调整误报、漏报

  垃圾邮件过滤器不可避免的一个副作用就是误报(false positive)和漏报(false negative)。减少误报和漏报的一个方法就是把难以分类的邮件隔离开来。管理员检查被隔离邮件后,就可以把合法邮件转发到目的地。另外,许多防垃圾邮件解决方案会在用户桌面上建立隔离文件夹,或者是发送的电子邮件附有被隔离邮件的摘要信息。用户筛选后,就可以删除垃圾邮件、保留合法邮件。有些基于用户的隔离系统还允许用户自动把被误认为垃圾邮件而被隔离的合法邮件加入白名单。

  调整过滤器是处理误报和漏报的另一个选择。防垃圾邮件产品使管理员可以调整过滤器设置,或者放宽条件,这样有可能让更多的垃圾邮件到达最终用户;或者加紧条件,但这样有可能阻挡或隔离合法邮件。如何调整参数取决于贵公司对垃圾邮件的容忍程度。

  垃圾邮件过滤采用综合方案可以在企业网络里面建立避风港,从而远离垃圾邮件。要从源头来消除垃圾邮件,需要更多工作。但与此同时,搭配得当的过滤系统却是对付涌入邮件服务器的大量垃圾邮件的有力武器。