AI 智能体写代码:当修复反而打开了大门
你批准了一个修复,因为系统说它能解决一个安全问题。几周后你发现,恰恰是这个修复让大门敞开了。Snowflake 遇到的差不多就是这种情况。这个案例很好地说明了,AI 智能体正在改变企业的工作方式,有好的一面,也有坏的一面。
你不需要是程序员也能看懂。我保证。
Snowflake 案例到底发生了什么
Snowflake 是一家巨型数据公司。有安全团队,有流程,有审计。不是周末帮忙做网站的侄子。
它用 GitHub 存放代码。GitHub 有个工具叫 Copilot Autofix:AI 在代码里发现问题,直接给出现成的修复方案。团队里有人看一眼,点批准,就完事了。
安全公司 Wiz 的研究人员运行了他们自己的漏洞猎手智能体。它发现了一件有意思的事:其中一个 AI 生成的修复,被用在了自动化代码测试和发布的环节,结果制造了一个新漏洞。通过这条路,外部的人可以让公司的系统执行命令,并拿到内部凭证。有了这些凭证,就能动 Snowflake 的 Jira。那是团队用来管理任务、bug 和项目的工具。
漏洞已经上报并修复。没人卷走保险箱。但这个教训留下了。
注意这里的讽刺。AI 被叫来补一个洞。它补上了一个,却在更敏感的地方开了另一个。而一个人批准了它,因为它看起来是对的。
如果你没有 IT 团队,这为什么和你有关
你可能在想:"Diego,我开的是诊所。一家店。一家 15 个人的公司。我不用 GitHub。"
有道理。但把名字换一换,故事是一样的:
- 在 WhatsApp 上回复客户、还能访问你订单系统的 AI 智能体。
- 读取邮件、把发票录入财务系统的自动化流程。
- 帮你"整理"客户表格、还有权限删除行的助手。
在这些情况里,你手上的 AI 都会行动,不只是聊天。每一个会行动的 AI 手里都握着一把钥匙。问题是:这把钥匙能开哪些门?
在 Snowflake 的案例里,这把钥匙能开的门比应该的多。而且没人发现,直到有外人来测试。
AI 智能体犯错的方式和人不一样
一个新员工不会做某件事时,通常会犹豫。会问。会慢。会一脸疑惑。
AI 不会一脸疑惑。它给出的回答干净、格式漂亮、语气自信。哪怕它是错的。
这会改变审核者的心理。当修复来自一个大公司出品的工具,还贴着"安全修复"的标签,人就倾向于信任。你扫一眼,觉得说得通,就批准了。我自己就这么干过。你大概也干过,对一份合同、一份报价或一份报告。
AI 犯错的时候,看起来不像错误。它看起来像解决方案。
这才是危险的地方。不是 AI 笨。而是它很有说服力,而人面对有说服力的东西就会放松警惕。
问题不在 AI,而在权限
我的观点很明确:大多数 AI 智能体引发的灾难,都不会是 AI 的错。而是给了它太多权限的人的错。
这么想吧。你请一个实习生来整理库存,不会顺手把银行密码也交给他。不是因为他不诚实。而是整理库存根本用不着这个。
用 AI 的时候,我们却总是反着来。把智能体连到主 Google 账号上。因为"配置起来更方便",就给它系统管理员权限。所有地方用同一个密码,因为集成需要一个,而那个正好在手边。
Snowflake 案例的核心问题就在这里:一个自动化流程拥有的权力超出了它的需要,而且运行在一个外人能影响它行为的地方。AI 只是把路铺好了。
如何使用 AI 智能体,又不让公司暴露风险
我不是说要躲着 AI。我每周都在为客户搭建智能体。它们省下的是实实在在的时间。我服务过的一家诊所,再也不会错过非工作时间的预约了。一家事务所把邮件分拣的时间砍掉了一半。
但有几条规则我一直遵守。它们很简单,适用于任何规模的公司。
1. 最小权限。 智能体只能看到完成任务所需的东西。客服机器人查的是预约时间。它不需要看营业额。
2. 把读取和操作分开。 让 AI 读取是一回事。让它删除、付款、发送或发布是另一回事。无法撤回的操作,必须经过人。
3. 批准是一项工作,不是一次点击。 如果团队里有人负责批准 AI 的建议,这个人必须知道自己批准的是什么。如果他不懂,批准就只是走过场。那还不如不要这个按钮。
4. 每个自动化都用独立的凭证。 不要在集成里用你的个人密码。每个智能体都有自己的钥匙,一旦出问题,你一分钟内就能把它作废。
5. 记录一切。 智能体的每个动作都要记下来:做了什么,什么时候做的,依据是什么。等出了问题,而问题迟早会出,你几分钟就能查到,而不是几周。
这些规则都不需要昂贵的工具。只需要有人在启动智能体之前想清楚,而不是在被吓一跳之后。
如果我已经有智能体在运行了呢?
做个快速测试。把你现在用的每一个自动化或助手拿出来,回答三个问题:
- 它能访问哪些账号和系统?
- 它能在没人批准的情况下自己做什么?
- 如果明天它用这些权限做了最坏的事,损失会有多大?
如果第三个问题的答案让你心里一凉,你就找到了需要调整的地方。大多数时候,解决办法就是收回那些从来没用过的权限。花一个下午就够了。
还有一个重要细节:Snowflake 的这个漏洞,本身就是一个 AI 智能体发现的,只不过它站在防守的一方。也就是说,制造漏洞的技术,也帮忙找到了它。这场游戏不是"用不用 AI"。而是谁在用,用得多小心,旁边有谁盯着。
我从中得到的教训
如果像 Snowflake 这么大的公司,有专门的安全团队,都会放过一个由自动修复制造的漏洞,那你的公司也可能会。这不是恐慌的理由。这是一个理由,让你像对待一个能访问系统的新员工那样对待 AI 智能体:给予信任,但设好清晰的边界。
AI 会越来越强。智能体会独立完成越来越多的事。从中获益的,会是一开始就把房子搭好的人,而不是到处乱连、看看会怎样的人。剧透一下:通常的结果是周五晚上六点接到一个火急火燎的电话。
如果你想让 AI 智能体在你的业务里干活,同时脚踏实地、把门锁好,我可以和你一起把它设计出来。了解我的工作,我们聊聊。
LinkedIn 摘要
AI 犯错的时候,看起来不像错误。它看起来像解决方案。 在 Snowflake,一个由 AI 生成的安全修复被团队成员批准了。结果它打开了一个新漏洞,能拿到内部凭证。 问题不在 AI。问题在于给了它太多权限,而且批准的人并不清楚自己批准的是什么。 如果你在 WhatsApp、财务系统或客户表格里用了智能体,问问自己:如果明天它用这些权限做了最坏的事,损失会有多大? 最小权限,不可逆的操作由人来把关,所有动作都留记录。这不花什么钱,只需要在出事之前想清楚。 我在博客里写了这件事。如果你想让智能体干活,同时把门锁好,我们聊聊。 #人工智能 #AI智能体 #信息安全 #自动化 #商业