Gentoo Bugzilla 因 AI 机器人爬虫过载而关闭

Gentoo 项目已将其 Bugzilla 实例下线,因为 AI 机器人爬虫的过载导致其无法使用。这一决定是由维护者 Jesus Michał (@mgorny) 做出的,他表示,由于爬虫使用了数千个没有明显过滤模式的不同 IPv4 地址,继续为这些爬虫提供资源已经没有意义了。

AI 爬虫对志愿者运行项目的冲击

对于许多由志愿者运行的开源项目,应对激进的爬虫行为所带来的基础设施管理成本和精力正变得难以维持。Gentoo Bugzilla 的关闭说明了一个更广泛的趋势:用于训练大语言模型 (LLMs) 的自动化流量规模——往往是海量的——已经超过了小型技术基础设施的承载能力。

维护者们表达了挫败感,因为他们被迫将时间花在系统管理和缓解机器人攻击上,而不是项目开发上。正如一位社区成员所指出的,这正在“缓慢地摧毁依靠志愿者的项目”。

缓解机器人攻击的技术挑战

由于几种不断演变的技术,缓解现代 AI 爬虫比拦截传统的网络爬虫要困难得多:

分布式 IP 轮换

爬虫不再依赖于少数几个可预测的 IP 段。相反,它们使用数千个轮换的 IPv4 地址和住宅代理来模仿有机的人类流量。这使得基于 IP 的简单拦截变得无效,因为没有单个 IP 地址在猛烈冲击服务器,但数百万个地址的聚合负载是毁灭性的。

简单缓存的失效

虽然有人建议将简单缓存作为解决方案,但 Gentoo 团队指出,缺陷追踪器本质上是动态的。实现一个缺陷追踪器的完全静态版本需要投入大量的开发精力来为所有缺陷报告和附件生成静态页面,并且这可能会引入新的拒绝服务 (DoS) 向量,即登录用户可能会创建大量需要更新的缓存页面,从而引发“雪崩”效应。

基础设施成本与 WAFs

一些项目,例如 KiCad,通过使用 Cloudflare 作为前端来压制流量,从而成功应对了负载。然而,其他维护者报告称,Web 应用防火墙 (WAFs) 可能会产生敌意;一位用户报告称,在提交滥用报告后,立即被 Linode 的 WAF 封禁了。

拟议的解决方案与社区辩论

社区就完全关闭服务的几种替代方案进行了辩论,范围从技术门槛到法律框架:

  • 身份验证门槛: 一些项目,例如 Hedgewars,已经实施了基础身份验证,并将凭据公开发布在其主站上。据报道,这种简单的屏障可以抵御那些没有被编程为处理此类简单身份验证步骤的爬虫。
  • 工作量证明/挖矿门槛: 有人建议使用“Anubis 风格”的门槛,即用户必须执行少量的加密货币挖矿或计算挑战才能访问网站,从而有效地将访问成本转移给机器人操作者。
  • 微支付: 有人提议集成基于浏览器的微支付(例如,每个缺陷报告 5 美分),以确保只有人类或付费实体可以访问数据。
  • 投毒策略: 一位用户建议使用像 Iocaine 这样的工具来“投毒”数据,通过在爬虫队列中填充大量易于生成的垃圾内容并进行缓存,使数据对于训练变得毫无用处,同时保持人类的可访问性。
  • 法律手段: 有一种强有力的观点认为,这不仅仅是一个技术问题,而是一个法律问题。批评者认为,类似 DDoS 的爬虫行为应该被视为非法,并且维护者应该对运营这些机器人农场的实体拥有法律追诉权。

公开网络的未来

这一事件引发了关于互联网“围墙花园”趋势的更广泛讨论。人们担心,对公开网络的激进爬取会迫使项目转向封闭、专有的访问模型,即只允许经过许可的 User-Agents (UAs) 访问,从而有效地结束公开、匿名的网络时代。

Sources

相关