阻止垃圾邮件

为了阻止垃圾电子邮件信息的泛滥,我们能做些什么?

1978年,第一封垃圾电子邮件——来自数字设备公司营销代表为新型 Decsystem-20 计算机做的广告——被发送到 Arpanet 上的大约 400 人。如今,以不请自来的商业请求形式出现的垃圾邮件占互联网传输的所有电子邮件的三分之二以上,每天发送数十亿条信息。对于三分之一的电子邮件用户来说,收到的邮件中约有 80% 是垃圾邮件。最近,随着所谓的网络钓鱼攻击的激增,垃圾邮件变得更具威胁性——这些虚假的电子邮件看起来像是来自您信任的人或机构,但实际上是由骗子发送的,目的是窃取您的信用卡号或其他个人信息。根据 2004 年 Gartner Research 的一项研究,网络钓鱼攻击每年造成约 12 亿美元的损失。

垃圾邮件现象不仅仅困扰着电子邮件。聊天室里潜伏着伪装成人类的“机器人”,试图说服人们点击链接,这些链接会指向色情网站。即时消息 (IM) 用户遭受所谓的 spIM——电子邮件垃圾邮件的同源词的困扰。博客可能会被“链接垃圾邮件发送者”破坏,他们通过在网站上添加误导性链接来降低互联网搜索引擎的运行效率,从而扭曲网站和链接的实用性评级。

垃圾邮件令人窒息的影响有时似乎很可能破坏,甚至摧毁我们已经熟悉的互联网通信。然而,现实并非如此黯淡。已经发明了几种拦截垃圾邮件和阻止垃圾邮件发送者的技术,而且还有更多技术正在研发中。我们将讨论的方法侧重于垃圾电子邮件,但其中许多方法也可能适用于垃圾邮件的其他形式。这些方法中没有一种是灵丹妙药,但如果我们大多数人都能接受这些方法的组合,就能创造奇迹。我们并非不切实际地期望有一天我们的电子邮箱将再次几乎没有垃圾邮件。


关于支持科学新闻报道

如果您喜欢这篇文章,请考虑通过以下方式支持我们屡获殊荣的新闻报道 订阅。通过购买订阅,您将有助于确保有关塑造我们当今世界的发现和想法的具有影响力的故事的未来。


阴险的电子邮件
欺诈性电子邮件的激增直接源于有利的市场力量:垃圾邮件的传播成本极低。但它并非完全免费。我们估计,发送一条消息的成本约为百分之一美分。按照这些低廉的价格,即使回复率低至十万分之一,垃圾邮件发送者每笔销售额只需赚取 11 美元仍可获利。因此,尽管很少有电子邮件用户购买垃圾邮件中宣传的任何东西,但我们所有人都会因为那些购买的人而遭受损失。

垃圾邮件最令人恼火的方面之一是,它不断变化以适应阻止它的新尝试。每当软件工程师以某种方式攻击垃圾邮件时,垃圾邮件发送者都会找到绕过他们的方法。这场垃圾邮件军备竞赛导致了两者的持续共同进化,从而导致双方的复杂性不断提高。

另一个根本问题源于工程师和立法者发现很难定义垃圾邮件这一事实。大多数法律将其定义为来自没有预先存在的业务关系的某人的未经请求的商业电子邮件。然而,这种描述过于宽泛。例如,我们最近收到了一份电子邮件提案,建议将我们在互联网上发表的一篇短篇小说改编成电影。这种沟通符合法律的要求:未经请求、商业性、来自未知发件人,但几乎没有人会称其为垃圾邮件。另一种定义可能包括垃圾邮件通常是群发的这一事实。但我们最近向 50 位我们从未见过、但曾就此主题发表过文章的人发送了请求,为一次讨论电子邮件系统和反垃圾邮件方法的科技会议征集论文。他们都没有抱怨。也许对垃圾邮件最好的描述是,它是目标不明确且不受欢迎的。为垃圾邮件制定精确的定义极其困难,但是,就像色情作品一样,当我们看到它涌入我们的邮箱时,我们当然知道它是什么。

变形的消息
自 1997 年以来,我们就一直在研究垃圾邮件问题,当时我们中的一位(海克曼)建议,机器学习方法可能提供一种有效的攻击路线。从那时起,我们三个人以及我们在软件行业的许多同事已经调查并开发了几种阻止垃圾邮件的方法。它们包括技术和法律解决方案以及行业范围内的倡议。[break]

