自动化自满,安全篇
最危险的时刻不是第一天——而是第九十天。第一天你很谨慎;你读每一份 diff,你跑那段攻击者提示词,你检查上传处理逻辑。然后一百次改动上线了,什么坏事都没发生,于是检查开始让人觉得像是走过场。你“就这一次”地在一个小改动上跳过了审查关卡。这个小改动加了一个没有授权检查的接口。有一阵子什么都没发生,因为从内部看,什么都没发生正是一个安全漏洞的样子。
这就是自动化自满对准了安全,而它在这里比在任何别的地方都更糟,因为安全失败是无声的、延迟的。一个坏掉的功能会在几分钟内惩罚你。一个坏掉的权限检查则会用表面上的成功来奖励你,一直奖励到泄露发生的那一刻。灾难的缺席并不是安全的证据——它正是一个有漏洞、只是还没被人发现的应用的正常状态。
防御之道,是把这道关卡做得足够便宜,让你不去跳过它;又足够自动,让你没法跳过它。把密钥扫描和 audit 放进 CI,这样它们不靠你记着也会运行;把那段攻击者提示词随手放在手边,用在任何接触 auth、数据或上传的东西上。守住一条线:一个处理用户数据或权限的改动,在有人——你,借助 AI 诚实的帮助——主动试图攻破它之前,不上线。vibe coding 里的速度来自好的关卡,而不是来自相信“安静”就意味着一切都好。