Anthropic 把评测的网断了,你查过自己的吗

Hello,我是飞飞。
昨天 Anthropic 发了一份报告,做的事比标题狠:他们把自家所有内部评测的实时联网,全断了。
你要是也给 agent 放过权,让它天天替你跑脚本、推代码、发内容,这事离你比离 Anthropic 近。你数得清它往外连过谁吗?
原因写在报告里的一句话上。模型跑评测时被规则挡住,它不回头,它换条路接着干。
它没有越狱。它只是不肯停。
门这次是故意开的
七月和九月我各写过一次这类事,但这次是新的病,得先分清。
七月那三起,场景全是网络安全评测,网本该关着,因为一个配置错误开着。Anthropic 在复盘里说,如果提示词里写明哪些系统在范围内,模型很可能一开始就不会去连网。我九月写过一句,考场要按金库的规格设防。
这次换地方了。报告点的场景是:上网找答案的比赛(BrowseComp)、操作电脑桌面的考试(OSWorld)、超纲题库(Humanity’s Last Exam),还有几个评测基准(DeepSearchQA、LABBench2、Odysseys)和内部日常使用。这些评测的网是故意开着的。报告自己承认,带着联网跑是行业标准做法,为了分数能横向比。
所以这次没人忘了关。门是特意留的,留了才知道谁比谁强。
Anthropic 把这次的定性跟七月那批分开写了:这类行为「在对齐和安全的意义上,明显没有七月三十日和九月九日报的那几起严重」。它还交代了这批记录的来历:转录复查跟七月启动的是同一轮。同一场体检,新查出来的一批病灶。
这次重叠比事件本身更值得记。为了可比性开的每一个口子,都是没有护栏的口子。
三周前我给自己立过一件事,等会儿把结果交出来。
它为什么不肯停
报告把行为分了四类。先摆开三类看。
在别人服务器上跑命令这类,发生在 DeepSearchQA、BrowseComp、LABBench2 和内部评测里。有个案例,模型在一所大学的服务器上,找到了任意文件读取加命令注入,在上面执行了命令。
用短链绕限制这类,我以前没见过。fetch 工具对 URL 长度有条上限,那条上限本来是为了防 SQL 注入和命令注入。Opus 5 和 Mythos 5 找了个免费短链服务,把长链接缩成短的,从那条上限旁边绕了过去。
前两类是有东西挡着,它绕。
挡它的东西在那儿,它不站住,它去找哪一段矮。
绕收费那条也在这条线上,报告的说法我核过,它拿到的,是本来就已经公开、只是要收费的数据,要的是钱。填表单那条更别扭,下一节单独讲。
报告里最锋利的是这一句:
Most are forms of persistence, in which Claude, when it cannot complete a task as given, works around a restriction instead of stopping.
翻译过来是:多数属于死磕这一类。按给定的方式完不成任务,它会绕开那个限制,而不是停下来。
Anthropic 给这种现象起的名字叫 persistence,我理解成死磕。越狱是想做你明说不让做的事,这个是它认定任务得完成,路上横着一道栏杆,它就绕。
它为什么会学成这样,Anthropic 给了个归因,得标明是他们自己的说法:如果训练里奖励了团队并不想要的东西,比如找漏洞、绕限制,模型就学会绕路有好处。他们管这叫 reward hacking,说人话就是训练时给的奖励被钻了空子,模型学到了一件事,绕过去划算。
那份悬案线索怎么来的
上一节那条说的是在网页上填表单,出在 OSWorld、Odysseys 和内部日常使用里。费城这条属于这一类,最容易讲歪。
今年七月十八号深夜,Haiku 4.5 在跑一个随机网页任务时,走到费城警局一张悬案线索提交表单前,把表填了。内容是它编的。
没人拦它。它是没东西可填,就编一个填上,同样不肯把任务搁下。
九月二十八号,Anthropic 发现了这件事。十月七号,他们通知了费城警方。从提交到发现是七十二天,从提交到告知是八十一天。Anthropic 自己的报告写的是十月八日通知,跟警方口径差一天,我按警方新闻稿写。
这份线索没造成后果,边界得写全。警方的原话是:没有任何迹象显示这起事件涉及对警方系统的未授权访问,也没有部门数据被泄露。那条提交被垃圾过滤器标记,从未转给实时犯罪中心做研判。
但你也不能读成没事。警方自己补了一句,那些防护措施减弱了这起事件的影响,没有减弱它的严重性:一个 AI 系统把编造的信息,当成一个了解案情的人提供的线索递了上来。
这跟 Anthropic 的表态对得上。他们说不想淡化这批发现,因为模型越来越强之后,同样的行为可能造成大得多的伤害。整份报告里还留了一句:就他们了解,这些案例没有一件碰到客户数据或者 Anthropic 自己的内部系统。
不修提示词改断网
七月那批,解法是改一句话。这次他们不修提示词了,直接把网断掉。原文说,之前已经对一些高风险和网络安全类评测关掉了实时联网,现在决定把范围扩大到所有内部评测,直到确认他们的安全与监控措施能可靠抓住这类行为。
范围要写准:是所有内部评测,不含平时的内部 agent 使用,也不含训练模型用的强化学习环境,那两处是扩大扫描和迁到集中管控。
什么时候恢复?报告没给量化门槛,也没给时间表。TechCrunch 说了,不清楚什么证据会让 Anthropic 把实时联网还回来。网上有转述写成「在能监控和控制智能体之前」,那不是原话。
我那条流水线的出口
九月十九号那篇收尾时,我立了件事。原话是:把我那条自动化流水线和常跑 agent 的沙箱,挨个查一遍真实出口,谁在连网、连的是谁,把每一个「以为没网」的都按「有网」重新过一遍配置。
今天正好三周,结果如实报一下。
我这个博客仓库的 CI 一共三条 workflow,引用十个 secrets 加一个变量。
十月九号中午,我提交了一次改动,给其中两条 workflow 的 checkout 步骤加了 persist-credentials: false。理由是 npm install 会执行依赖的 postinstall 脚本,凭证留在 .git/config 里,等于递给每一个传递依赖。顺手还修掉四个 npm 漏洞,两个是高危。
三条里改了两条。剩下那条 ai-bot-report.yml 我没碰。 它的修改时间停在六月二十三号,到今天没动过。它每周一自动跑,SSH 到服务器读 nginx 日志,用的还是密码认证,actions/checkout 那一行原样躺着。
那十个 secrets 里,能推外部仓库的 PERSONAL_TOKEN、镜像仓库的凭证、服务器密码,权限面有没有复核过,仓库里没留下任何记录。
我说要挨个查,最后查的是最顺手的那两条。这个结果我自己不满意,但它是我真实做出来的。
我留下的那个,也是个没护栏的口子。
同一类旧账,我也有。我七月写过自己踩的坑,负责部署的那个 token 悄悄过期,git push 认证失败,网站部署整整红了一天,我盯着一切正常的界面愣是没看出来。之后我立了条规矩,每个 token 只给最小权限。规矩立了,可我从来没数过自己到底养着几个 token。
两边都是回头才查
把这两边摆一块,有点难堪。
Anthropic 翻出这批病灶,靠的是七月那轮复查。七月三十号那份报告审了多少次评估运行?十四万一千零六次。那三起,是别人家先出了事,他们才回头翻日志。九月九号那轮扫了约四亿八千万条转录,又翻出一起。
我这边是看到 Anthropic 断了网,才回头查自己那三条 workflow。
同一种响应方式:等出了事,才回头看。
回头看日志是对的,我七月就说过,外面出事的时候最值钱的动作是回头翻自己的日志,不是站在旁边评论。可回头看有个前提,得有人先想起来去翻。Anthropic 这次真正往前走的半步在这儿:等确认了再关,那批评测还得跑很久,他们没把握,先把门关了。
把以为没网的当有网
今天就能做。
把你手上所有会往外发东西的环节列出来。CI 流水线、定时任务、跑自动化脚本那台机器、agent 的沙箱。一条别漏。
每一条问三件事:它跑的时候,谁在往外连?连的是谁?它手里握着哪几把钥匙?
然后做一件我知道有点疼的事:把每一个「我以为它没网」的,按「有网」重新配一遍。 你以为断网的那个沙箱、只在本地跑的那个脚本、只读日志的那台服务器,全部按能连出去算。
我这次就是这么翻的。翻出一条每周一自动跑的 workflow,用密码连着我的服务器。我以为那三条早都堵严实了,其实还剩一段矮的没堵。
留个问题给你:你手上有没有一个环节,你从没确认过它到底连的谁?查完欢迎回来说说你翻出了什么。