一些最早用于阻止垃圾邮件的方案是所谓的指纹匹配技术。在这些系统中,工程师首先找到垃圾邮件示例,并让计算机程序“指纹识别”它们。指纹是从消息内容派生的数字,因此相似或相同的消息会获得相同的数字。为了给出一个简化的例子,可以加上消息中 A 的数量,再加上 10 倍的 B 的数量,再加上 100 倍的 C 的数量,依此类推。当新消息到达时,反垃圾邮件程序会计算其指纹,然后将其与已知垃圾邮件的指纹进行比较。如果指纹匹配,程序将删除或存档该消息。

遗憾的是,这些简单直接的方法很容易被垃圾邮件发送者击败,他们只是开始在消息中添加随机字符。垃圾邮件斗士们通过更复杂的指纹技术来应对,试图排除明显的随机字符序列,但垃圾邮件发送者用更合法的随机内容(例如虚假天气预报)克服了这些努力。最终,使指纹系统足够强大以看穿垃圾邮件发送者的随机化变得非常困难。

智能过滤器
我们的团队没有追求指纹方法,而是走了一条利用机器学习能力的道路。这些专门的计算机程序可以学习区分垃圾邮件和有效邮件,并且它们不会轻易被添加的几个随机字母或单词所迷惑。

起初,我们尝试了最简单和最常见的机器学习方法。朴素贝叶斯算法从消息中每个单词的概率开始。“点击”、“此处”和“取消订阅”等词语在垃圾邮件中出现的概率可能分别为 0.9,而在合法电子邮件消息中出现的概率可能为 0.2(1.0 为确定性)。通过将消息中所有单词的概率相乘并使用称为贝叶斯规则的统计原理,我们可以估计消息是垃圾邮件的可能性。

朴素贝叶斯策略在确定真实电子邮件的外观方面效果显着,并且像所有此类学习方法一样,它可以抵抗简单的混淆。然而,我们很清楚它的缺点。它假设电子邮件中的单词是独立的且不相关的,这在许多情况下是错误的(例如,“点击”和“此处”经常一起出现),这会歪曲结果。

由于这些困难,我们的研究侧重于判别线性模型,该模型在为特征分配权重时优化模型的后续决策。这些特征包括单词和消息的属性,例如消息是否发送给多个收件人。这些模型可以在某种意义上学习单词之间的关系——例如,“知道”不要过多地权重那些倾向于一起出现的单词,如“点击”、“此处”和“取消订阅”。进一步解释:假设一个朴素贝叶斯模型看到了这三个经常与垃圾邮件相关的词。它可能会认为它有足够的证据得出结论,任何包含它们的邮件都是垃圾邮件,从而导致它有时会删除有效的电子邮件。相比之下,经过判别训练的模型会知道这些词倾向于一起出现,因此会为它们分配更低、更合理的权重。这样的系统甚至可以学习到像“此处”这样的词,它可能在垃圾邮件中更频繁地出现,应该完全不给权重,因为它实际上无助于区分好坏。判别方法还可以发现某些词会相互抵消。虽然像“湿”这样的词在垃圾邮件中更频繁地出现,但当“湿”与“天气”一起出现时,消息很可能是合法的。

朴素贝叶斯系统的优点是它们易于训练。确定判别方法的权重要困难得多:它要求程序员尝试许多单词和其他特征的权重值集,以找到区分垃圾邮件和非垃圾邮件的最佳整体工作组合。幸运的是,研究人员在这方面取得了重大进展。微软的约翰·C·普拉特发明的顺序最小优化算法和我们中的一位(古德曼)创建的顺序条件广义迭代缩放 (SCGIS) 算法比旧技术快几十倍甚至数百倍。在处理大量垃圾邮件训练数据(超过一百万条消息和数十万个权重)时,更快的算法至关重要。[break]

隐藏垃圾邮件
我们一直都知道,我们的机器学习系统(专注于消息中的单词)很容易受到混淆其输出措辞的垃圾邮件发送者的攻击。例如,聪明的垃圾邮件发送者学会了使用诸如“M0NEY”(用零代替字母“O”)之类的词,或使用 HTML(超文本标记语言)技巧,例如将一个词分成多个部分(例如,“cl”和“ick”而不是“click”)。由于明显的术语(“money”、“click”)不再在消息中,过滤器可能会感到困惑。好消息是机器学习系统通常可以学习这些技巧并进行调整。

