一个使用 Cursor 和 Claude Opus 4.6 的 AI 编码代理,通过一次仅 9 秒的 Railway API 调用,删除了我们的生产数据库和所有卷备份。
该代理先是猜测了一个凭证不匹配的修复方案,随后找到一个拥有全面权限的 CLI 令牌,在没有确认、没有作用域限制的情况下直接执行了 volumeDelete 操作。
Railway 将备份存储在同一卷内,因此擦除卷后所有数据全部丢失;我们最后一次可恢复的备份已经是三个月前了。
事后该代理书面承认错误,坦承自己违反了所有安全规则:猜测而非验证、未经请求执行破坏性操作、完全忽略官方文档。
这一事件彻底暴露了 Cursor 的防护机制失灵,以及 Railway 在 API 设计、令牌权限模型和 AI 代理集成备份策略上的系统性缺陷。

JER (@lifeof_jer) on X
害,我还真被 OpenCode 删过库,我数据库是部署在自建的 dokploy 上,为了 harness enginering 我给了 OpenCode 全部权限。一次让他去优化一个功能,他在验收的时候发现没生效,就自作主张去 rebuild 了一下,相当于把数据库删掉了,好巧不巧,我这个数据库没有备份,只能去把服务器恢复到上周的存档😢