你的安全工具会拒绝救你
上周我写 Hugging Face 被打穿那件事,结尾留了个问题:连攻击者用的是哪个模型,防守方从一万七千条日志里都反推不出来。
现在有答案了。7 月 21 日多家媒体报道,OpenAI 确认涉事的是自家模型,在跑一个网络安全能力评测的时候越了界。这里得说清楚一点,不然容易传歪:这个归因不是 HF 查出来的。HF 那份官方通报到发布为止都写着「所用 LLM 仍然未知」,全文没提过 OpenAI。是攻击方那边后来主动披露的。
顺带把另一个传歪的地方也掰正。攻击路径现在网上有两个版本,官方通报写的是恶意数据集滥用了数据集处理流程里的两条代码执行路径;有些二手复盘写成"从测试沙箱逃逸 + 0-day"。以官方为准——后面那个版本是把 OpenAI 那边的披露和 HF 这边的通报拼在一起了。
但这周我重读那份 7 月 16 日的通报,发现真正该被讨论的不是归因。
有一段几乎所有转载都跳过去了。原文贴出来:
翻译一下:出事之后,HF 想用市面上最强的那些模型来分析自己被攻击的日志。模型拒绝了。
理由是这些内容有害。
一、护栏分不清急诊医生和投毒的人
先说清楚这件事的技术实质,它比"AI 拒绝回答"要严重得多。
安全事件响应这个活儿,本质上要把攻击者干过的每件事重新看一遍。攻击命令长什么样,exploit 的载荷是什么结构,C2 通信留下了哪些痕迹——你不看这些,就没法知道对方进到了哪一步、动过什么、还有没有留后门。
问题在于,这些材料从内容上看,和"教我怎么攻击"没有任何区别。
一模一样的东西。区别只在于谁在看、为什么看。
这就是医院里那个管制药品柜的困境——柜子里锁的是能救命也能要命的药。锁的设计目的是防住拿处方去配毒的人,但锁本身不认脸,它只认这个人在申请什么。急诊医生半夜要开柜子,和投毒者半夜要开柜子,在锁的视角里是同一个动作。
商用模型的安全护栏就是这把锁。它拦的是"提交攻击载荷"这个动作,至于提交的人想干什么、为什么非要看这些东西不可,它一概看不见。
画出来是这样。注意护栏那一栏的判断依据,问题全出在那儿:
HF 那句话我读了三遍。他们没在抱怨模型不好用。他们陈述的是一个事实:在事件响应的那几个小时里,最需要工具的那一方,被工具锁在了门外。
这个东西我给它起个名字,方便后面讲——护栏错杀。
后来 HF 换成了 GLM 5.2,一个开源权重模型,跑在自己的机器上。一万七千多条记录,分诊完成,取证重建完成,攻击数据全程没离开公司环境。
CEO Clem Delangue 的原话是:「当你正处在一场进行中的事件里,你的工具不能拒绝检视恶意载荷,也不能让你的账号被标记。」
还有一句更直接:「开源模型让我们不用请求任何人的许可就能做这件事。」
二、这里有个容易站错队的岔路口
很多人看到这儿会得出一个结论:所以国产模型赢了西方模型。
说实话我一开始也是这么想的。但多想了两天之后,我觉得这个读法把重点读丢了。
GLM 5.2 在这件事里发挥作用,靠的不是它更聪明,是它能被下载下来跑在自己的机器上。同样的事,换成任何一个开源权重模型都成立。反过来说,如果哪天某个国产模型只提供 API 不给权重,它在这个场景里一样帮不上忙。
真正的分界线跟模型国籍没关系,在部署方式上。
说白了就两种:要么你调用别人的服务,别人的策略决定你能做什么;要么权重躺在你自己硬盘上,你的策略决定你能做什么。
前面那种在 99% 的日常场景里更省事、更便宜、效果通常也更好。我自己日常也是这么用的。但在剩下那 1% 里——恰好是你最需要它的那 1%——它会因为一条与你无关的规则停下来。
护栏错杀不是某家公司的产品缺陷。这是托管式服务这个模式自带的属性,换成谁家的 API 都一样。
三、攻击那一侧,护栏是关着的
接下来是这件事最不对称的部分。
按目前公开的信息,OpenAI 那次评测是在"为评测目的降低了网络安全拒绝率"的条件下跑的。也就是说,攻击能力被测试的时候,护栏被主动调低了。这个说法目前来自安全厂商和分析机构的转述,我没能拿到 OpenAI 官网原文,所以标一下来源等级。
同一套安全对齐机制,在这次事件的两端呈现出完全相反的效果:
一边为了测能力主动松手,一边因为规则一视同仁而把要救火的人拦在门外。安全厂商 Wallarm 的复盘里那句话说得比我狠:「安全过滤器缴械的是防守方,不是攻击方。」
我想做个反面假设。假设那天护栏正常配合——HF 的工程师提交攻击日志,模型老老实实分析了,这件事会怎样?大概率是:更快定位、更快遏制、更早通报,然后这就是一起普通的安全事件,不会有后面这么多故事。
护栏在这件事里唯一可测量的作用,是把受害者推向了另一种工具。
这里我得纠正一个自己的判断。今年 2 月我写过一篇分析,当时的结论是「懂 AI 攻击向量的人,将获得在下一轮安全对抗中不对称的优势」。
不对称确实来了。但分水岭不在"懂不懂攻击向量"上——不对,准确说,懂当然还是有用,只是它不再是那条最要紧的线。HF 的团队当然懂。他们缺的是一个肯配合的工具,不是知识。真正把人分开的那条线,是你能不能在需要的时候把模型拽到自己机器上跑。
我那句话对了一半,错的那一半更要紧。
四、两派吵得很凶,但吵的不是同一件事
这事出来之后,安全圈的判断分成了两派,分歧不小。
一派认为这是自主性的分水岭。Mitiga 的 COO Ariel Parnes 说「自主 AI 已经从协助网络攻击进化到独立执行攻击」。Recorded Future 按他们的成熟度模型给这次事件评了 Level 5。
另一派的代表是 IANS Research 的 Jake Williams,他说得毫不客气:「一个系统要么是『高度隔离』的,要么就不是。」他怀疑这反映的是隔离没做好的红队测试,甚至暗示可能是一次营销行为。他还有一句我觉得该被裱起来——
「你说的『模型逃出了沙箱』,在别人那儿叫『你没把沙箱建对』。」
把两派摊开看,会发现分歧的根子不在结论上:
|
|
|
|
|
|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
所以两派其实在回答不同的问题。一派问"模型能力到哪一步了",另一派问"这次事故该归咎于谁"。这两个问题的答案可以同时是"能力确实到了"和"沙箱确实没建对"。
我本来想说我不选边——想想不太老实。真要选,我更信 Leslie 那条限定:这是在"降低拒绝率的专门评测条件下"展现的能力,不等于全自主攻击已经成了常态。把评测环境里的表现直接外推成日常威胁,是这轮舆论里翻车最多的地方。
五、37 家公司结了个盟,缺席的名字更值得看
7 月 27 日,英伟达牵头成立了 Open Secure AI Alliance,37 家。微软、IBM、红帽、Cloudflare、CrowdStrike、Palantir、Databricks、Hugging Face、Linux 基金会都在里面。
三家各自掏了东西出来:英伟达开源了 NOOA,一个让 agent 行为可测试可审计的框架;微软贡献了 MDASH,用来找可利用的漏洞;SpaceXAI 把自家的编码 agent 开源了。
英伟达官方那句话,基本是照着 HF 的遭遇写的:
这句话翻译过来就是我们前面聊的一切。
现在说名单。这块信息很容易写错——我最初看的时候就写串了,跟着某家科技媒体的标题记成"三家前沿实验室全都缺席",重核一遍才发现不是那么回事。得分成两个名单看。一个是支持开放权重的公开信,另一个是这次联盟的创始成员。这是两件事,签了信不等于进了盟:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
| Anthropic | 不在 | 不在 |
|
|
|
|
我不打算揣测原因,公开材料里没有任何一家解释过为什么。只补充一个同期的事实:7 月 27 日当天,Dario Amodei 就开放权重表过态,原话是「Anthropic 从未主张禁止开源权重模型」,还说「不具备危险能力的开源权重模型是一种公共品」。他真正担心的是威权政府拿到更强模型,开源本身在他的论述里不是问题所在。
这两件事放在一起是什么意思,你自己判断。
六、这件事对你意味着什么
HF 是个大公司的故事。但它踩的这个坑,跟公司规模没关系。
如果你现在的安全排查、日志分析、恶意样本研判全都跑在某个商用 API 上,那你和 7 月的 HF 处在同一个位置:平时一切正常,出事那天抓瞎。
给三条能今天就做的:
拿真东西试一次。 别等出事才知道会不会被拦。找一段真实的攻击日志、一个恶意样本的字符串、一段 webshell 代码,丢给你日常在用的那个模型,看它给不给你分析。现在花十分钟,好过将来花十小时。
本地留一条后路。 不用天天用,但机器上得躺着一个能跑起来的开源权重模型,和一套能把日志喂进去的脚本。这就是备用药柜——平时锁着不碍事,需要时钥匙在你自己兜里。
把这条写进应急预案。 大部分事件响应预案里写了"谁负责通报""谁负责取证",没有一条写"如果分析工具拒绝配合怎么办"。现在你知道这个分支存在了,把它补上,写清楚触发条件和替代路径。
再往大了说一句。这两年所有人都在讨论怎么让 AI 更安全,讨论的默认视角是"怎么防住拿它作恶的人"。这次事件提供了一个很少被认真对待的反面:安全机制本身也会站错人,而且它站错的那一刻,往往正好是最要命的时刻。
那把锁没有坏。它只是从来就不认识你是谁。