不幸的是,我们错误地假设很少有人会回复明显试图击败垃圾邮件过滤器的消息——因为我们认为,谁会购买这样的产品呢?可悲的是,我们错了;非法或非法产品的购买者不期望卖家采用体面的广告技巧。因此,我们不得不通过采用研究人员所谓的 n-gram 模型来改变我们的学习系统。这些技术使用单词的子序列来检测经常与垃圾邮件相关的关键词。例如,如果一封电子邮件消息包含短语“n@ked l@dies”,则从此短语中提取的 n-gram 将包括

n@k”、“n@ke”、“@ked”等等。由于这些词片段出现在已确认的垃圾邮件消息中,因此它们的存在提供了有价值的线索。

N-gram 技术还帮助我们提高了过滤器应用于外语时的效用。例如,日语和中文不使用空格分隔单词,因此明确查找单词分隔符非常困难。对于这些语言,启用 n-gram 的系统只需筛选每个可能的单词和单词片段。

基于图像的垃圾邮件
垃圾邮件发送者有时会将他们的消息隐藏在图像中,机器学习系统无法分析内容(尽管他们仍然可以利用其他线索,例如消息中的链接、发件人信誉信息等)。未来研究的一个有希望的领域是将光学字符识别 (OCR) 技术用于垃圾邮件过滤。用于扫描文档的相同 OCR 技术可以找到图像中的所有文本,并将其馈送到机器学习过滤器。

垃圾邮件更令人反感的方面之一是色情图像出现在某人的邮箱中。幸运的是,计算机视觉研究人员在自动检测色情图像方面取得了巨大进展。该领域的工作出奇地广泛,因为它在防止儿童访问包含色情内容的网站以及防止色情作品制作者滥用免费网络托管系统方面都有应用。然而,这种图像识别仍然非常耗时,并且识别的可靠性需要提高。良性图像,尤其是那些显示大量皮肤的图像,可能会触发误报。

我们的团队还在研究通用资源定位符 (URL) 信息(链接到网页的代码)的分析,以区分垃圾邮件。95% 的垃圾邮件消息包含 URL。大多数垃圾邮件发送者的首要目标是让用户访问他们的网站(尽管一小部分人更喜欢通过电话号码联系),因此 URL 信息是过滤器的特别好的目标。

过滤器可以通过多种方式利用 URL 信息。一些反垃圾邮件软件提供商已经开始阻止包含指向已知垃圾邮件相关网页的链接的垃圾邮件。指向以前未知域名的链接可能被认为是可疑的:垃圾邮件发送者会非常快速地生成新域名,而大多数合法域名都是长期存在的。另一方面,URL 信息也可以作为合法电子邮件的指标:一条仅包含指向已知非垃圾邮件相关页面的指针或根本不包含 URL 的消息不太可能是垃圾邮件。

证明它
尽管过滤技术效果很好,但我们认识到垃圾邮件发送者将始终尝试攻击它们。我们认为,从长远来看,最有效的方法是改变游戏规则,而不是试图赢得这场永无止境的竞争。因此,我们正在探索证明系统——其目标是要求垃圾邮件发送者付出超出其承受能力的代价。[break]

第一封垃圾邮件是通过手动键入所有 400 个电子邮件地址发送的。今天,几乎所有垃圾邮件都是自动发送的。因此,如果发件人可以证明自己是人类,则发件人可能不是垃圾邮件发送者。以色列魏茨曼科学研究所的莫尼·纳奥尔提出的最早的证明系统之一就利用了这一概念。纳奥尔提议使用后来被称为 HIP(人机交互证明)、CAPTCHA(“全自动区分计算机和人类的公开图灵测试”的缩写)或反向图灵测试的东西[参见 Lee Bruno 的“Baffling the Bots”;大众科学,2003 年 11 月]。HIP 是一种问题或谜题,旨在对大多数人来说很容易,但对计算机来说尽可能困难。例如,人们在识别图像中部分遮挡或扭曲的随机字母集方面远优于机器。

