针对 Spam 做设计:给 Web 出的难题

  • Sadek Drobi
  • 郭晓刚

2008 年 6 月 30 日

话题:架构

伴随着 Web 的成长,牛皮癣们也越来越活跃,手段越来越激,工具越来越强,始终坚定不移地威胁着 Web。不久前对 Craigslist 的 Spam 攻击引发了博客届的热烈反响,博客界开始分析牛皮癣们的技术,寻找可行的治疗方案,思考牛皮癣的蔓延对架构的潜在影响。

Mike Masnick 引用 John Nagled 举的例子,说明CL Auto Posting Tool 是怎样击败 Craigslist 的反 Spam 技术的

Craigslist 想通过检查重复的提交来制止 Spam。他们检查来自同一 IP 地址的过多帖子,要求用户提供有效的 E-mail 地址,增加 CAPTCHA 来阻止自动发帖工具。用户也可以标记认为属于 Spam 的帖子。

现在已经出现了一些商业工具可以克服上述阻碍批量发帖的小路障。

[…]

每则 Spam 消息都会加入一些随机的文字,愚弄 Craigslist 的重复消息检查。通过 IP 代理网站发帖,使 IP 地址分布到一个很广的范围。回复用的 E-mail 地址是通过 Jiffy Gmail Creator 创建的大量 Gmail 帐号。[……] 用 OCR 系统识别 CAPTCHA 中的模糊文字。自动监控哪些 Spam 被作了标记,一发现被标记就重发。

即使最庞大的企业,比如 Google,投入了“数以千计的员工和巨额的预算”,也不能幸免于牛皮癣攻击。Websense Security Labs 的博客介绍了击败 Google 的 CAPTCHA 的新技术——可以任意注册随机的 Gmail 账号来发送 Spam。

有两位博客作者开始思考 Spam 威胁日增背后的含义。“Discipline and Punish”博客的作者着重指出一项事实:“随着 Web 成为基本的架构元素和通信媒介,这个问题只会越来越严重”。他惊讶地发现,虽然颇有人热衷于展望“Web 5.0 和语义 Web,但其中鲜见有认真考虑过 Spam 的威胁的”,而“Spam 已经是关系到 Web 1.0 站点存活能力的主要因素”,Web 2.0 由于注重社交、协作和聚合,在 Spam 面前更为脆弱。他认为,“抵御无穷无尽的 Spam 冲击波的能力”,将决定未来分布式架构的存活能力。不把 Spam 纳入考虑将是“天大的错误”。

Jeff Atwood 也对 Craigslist 被攻击事件发表了感想。他指出,牛皮癣们的行为“伤害了社区的信任 [……],贬损了每个人参与的价值。”他和 Discipline and Punish 的观点一致,认为“设计软件的时候,应当假定用户是恶意的”,因为“如果你的设计不能抵挡恶行,就会失去你的用户群”。

Discipline and Punish 还指出了另一项事实:在 Web 2.0 的世界里, Spam 不一定是“坏人”制造的。该作者相信,“像 Facebook 这样的社交网络和 FriendFeed 这类超级聚合器引入了一种新型的社交 Spam”,因为他们都鼓励用户做一些近似于 Spam 的行为,因此产生了“主要来自你的‘朋友’的新型社交 Spam”。

好些作者都就如何与来自“坏人”的 Spam 作斗争提出了建议,比如开发新型的 CAPTCHA,或者让社区参与 Spam 控制;但对于“社交 Spam”,谁也没有办法。

查看英文原文:Designing for Spam: A Challenge for the Web?
架构