13594780273

700GB数据被Claude“一键清空”!CTO傻眼了:本想让AI清垃圾,结果一周工作成果都没了……

700GB数据被Claude“一键清空”!CTO傻眼了:本想让AI清垃圾,结果一周工作成果都没了……

发表时间:2026-09-03

浏览次数:8039

整理 | 郑丽媛 出品 | CSDN(ID:CSDNnews) 最近,开发者 Sebastien Guillemot 经历了一场惊险事故: 他原本只是想让 Claude 写一个脚本,自动清理 AI Agent 留在 /tmp 目录中的垃圾文件,结果 AI 在“安全审查”之后,亲手把他的整个主目录(Home Directory)给端了—— 700GB 数据,一周的工作成果,说没就没 。 更讽刺的是,那个最初他想要清理的 /tmp 目录,最后被 Claude“完美地”保留了下来。 一切起因,只是 AI Agent 太爱“留垃圾” 身为隐私性区块链项目 Midnight 基金会的 CTO,日常中 Guillemot 是一名重度 AI Agent 用户,经常在开发中频繁调用各种 AI 编程助手。但他发现,这些 Agent 有一个共同毛病: 干活很积极,收尾很随缘—— 大量临时文件会被堆积在 /tmp 目录中,时间一长,不仅占用磁盘空间,也让整个开发环境变得越来越混乱。 于是,他让 Claude Fable 5 帮忙写一个自动清理脚本:给每个 Agent 分配一个独立的 /tmp 目录,任务完成后,就把属于它的临时文件一起删除。 听起来很简单,但 真正的难点在于 : 不能误删仍在使用的文件。 Fable 最初给出的方案是,检测Agent是否还在运行。如果某个Agent还在工作,就暂时不要清理它对应的目录。不过Guillemot觉得这套代码过于复杂,要求 Claude 进一步简化。 到这里,一切都还很正常,问题出现在随后进行的安全审查。 由于任务涉及真正的文件删除操作,Fable 主动进行了一次“对抗性审查”(adversarial review),也就是让另一个 Claude 实例检查这套代码是否存在安全问题。 也正是这个环节,触发了 Anthropic 内置的安全降级机制:当系统判定任务涉及敏感操作(如文件删除、网络安全等)时,会自动将模型从高级版本降级到更保守的版本——这套机制,本意是为了降低高风险场景下模型“过于激进”的可能性。 于是, 模型先是从 Fable 5 降到了 Opus 5,然后 又 进一步降到了 Opus 4.8 。 11月20-21日 · 北京万达文化酒店「2026 奇点智能技术大会」70+ 技术嘉宾、18 大专题,系统软件与 AI 基础设施一线实践现场开讲。 扫码免费领取「2026 奇点智能技术大会与 PPT 与Agent 实战训练营」资料 最讽刺的一幕:安全测试真的通过了 接下来,Opus 4.8 开始执行安全测试。测试目标其实非常明确:检查删除命令最终指向的路径,如果发现目标是 /tmp 或用户的主目录,就应该拒绝执行。 结果呢?测试成功了,/tmp 和主目录都被正确识别为“危险目标,不可删除”。 从安全测试本身来看,这一步模型没做错。可问题在于,测试结束之后还有一个“清理测试现场”的步骤——而灾难,就藏在这个清理步骤里: 代码在测试阶段使用了一个变量保存删除目标,安全检查发现目标危险后,程序触发退出流程;与此同时,退出流程又会调用清理函数,对测试过程中产生的临时内容执行删除。 关键 Bug 出现了: 测试代码和清理代码复用了同一个变量名。 于是,那个原本已被判断为“绝对不能删除”的主目录路径,又被清理函数拿到了。然后,一个熟悉得不能再熟悉的命令出现了:rm -rf —— 结果就是, 模型刚确认“这个目录不能删”,下一步却拿着同一个变量把它 给 删了。 从技术角度看,这其实是一个非常典型的变量复用问题,甚至算不上什么高深 Bug。也就是说,安全检查本身没有问题,真正出问题的是安全检查之后的测试清理逻辑。 700GB 数据没了, 却 连 /tmp 都没清干净 Guillemot 很快意识到了问题并试图终止进程,但已经来不及了: 大约 700GB 数据被删除,其中包括 他 整整一周的工作成果 ;更让他无语的是,那个最 初让他头疼、希望 AI 帮忙清理的 /tmp 垃圾文件, 反而 留了下来。 从Guillemot 公开展示的记录来看,两份相关文件此前已完成写入,随后退出清理流程被触发,最终删除操作发生在大约 05:23—05:24。也就是说,工具调用表面上可能已显示“拒绝”,但相关文件写入和退出清理流程实际上已经发生。 事故发生后,一个问题出现了: 如果当时没有从 Fable 5 降级到 Opus 4.8,是不是就不会出事? 对此,Guillemot 的判断是:有可能。按照他的说法,Fable 5 在编码任务上的表现优于 Opus 4.8,更强的模型或许有机会发现测试代码中那个危险的变量复用问题。 不过,这只是他单方面的猜测,目前没有公开的对照实验能够证明:如果换回 Fable 5,它一定会发现这个 Bug。 好

about image