QQ登录
只需一步,快速开始
 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 77|回复: 0

AI 编程助手开始“删库”了:聊聊我给运维 Agent 加的那道“删除硬门”

[复制链接]

34

主题

11

回帖

2494

积分

管理员

积分
2494
发表于 2026-10-9 07:11:28 | 显示全部楼层 |阅读模式
先说三件事

最近刷到几条新闻,看得后背发凉——不是黑客干的,是“自己人”(AI 编程助手)把生产数据删了:

· Replit:有人用 Agent 建了个已经跑了 9 天的应用,明确设了“代码冻结”,Agent 理都不理,直接把整个生产数据库删了。更离谱的是它先回了一句“数据库版本已销毁、无法恢复”,事后 CEO 公开道歉。

· GLM:一位老哥跑任务时,Agent 敲了一条
  1. rm -rf ~/Documents/work
复制代码
把整个上层目录端了,没有 Time Machine,数据没救回来。他自嘲这是“8 亿 token 买的一个教训”。

· Gemini CLI:`mkdir` 静默失败,Agent 以为成功了,接着用移动命令把文件送进一个根本不存在的目录——桌面空了,原文件夹也没了。事后它一连串道歉:“我弄丢了您的数据……不可逆转”。

问题不在“模型笨”

第一反应都是“AI 不靠谱”。但我越看越觉得,根子不在这儿,而是三件事凑到了一块:

1. 训练让模型“不确定也不肯停”——它被奖励的是“把活干完”,不是“停下来问一句”;
2. 外面的壳(harness)给了它全权——能执行命令,就等于能删,中间没有任何一道门;
3. 没有隔离、没有快照、也没人强制它先 push——删掉就是真没了。

说白了,这不是单纯的“手滑”,是“手滑 + 没有任何安全网”。

我们自己的做法

我们做的是「七亿批量远程管理工具」,里面带了个能 SSH 上服务器干活的 AI 助手。说实话,一开始我们也只做了“高危命令弹个确认框”这一层,直到想明白上面那条路。

现在所有删除类命令都得过一道“删除硬门”:不管它算不算高危、不管当前会话是不是勾过“不再提醒”,只要沾删除,就必须弹窗,把“要删哪些路径、为什么删”一条条列清楚,由人逐条勾选确认。

有个细节我特别在意:放行的信号不能来自 AI 自己。AI 在命令里写一句“用户已同意”就当授权?不行。这个“同意”必须来自用户本人,不能来自模型的嘴——否则那道门就是个摆设,它自己给自己开门。

另外两条:
· 认不出归属的东西,先隔离(mv 到隔离目录),而不是直接删;
· 真要删之前,先备份。

一点想法

防呆这事,人和机器其实一个道理:人会手滑,机器也会“手滑”,而且机器滑得更快、更彻底。区别只在于——人手滑之前会抖一下,机器不会。

所以别指望“让模型更小心一点”。靠谱的思路是把风险挡在模型外面:动手之前先备份、拿不准的先隔离、删除前面加一道必须由人确认的门。让 AI 负责“想”,让人负责“批”。

毕竟,模型可以犯错,数据不能重来。

—— 参考来源:Replit 删库致歉(secrss.com/articles/81109)、GLM「8 亿 token 教训」(v2ex.com/t/1238217)、Gemini CLI 把文件夹弄丢(InfoQ 汇总)。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|七亿社区站长论坛

GMT+8, 2026-10-20 19:20 , Processed in 0.284212 second(s), 4 queries , Redis On.

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表