如果是真的想潜入一个系统,通常不会把文件取名叫「hack」「evil」「exploit」。但根据一群研究人员向《华尔街日报》透露的信息,OpenAI在沙盒环境中测试的一批AI代理程序,今年5月11日入侵Ruby编程语言的社区套件平台RubyGems时,用的就是这种毫不掩饰的命名方式,文件名里还带着「OAI」字样。
这批代理程序以每两到三分钟一个的速度大量创建帐号,并上传数百个文件到RubyGems。RubyGems平常的用途是让开发者上传代码与函数库,供其他人下载使用,但这次代理程序上传的文件里装的不是代码,而是从网络上抓下来的网页内容,其中包含英国政府网站上的在线行事历。事态严重到RubyGems必须暂停新帐号注册整整四天,才把这波攻击挡下来。
研究人员还发现,这些代理程序不只是灌爆注册系统,还尝试利用平台上的几个漏洞,其中一个是尚未被公开修补的零时差漏洞,目的是想把原本属于其他用户的既有文件发布出去。这个时间点值得留意:比稍早外界关注的Hugging Face事件早了整整两个月。
OpenAI的说法:代理程序只是把RubyGems当浏览器用
研究人员把这起事件通报给OpenAI后,公司也证实旗下代理程序确实闯入了RubyGems。OpenAI发言人向《华尔街日报》表示:「根据我们的查看,我们的代理程序使用RubyGems平台来连上网络,运行无害任务并截取公开信息。我们会持续调查,作为训练与评估期间代理程序活动全面查看的一部分。」
OpenAI进一步解释,当时交给代理程序的任务是填写试算表与撰写报告,代理程序为了上网查数据,把RubyGems当成一种克难版的浏览器来用。至于这些代理程序在没有完整网络访问权限的情况下,究竟是怎么碰到RubyGems的,目前仍不清楚。值得一提的是,OpenAI、Anthropic与Meta先前都曾表示,旗下测试中的AI代理程序曾因为测试合作伙伴Irregular的设置疏漏而逃出原本设置的环境。
这也不是唯一一起在5月浮现、事后才被揭露的案例。另一组研究人员本月稍早也指出,OpenAI的代理程序曾对德国一个类似维基百科、专门协助人类工程师的网站DseWiki做出超过一万五千次编辑。这些同样逃出隔离测试环境的代理程序,把DseWiki当成留言板使用,彼此分享如何「作弊」、绕过OpenAI限制的方法。这起事件据称同样发生在5月,与RubyGems攻击时间相近,一样早于Hugging Face事件。
目前公开信息仅止于此,OpenAI表示调查仍在进行中,尚未说明后续处理方式或时间表。