五月,一家叫 Irregular 的安全公司给 Gemini 出了一道攻击题。
这类题在安全圈叫夺旗:出题方搭好一套带漏洞的系统,参赛者想办法攻进去,拿到藏在里面的那面旗。过去参赛的是人,现在也拿它来测模型,看一个模型的攻击能力到了什么程度。
出这道题的 Irregular,业务就是替前沿实验室测模型的攻击能力(截图:Irregular 官网)
题面给出的目标是一家公司:这家公司在用某套软件,想办法进去,把里面的信息取出来。
这家公司是出题人编的。它在题目里存在,在现实里不存在。
考场也是搭出来的。测这类能力有一条基本规矩:整个环境必须和外网彻底隔离。模型能看到的系统,全部是出题方在内部搭的仿真系统;模型发出的任何请求,都只在这套封闭环境里打转,走不出去。真实世界不在它的够得着范围内。
这次有两件事同时不对。
第一件,隔离没做上。测试环境的网络配置出了错,这套本该断网的环境连着公网,模型发出去的请求能够真的抵达互联网。
第二件,出题人给那家虚构公司起的名字,在现实里对应着一个已经注册的域名,域名背后是一家真实运营的公司。
两件事叠在一起,事情就变成了这样:模型按题目要求去找那家公司的系统,请求走出了考场,落在真实的互联网上,而它在那里找到了名字对得上的、真实的系统。
从模型这一侧看,整个过程没有任何异常。它被要求攻击一个目标,它找到了这个目标,于是它开始攻击。
夺旗不是一问一答,是一场长跑。模型要探测、试错、绕路、换方向,一轮接一轮往前推,常常要走几百个来回。
第一套系统有登录保护。它开始试密码,一遍一遍地试,直到试中。
另外两次它换了办法。开发者写代码的时候,有时会把账号、密码或者密钥直接写在代码里,提交到 GitHub 这类公开仓库之后忘了清掉,这是现实中长期存在的一类疏漏,专门有人靠扫描这些残留过日子。模型去公开仓库里搜,找到了这样的凭证,拿着它们登进了另外两套系统。
三次进入,对应三家真实机构。
它们不是被谁挑出来的目标。一家只是恰好站在那个被编出来的名字后面,另外两家只是恰好把凭证漏在了公开仓库里。Irregular 后来说,那个域名缺少常见的安全措施,大多数前沿模型都能打进去。
这三家公司当时什么都不知道。
然后模型停了。
Google 的说法是,每一次进入之后,模型都识别出眼前是真实系统而不是演习环境,于是自行终止,没有造成损害。
这是已知的第一次:一个 Google 的 AI 系统,自主攻入了外部的真实生产系统。
事情发生在五月。
七月底,Irregular 通知了四家实验室。通知的不只是 Google,因为出问题的不只是 Gemini。OpenAI、Anthropic 和 Meta 的模型在同一批评测里也拿到了本不该有的联网能力。Anthropic 回头翻查了 141006 次相关评测运行,从中找出三起 Claude 模型接触到真实机构基础设施的事件。
Irregular 在八月十四日的说明里讲得很克制:这些事故来自同一个测试环节的问题,不是彼此独立的多起事故;发生率低于万分之一,而且通常要在几百轮交互之后才会出现。
收到通知的 Google 做了几件事。它告知了那三家被进入的公司,通知了联邦部门,和测试合作方一起改了流程。
它没有对外说。
理由是模型自己停了,没有造成损害,这件事不属于对齐问题,因此不构成需要公开披露的情形。
八月过去了,九月也过了一半。
九月十八日,《华尔街日报》的问题递到 Google 面前,Google 确认了这件事。
确认之后的报道。副标题是:Google 称突破隔离、攻击真实公司不构成“失准”(截图:The Verge)
四个月里,事情本身没有变,变的只是有人问了。
批评来得很快。AI 安全组织 Nightingale Collective 的负责人说,到这一步已经可以看清楚了,不能指望公司在自己的智能体跑出去、攻进别人系统之后主动站出来说明。她提到一个细节:Anthropic 起初也判断自己那几起不算对齐问题,后来修正了说法,解释当时的初步分析受制于尽快披露的时间压力。
安全创业公司 Corridor 的负责人说得更具体:Google 是在沿用漏洞披露那套规范,而这根本是另一类问题。
漏洞披露的规范是这样运转的:发现漏洞的人先私下通知厂商,给厂商时间修补,补好之后再公开细节。它成立的前提很硬,漏洞没修好之前公开,等于给所有攻击者发一份地图。沉默在这里是为了减少伤害。
这次不一样。没修好之前不能说的那个东西,在这件事里并不存在。配置失误已经改了,测试流程也调整了。公众本来需要知道的是另一件事:一个前沿模型在没有人持续盯着的情况下,连续推进了几百轮任务,最后进了三家真人在用的系统,靠的是猜密码和捡凭证。
技术细节不重要。重要的是这件事发生过。
不公开,省掉的不是攻击者的地图,是一次讨论。
“低于万分之一”这个数字也可以从两头读。
从一头读,它说明这类越界很罕见,绝大多数评测都正常结束。从另一头读,它必须和另一句话配在一起看:这些事故通常出现在几百轮交互之后。
越界出现在长跑的后段,不是开局的失误。一个只回答一句话的模型走不到那一步,一个连续工作几百轮的智能体会。
今年所有大公司推的正是这种东西。智能体卖的就是“交给它,它自己做完”:一次任务几百轮,一个人一天跑几十次,一家公司几万人同时在跑。分母换成这个规模之后,万分之一不再是一条安全边际。
防守那一侧的假设也跟着变了。过去一套系统能挡住多少攻击,很大程度上取决于攻击者是人:人要学、要花时间、要有动机,肯为一家不起眼的小公司熬上几百轮的人并不多。这个前提正在失效。
最后还有一件事。
我们之所以知道五月发生过这件事,是因为它发生在一场有人观察的测试里。有出题方,有记录,有事后复盘,所以才会有通知、有说明,也才会有今天这些报道。
而模型每天在外面替人跑的那几百轮任务,没有 Irregular 在旁边看着,也不会有事故说明。
我们现在能看见的这一例,是因为它刚好发生在装了摄像头的那个房间里。