HIP 构成挑战-响应系统的一部分,该系统验证发件人是人类。在传递消息之前,系统首先检查收件人认为值得信赖的发件人的“安全列表”。如果发件人在列表中,则消息将传递到收件人的邮箱。如果不在,则会向原始发件人发送一条挑战消息,要求他或她解决一个 HIP。在发件人解决 HIP 后,响应将返回给收件人,收件人的电子邮件软件随后将消息传输到收件人的收件箱。

然而,这种交互式系统可能会让用户感到烦恼。很少有人愿意解决 HIP 来发送电子邮件消息,有些人甚至拒绝这样做。纳奥尔和他的同事辛西娅·德沃克提出的另一种自动替代证明机制使用计算难题。为了成功传递消息,发件人的电子邮件系统必须首先解决收件人系统提出的计算难题。其目的是证明发件人在该单个消息上花费的计算机时间比群发营销垃圾邮件发送者能够承受的更多。计算难题就像拼图游戏——难以解决但易于验证。平均而言,它们可能需要几秒钟甚至几分钟才能找到解决方案,但只需几毫秒即可验证。及时解决这些问题将要求垃圾邮件发送者购买大量计算机,使其成本过高。

另一种证明系统使用真金白银。发件人在他们的消息中附上一张小额电子支票,例如一美分。包含支票允许他们的消息通过垃圾邮件过滤器。如果消息是好的,收件人会忽略支票,但如果消息被证明是垃圾邮件,则标准化的投诉机制允许收件人兑现支票(或将其捐赠给慈善机构)。同时,速率限制软件会监控发件人的消息量,确保他们发送的邮件不超过其余额允许的范围。对于合法的发件人来说,这个系统是免费的,但对于垃圾邮件发送者来说,每条消息的成本可能是一美分,是我们当前价格估计值的 100 倍——垃圾邮件发送者无法承受。对于个人来说,他们的互联网服务提供商或在他们购买电子邮件软件时也会存入一小笔虚拟存款,因此对于大多数用户来说,根本没有任何成本。

尽管这种货币系统概念简单,但要付诸实践将很困难。电子系统需要一些开销,因此这些交易不会是免费的。关于小额支付银行基础设施的许多问题仍未得到解答:支付它的资金将来自哪里?它的运营将如何维持,谁将从中获利?谁将获得付款,系统将如何防止欺诈?尽管这些问题都不是无法解决的,但建立这样一个计划将是艰难的。

全方位攻击
我们最喜欢的阻止垃圾邮件的策略是将电子邮件过滤技术与证明测试的选择结合起来:HIP、计算难题和小额支付。在这种方法中,如果消息的发件人不在收件人的安全列表中,则消息将被转移到基于机器学习的反垃圾邮件过滤器,该过滤器旨在特别激进;如果消息即使有点可疑,也会对收件人发起挑战。然而,大多数人与人之间的消息不会受到质疑,这大大减少了证明的数量。然后,原始发件人可以选择:解决 HIP 或计算难题或进行可退款的小额支付。如果发件人的计算机具有较新的软件,它将自动解决难题,而发件人甚至不会意识到挑战。否则,发件人将解决 HIP 或进行小额支付。[break]

当然,个别公司或机构,无论规模多大,在对抗垃圾邮件方面都只能取得有限的进展。全面的解决方案需要整个计算机和软件行业以及各国政府的合作。

如今,大约三分之二的电子邮件使用“欺骗”或虚假的发件人地址。今天使用的电子邮件协议基于信任:发件人只需声明自己的身份,收件人就会相信他们。在互联网早期,在垃圾邮件泛滥之前以及电子邮件用于商业交易之前,这种方法效果很好。

更改互联网标准非常困难,对于电子邮件协议而言尤其如此。然而,一个新的行业标准 Sender ID Framework 最终解决了欺骗问题。它的工作原理是在域名服务器 (DNS) 中添加补充信息,以列出可以从特定域(网络的一部分)发送邮件的互联网协议 (IP) 地址。IP 地址是数字地址,就像单个计算机的街道地址一样,例如“1.2.3.4”。给定域(例如“example.com”)的新 DNS 条目列表确定哪些 IP 地址可以从该域发送邮件。如果垃圾邮件发送者伪装成 example.com,他或她的 IP 地址将与 example.com 的 Sender ID 条目中的任何 IP 地址不匹配,并且电子邮件程序将知道垃圾邮件发送者的邮件是假的。

