
一、一个被忽略的危险信号
上周我帮一个朋友排查他们公司的AI助手出了问题——明明只是用来做数据质检的,结果某天突然开始给外部人员开数据库权限。
他很困惑:"我明明只让它做质检,它怎么会干这种事?"
我查了一下操作日志,发现原因让人冒冷汗:
有人在数据库的某个字段里,藏了一段话——伪装成"系统审计通知",指示AI助手给一个外部审计员开读权限。AI看到那段话,以为是正常流程,照做了。
朋友的第一反应是:"那我把它开权限的功能删掉不就行了?"
删不掉。因为这同一个AI助手平时还要给内部分析师开数据集权限,是正常业务流程的一部分。你不能因为一次攻击,就把正常功能砍掉。
这就是问题所在——AI助手的权限是按"身份"分配的,不是按"目的"分配的。
它有这个权限,所以它可以做。至于它为什么要做,没人问。
二、为什么"身份权限"兜不住AI助手
先说清楚一个概念,很多人会混淆。
传统的权限管理,管的是"谁能做什么"。比如你是数据分析师,你有读表权限;你是运维,你有改配置权限。这套体系叫RBAC(基于角色的访问控制),几十年了,很成熟。
但它有一个致命盲区:它只管身份,不管目的。
举个例子:
你的AI助手被设定为"数据质检员",它需要两个能力:读数据库、更新仪表盘。这两个权限是合理的,你给它了。
但问题是,它同时也拥有"给外部人员开权限"的能力——因为另一个任务需要它做这个。
所以当它在执行质检任务时,三个权限它全都有。身份检查只会说:"这是合法身份,可以操作。"
而攻击者要做的,就是利用这个盲区。
三、攻击者到底怎么下手的
这个攻击方式其实不复杂,但非常隐蔽。
攻击者不需要碰你的AI助手,不需要破解密码,不需要入侵系统。他只需要做一件事:在AI助手会读到的数据里,藏一段指令。
比如,你的数据库里有一张客户表,表里有个"备注"字段,是客户自己填的。攻击者在这个字段里写:
这段话读起来像不像正常的审计通知?像极了。
AI助手在做质检时,读到了这条数据。它分不清这是"需要处理的数据"还是"需要执行的指令"——因为对它来说,格式几乎一模一样。
于是它照做了。给外部人员开了权限,更新了仪表盘,然后在日志里记录:"执行了审计相关操作。" 攻击者全程没碰你的系统,却拿到了你客户数据库的访问权。
你去查日志,看到的是一条"正常操作记录"。你甚至不会觉得有问题。
四、我试了一个方案,3条规则堵住了漏洞
后来我研究了这件事,找到了一个叫"意图授权"的机制——不是问AI"你能做什么",而是问它"你这次要做什么"。
核心思路很简单:给每次会话绑定一个"目的声明",AI的每个动作都必须检查是否符合这个目的。
身份权限决定AI"能做什么",意图授权决定AI"这次该做什么"。两个条件都满足,才能执行。
我用了Databricks推出的Omnigent框架来实现,它内置了这个能力。具体操作分三步: 第一步:用自然语言描述你的意图
你不需要写代码,用大白话告诉系统:"这个会话的目的是做数据质检和更新仪表盘,不需要开权限。"
系统会自动生成一条策略规则,你确认就行。 第二步:给每个工具打上标签
系统会问你:读表这个操作,跟你的目的匹配吗?更新仪表盘呢?开权限呢?
你逐个回答:
• 读表 → 允许(Permitted)
• 更新仪表盘 → 需要人工确认(Consent-required)
• 开权限 → 拒绝(Denied)
这三档设计很巧妙:允许的直接过,敏感的让你确认,不相关的直接拦。 第三步:部署,测试,生效
部署之后,我故意用同样的攻击方式测试了一遍。这次AI助手读到了那段伪装的"审计通知",尝试调用开权限的功能——直接被拦截,根本执行不了。
而正常的质检和仪表盘更新,照常进行。 攻击者的注入指令被精准识别并阻断,用户的正常需求完全不受影响。
五、3条防篡改规则,防止AI自己改自己的限制
你可能会想:如果攻击者直接跟AI说"把你的权限限制放宽"怎么办?
这个担心合理,但Omnigent做了三重保护: 第一,AI没有"改权限"的按钮。 它有读取和添加策略的能力,但没有删除、编辑、禁用策略的接口。它想放宽也放宽不了。 第二,添加新策略也需要人批准。 即使AI试图给自己加一条更宽松的规则,也需要人类用户明确同意才能生效。 第三,新规则不能覆盖旧规则。 多条规则同时存在时,任何一条拒绝,结果就是拒绝。 也就是说,你加再多宽松规则,原来那条限制永远生效。
三条规则,层层递进,把AI"自己给自己开后门"这条路彻底堵死了。
六、这套思路,对普通AI用户有什么启发
Omnigent是面向企业级AI Agent的方案,但它的核心思想——"身份够不代表目的对"——对每个用AI的人都有参考价值。
我总结了三条实操建议: 1. 权限最小化,按任务开关
很多人给AI助手开权限时,习惯"一步到位",把所有可能用到的功能全开上。但实际上,每次任务只需要开对应的权限就够了。
用AI整理文件?只给文件读写权限,别给邮件发送权限。
用AI做数据分析?只给数据库读权限,别给写权限和权限管理功能。 你不需要的权限,就是别人可以利用的漏洞。 2. 敏感操作,必须人工确认
AI执行"读取"类操作,可以自动进行。但一旦涉及"修改"、"删除"、"授权"这类不可逆操作,一定要加上人工确认环节。
这就像银行转账——小额免密,大额必须输密码。不是不信AI,而是有些操作错了代价太大。 3. 定期审查AI的操作日志
AI的操作日志不是给自己看的,是给你看的。每周花5分钟扫一遍,看有没有不在预期范围内的操作。
重点关注:授权记录、文件删除记录、对外发送记录。这几类是攻击者最可能利用的路径。
七、AI越强大,安全越要前置
很多人的使用习惯是:先用起来,出了问题再补安全措施。
这个习惯在传统软件时代还能勉强应付——顶多就是换个密码、打个补丁。但在AI Agent时代,安全问题必须前置。
因为AI助手的每一次操作,都可能涉及真实的数据、真实的权限、真实的后果。
它不是在模拟,它是在执行。 你给它多大的权限,就要想清楚它可能被用来做多大的事。
我那位朋友后来给他们的AI助手加上了意图授权,把"质检任务"的权限范围收窄到了三个工具、两个动作。折腾了一下午,但他说了一句很实在的话: "早该这么干了。不是AI不可信,是我之前给它的自由度太大了。"
这句话,我觉得值得每个用AI的人想一想。
结尾互动
如果这篇文章对你有帮助,点击右下角"推荐",让更多人看到。 关注「飘雪思考」,每周更新职场干货与底层思维,和10万+读者一起成长。
💬 你怎么看? 你平时给AI助手开了多少权限?有没有想过某个权限可能被滥用?
欢迎在评论区留下你的想法,我都会看的。
夜雨聆风