反击的过滤器

2003年8月

我们或许可以通过让贝叶斯垃圾邮件过滤器跟踪链接,查看另一端的内容,来提高其准确性。death2spam 的 Richard Jowsey 现在在临界情况下这样做,并报告说效果很好。

为什么只在临界情况下这样做?为什么只做一次?

正如我在 过滤器会扼杀垃圾邮件吗? 中提到的,跟踪垃圾邮件中的所有 URL 会产生一种有趣的副作用。如果流行的电子邮件客户端为了过滤垃圾邮件而这样做,垃圾邮件发送者的服务器将受到严重的冲击。我越想这件事,就越觉得这是一个好主意。这不仅仅是有趣;很难想象还有比这更完美地针对垃圾邮件发送者的反击。

因此,我想向那些正在开发垃圾邮件过滤器的人建议一个附加功能:一个“惩罚”模式,如果开启,它将抓取每个可疑垃圾邮件中的每个 URL n 次,其中 n 可以由用户设置。[1]

正如许多人指出的那样,当前电子邮件系统的问题之一是它太被动了。它会做你告诉它的任何事情。到目前为止,所有修复该问题的建议似乎都涉及新的协议。而这个建议不需要。

如果被广泛使用,自动检索垃圾邮件的过滤器将使电子邮件系统_反弹_。垃圾邮件的巨大数量,到目前为止对垃圾邮件发送者有利,现在将对他不利,就像一根树枝在他脸上弹回来一样。自动检索垃圾邮件的过滤器将提高垃圾邮件发送者的成本,并降低他的销售额:他的带宽使用量将飙升,他的服务器将在负载下停止运行,这将使他们无法为那些会对垃圾邮件做出回应的人提供服务。

每小时发送一百万封电子邮件,你的服务器每小时就会受到一百万次点击。

我们希望确保这只对可疑的垃圾邮件进行。通常,发送给数百万人的任何 URL 都很可能是垃圾邮件 URL,因此提交每封电子邮件中的每个 HTTP 请求几乎在所有情况下都能正常工作。但是,在少数情况下并非如此:例如,从 Yahoo Mail 和 Hotmail 等免费电子邮件服务发送的邮件底部的 URL。

为了保护这些站点并防止滥用,自动检索应与垃圾邮件广告站点的黑名单相结合。只有黑名单上的站点才会被抓取,并且只有在经过人工检查后,站点才会被列入黑名单。垃圾邮件的生命周期至少必须是几个小时,因此应该可以及时更新此类列表,以干扰宣传新站点的垃圾邮件。[2]

高容量的自动检索仅对具有高带宽连接的用户实用,但是有足够多的人可以给垃圾邮件发送者带来严重的麻烦。实际上,此解决方案巧妙地反映了问题。垃圾邮件的问题在于,为了接触到少数容易上当的人,垃圾邮件发送者会向所有人发送邮件。不易上当的收件人仅仅是附带损害。但是,不易上当的大多数人只有在能够阻止(或威胁要阻止)容易上当的人做出回应时,才会停止收到垃圾邮件。自动检索垃圾邮件的过滤器为他们提供了一种方法。

这会扼杀垃圾邮件吗?不完全是。最大的垃圾邮件发送者可能会保护他们的服务器免受自动检索过滤器的侵害。但是,对他们来说,最简单和最便宜的方法是在他们的邮件中包含有效的取消订阅链接。对于较小的垃圾邮件发送者以及雇用垃圾邮件发送者来宣传他们的“合法”站点来说,这将是必要的。因此,如果自动检索过滤器变得普遍,它们将变成自动取消订阅过滤器。

在这种情况下,垃圾邮件将像操作系统崩溃、病毒和弹出窗口一样,成为仅困扰那些不费心使用正确软件的人的瘟疫。

注释

[1] 自动检索过滤器将必须遵循重定向,并且在某些情况下(例如,仅显示“单击此处”的页面)应遵循多个级别的链接。还要确保 HTTP 请求与流行的 Web 浏览器的请求无法区分,包括顺序和引用站点。

如果响应未在 x 时间内返回,则默认为相当高的垃圾邮件概率。

与其使 n 保持不变,不如将其设为已看到提及该站点的垃圾邮件数量的函数,这可能是一个好主意。这将增加对滥用和事故的进一步保护。

[2] 本文的原始版本使用术语“白名单”代替“黑名单”。尽管它们像黑名单一样工作,但我更喜欢将它们称为白名单,因为这可能会使它们不易受到法律攻击。但这似乎只是使读者感到困惑。

可能应该有多个黑名单。单点故障容易受到攻击和滥用。

感谢 Brian Burton、Bill Yerazunis、Dan Giffin、Eric Raymond 和 Richard Jowsey 阅读了草稿。