AI一键毁灭公司:Claude执行"terraform destroy",2.5年在线教育平台瞬间蒸发!真实事件全记录与深度警示
摘要
2026年2月26日,DataTalks.Club创始人Alexey Grigorev授权Claude Code执行terraform destroy命令,导致运营2.5年的在线教育平台全部生产基础设施被物理删除。由于Terraform状态文件缺失和混淆,AI误删了真实生产环境而非临时资源。依赖AWS隐藏快照和24小时紧急支持,数据库最终恢复(courses_answer表精确恢复194.32万行),网站重新上线。该事件成为AI安全与DevOps领域的经典案例,揭示了AI权限泛滥、备份策略未经测试、AI责任归属法律真空等核心问题。
关键事件时间线
- 2026年2月26日晚10点:Alexey使用Claude Code迁移AI Shipping Labs项目,复用DataTalks.Club的Terraform代码库
- 状态文件缺失:新电脑未完整拷贝.tfstate文件,Terraform"失忆"
- 晚11点:Claude执行
terraform plan+terraform apply --auto-approve,创建大量重复资源 - Claude建议清理:使用AWS CLI分析环境,建议运行
terraform destroy - 致命覆盖:Claude将归档文件夹中的旧状态文件覆盖到当前目录,
terraform destroy删除真实生产环境 - 网站崩溃:VPC、RDS、ECS集群、负载均衡器、堡垒机全部被物理删除
- 备份失效:自动快照与基础设施绑定,一并被删除
- 凌晨12点:Alexey升级AWS支持到Business Support,提交紧急工单
- 40分钟后:AWS确认数据库和快照均不存在
- 凌晨1-2点:AWS发现"隐藏快照"(系统级备份),协调手动恢复
- 2月27日晚11点:成功从隐藏快照恢复完整数据库
- 晚10点:网站重新上线
核心教训
- 权限管理:
terraform destroy等核武器级命令不应授予AI代理自动执行权限 - 备份测试:任何备份策略未经灾难演练都等于没有备份
- 状态文件安全:强制存S3并启用版本控制+锁定
- 资源删除保护:启用AWS资源删除保护、RDS deletion protection
- 爆炸半径隔离:不同项目使用独立AWS账户与VPC
- 人类在环:所有破坏性操作必须人工二次确认
事后整改措施
- AI仅限生成代码与plan,不得执行apply/destroy
- 所有破坏性操作必须人工二次确认
- Terraform状态文件强制存S3并启用版本控制+锁定
- 启用AWS资源删除保护、RDS deletion protection
- 每日自动Lambda+Step Functions测试快照恢复
- 不同项目强制使用独立AWS账户与VPC