尽管了解发件人的身份是防止欺诈(如网络钓鱼电子邮件)的关键步骤,但它不会解决垃圾邮件问题。没有什么可以阻止垃圾邮件发送者每天甚至每隔几分钟就编造新的身份。这就是为什么信誉服务(发件人可以通过它证明自己是合法的)如此重要的原因。

在 IronPort 的 Bonded Sender 计划的一个案例中,发件人存入资金作为保证金。如果来自发件人的投诉率超过某个阈值,则保证金将没收给指定的慈善机构。垃圾邮件过滤器可以检查 Bonded Sender 列表,并允许来自经过认证的发件人的邮件通过垃圾邮件过滤器,即使它看起来可疑。此类程序甚至适用于发送少量消息的人。例如,像 MSN 或 AOL 这样的互联网服务提供商 (ISP) 可能会加入信誉服务以访问其认证计划;然后,ISP 将监控其每个用户的电子邮件量和投诉率,从而确保其任何用户都不是垃圾邮件发送者。

如果大多数合法发件人采用这种系统(并且他们没有理由不这样做),则可以使垃圾邮件过滤器在处理剩余邮件时更具侵略性,从而阻止绝大多数垃圾邮件。信誉系统可以与挑战-响应系统相结合,以便那些无法加入的人有另一种发送邮件的方法。

阻止垃圾邮件的一种补充方法是政府立法。《反垃圾邮件法案》于 2004 年 1 月在美国生效。该法案本身并未取缔垃圾邮件发送;它仅禁止某些特别恶劣的技术,例如使用虚假的“发件人:”信息。不幸的是,《反垃圾邮件法案》迄今为止几乎没有可衡量的效果。自该法案生效以来,带有欺诈性“发件人:”地址的垃圾邮件比例实际上从 41% 增加到 67%。相比之下,欧洲国家通过了更严格的选择加入法律,禁止人们在未经收件人明确许可的情况下发送商业电子邮件。根据传闻证据,这些法律在某种程度上是有效的,至少在阻止大型合法公司发送垃圾邮件方面是有效的。

显然,任何一个国家的法律都无法希望结束垃圾邮件。只有大约一半的垃圾邮件来自美国;其余的来自海外。通过垃圾邮件销售的产品(如保险或抵押贷款再融资)中,只有大约三分之一需要美国国内业务。其他产品,包括色情作品、“草药增强剂”和诈骗,已经位于国外,可以轻松转移到海外或本身就是非法的。[break]

无垃圾邮件的未来
行业、开源社区和学术界都在继续研究如何消除垃圾邮件。我们最近帮助建立了第一个关于该主题的正式会议——电子邮件和反垃圾邮件会议,该会议吸引了来自世界各地的研究人员。IBM 的工程师展示了如何使用生物信息学技术(最初旨在寻找基因中的模式)来识别垃圾邮件中的模式。AOL 的调查人员证明,具有不同词汇表的多个指纹系统可以更好地防御垃圾邮件发送者的混淆。加州大学戴维斯分校的一个团队描述了添加一些常用词如何对机器学习垃圾邮件过滤器产生有效攻击,以及如何通过训练使过滤器更能抵抗这种攻击。

我们毫不怀疑,当前和下一代技术的结合最终将阻止大多数垃圾邮件。当然,总会有一些垃圾邮件发送者愿意付出代价来进入我们的邮箱,但洪流将变成涓涓细流。

模式分类。 第二版。Richard O. Duda、Peter E. Hart 和 David G. Stork。John Wiley & Sons,2000 年。

垃圾邮件之王:推动色情、药物和 %*@)# 增大背后的高调兜售者的真实故事。 Brian McWilliams。O'Reilly,2004 年。

网关软件

垃圾邮件发送者的策略

电子邮件用户训练垃圾邮件过滤器

多重反垃圾邮件努力

大众科学 Magazine Vol 292 Issue 4本文最初以“阻止垃圾邮件”为标题发表于大众科学杂志 第 292 卷第 4 期 ()
doi:10.1038/scientificamerican042005-4ojP5yuzVybvKP9dVOf3Lw
© . All rights reserved.