你好,我是刘坏坏。
就在今天下午,我这台装满了吃饭家伙的主力 MacBook Pro,被我自己养的龙虾(OpenClaw)一波带走了。
起因是我觉得磁盘有点满,完了就给跑在机器上的本地虾下达了一条指令:
“最大程度上为我的电脑腾出可用磁盘空间。
”
我以为它会删点儿缓存、清点儿日志。
我以为它会拆点儿软件、卸点儿依赖。
我以为它是安全可控的。
我忘了我曾给过他 Root(超级管理员)权限…
那时,我正开开心心在飞书写文档,突然飞书弹窗,说缺少文件,要重启飞书。
那就重启呗,结果关掉之后,再也启不来了,飞书阵亡。
然后就是微信,紧接着是 Chrome、剪映、Photoshop…
最后就是没有关闭按钮的强制重启提示框。
当屏幕再次亮起来的时候,我需要使用我的 iCloud ID 激活电脑…
这 B 龙虾认为「最大程度腾出磁盘空间」的最优解是 把电脑恢复出厂设置!
它甚至把自己都删掉了。
电脑磁盘上次这么干净还是几年前我刚买它的时候…
从下午四点多开始到现在,我终于把该登的账户登录上了;把该下的软件都安装上了;把用得上的环境都配置好了。
我再也不敢相信 OpenClaw 了,换成了 Claude…
所以所以,千万千万千万不要在自己的主力机上,给龙虾之流太高的权限。
有的人会想「我要是看它乱删东西,赶紧打字让它停下不就行了?」
我开始也这么想的,所以我敢把 Root 密码给它。
刚才查过才知道,这类智能体的底层架构中,有个叫 智能体执行循环(Agentic Loop) 的东西,为了防止动作冲突,它们采用的是 串行化的阻塞式队列。
说人话就是执行完这条指令,才会进行下一条指令。
就比如你让它开始清理磁盘,它会把这个任务拆分成一个个小任务,比如先清理 C 盘,再清理 D 盘,再清理 E 盘…
他把这些小任务排列成一长串,这就是刚才说的「串行化」。
如果在清理磁盘这个任务执行过程中,你发现它删错了,在聊天框中疯狂让它停下。
那这些中止指令,也只能排在队列的最末尾,这就是刚才说的「阻塞式队列」。
一旦这种事情发生了,你最快的止损方式就是台式机拔电源,笔记本长按电源键强制关机。
以前的大模型,只能跟你聊天。
当它有了系统操作权限之后,就能把家拆了。
我想起来大学时网络安全科目的知识点:当一个系统同时具备「私有数据访问」、「接触不可信内容」、「外部通信能力」时,它就是个天生的炸弹。
入侵者不需要去挖你的系统漏洞,他只需要在一个正常的 HTML 网页注释里藏一句提示词注入,你的龙虾就能根据注释内容的要求,把你的各种信息打包发出去。
**全程没有木马,杀毒软件完全没有察觉。 **
你我都知,龙虾之流,靠 Skill 来完成各种操作,插件都是开源的,就安全了吗?
在 OpenClaw官方插件市场(ClawHub),有的插件地下就会有好心前辈告诉你 「这个插件会把你的 XXX 发送至 XXX」。
这些恶意技能插件会直接继承你的龙虾权限,把你的各种有价值的东西卷走。
那我如果把它放到 Docker 里?
先说结论,轻量级隔离等于没有隔离。
大语言模型有极强的自适应试探能力,它们能通过特定的环境变量,直接穿透 Docker 的命名空间,在宿主机执行命令。
你的 Docker,就是个带拉链的帐篷,拉锁还很好找。
这次教训,让我彻底断了放养龙虾的念头,我直接不养虾了,投入了 Claude 的怀抱。
毕竟可控,没那么方便流程化,能最大程度保证我的电脑不会被恢复出厂设置。
如果你现在正裸奔放养龙虾,那请务必把它隔离,别用 Docker,直接上微型虚拟机。
别明文给它任何高权限密码,所有 API 调度,密钥必须用有时效性的动态 Token。
任何 Skill、文件删除、文件写入操作,必须过一遍人工。
重装完电脑,赶紧写下这篇,希望诸君吸取我的血泪教训,保住你们的主力机。
刘坏坏 丙午年二月十九
夜雨聆风