Agent 攻击 Agent:自动检测 LLM Agent 中的污点式漏洞

" 随着大语言模型(LLM)能力的快速提升,越来越多的系统开始构建LLM-based Agents。然而,这类 Agent 系统也引入了一类新的安全风险:恶意提示、工具调用滥用、数据泄露。这些攻击通常通过恶意输入 → LLM 推理 → 工具执行的链路传播, 其本质类似于传统程序中的污点传播漏洞。但传统安全分析方法很难应用于 Agent 系统,因为LLM 推理过程是黑盒或半黑盒;Agent 行为具有高度动态性;攻击路径依赖复杂的推理与工具调用链。

为了解决这一问题,论文提出通过构建攻击Agent自动发现 LLM Agent中的污点式漏洞。该方法让一个Agent自动攻击另一个 Agent,从而发现潜在安全漏洞。 "

  • 📄 论文标题:Make Agent Defeat Agent: Automatic Detection of Taint-Style Vulnerabilities in LLM-based Agents

01---方法介绍

图1显示了一个简化的漏洞代码片段。为了利用此漏洞,攻击者通过第2-3行(即source)中的web服务向代理发送恶意提示,其中一部分由LLM返回,并直接传递给第10行(即sink)中的eval函数,而没有进行充分的清理,从而导致代码注入。

图 1. 一个来自热门开源代理的实际漏洞示例

论文的核心思想是:利用攻击 Agent 自动生成恶意输入,并通过污点传播分析检测 LLM Agent 的安全漏洞。

整个系统包含两个核心角色:

  1. Victim Agent

    需要被测试安全性的目标 Agent。

  2. Attacker Agent

    负责生成攻击提示并尝试触发漏洞。

通过这种方式,系统可以自动探索潜在攻击路径,并发现安全问题。

图 2. AgentFuzz概述图

整个漏洞检测流程主要包括四个步骤:

1.污点源定义

将用户输入或外部数据标记为潜在恶意数据。

2.攻击输入生成

攻击 Agent 自动生成可能触发漏洞的提示或输入。

3.Agent 行为执行

Victim Agent 根据输入执行推理与工具调用。

4.污点传播检测

分析敏感数据是否传播到危险操作(如系统命令、数据库访问等)。

小结:让 Agent 自动攻击 Agent,实现自动化 Agent 安全测试。

02---关键机制

  1. Agent 对抗式漏洞检测框架

    通过"攻击 Agent vs 目标 Agent"的方式自动发现漏洞。

  2. LLM Agent 污点传播建模

    将传统程序分析中的污点分析思想引入 Agent 系统。

  3. 自动攻击生成机制

    利用 LLM 自动生成多样化攻击提示。

  4. 工具调用安全检测

    分析 Agent 工具执行链中的潜在安全风险。

模块 设计思路 作用
攻击 Agent 自动生成恶意提示 探索潜在攻击路径
污点跟踪 标记不可信输入 分析数据传播路径
工具调用监控 监控 Agent 工具执行行为 检测危险操作
漏洞判定 检测污点数据是否到达敏感操作 发现安全漏洞

小结:将传统污点分析思想扩展到 LLM Agent 系统中。

03---实验结果

实验收集了20个基于LLM的开源代理,其中13个拥有超过10,000个星标,其余7个则拥有超过1,000个星标。主要实验结果如下。

(1)漏洞检测评估。结果见表1-2。总体而言,AgentFuzz在整个数据集中共识别出828个sink调用点,并报告了34个潜在漏洞。AgentFuzz总共花了69.01个CPU小时对20个应用程序进行模糊测试,平均每个应用程序3.45个CPU小时。

表1. 数据集中20个代理的详细信息。代理与检测到的漏洞以灰色突出显示

表2. 检测到的漏洞并分配了CVE编号

(2)相关工作比较。与SoTA技术LLMSmith(Demystifying RCE vulnerabilities in LLM-integrated apps)的比较结果如表3所示。结果显示,AgentFuzz在准确率方面超过LLMSmith33.25倍,检测到的漏洞是LLMSmiths的2.4倍。AgentFuzz识别出34个漏洞。相比之下,LLMSmith只检测到10个漏洞,所有这些漏洞都是AgentFuzz识别的漏洞的子集,并产生332个误报。

表3. AgentFuzz与LLMSmith的对比

**小结:**AgentFuzz可以自动检测基于LLM的代理中的污点式漏洞。为了弥合传统的定向模糊和代理漏洞之间的差距,AgentFuzz以自然语言的形式生成语义正确和约束有效的种子提示。AgentFuzz已经在20个真实的代理应用程序上进行了评估,发现了34个高风险的0天漏洞,分配了23个CVE ID。

📌 总结

该论文首次系统性地将"污点分析 + 自动攻击生成"结合,用于检测 LLM Agent 的安全漏洞。通过构建攻击 Agent,该方法可以自动探索复杂攻击路径,从而发现潜在安全问题。

随着 LLM Agent 在实际系统中的广泛应用,Agent 安全测试与自动漏洞检测将成为未来的重要研究方向。

📣 欢迎留言讨论

  • 你认为未来是否需要专门的 Agent 安全测试框架?

  • LLM Agent 的安全问题是否会成为新的漏洞研究热点?

📌 点赞 + 收藏 + 分享,你的支持,是我们持续解析高水平软件安全论文的最大动力!

相关推荐
AI多Agent协作实战派3 小时前
【AI探索历程17】从“给自己用“到想“让别人用“
人工智能
吴佳浩4 小时前
Memory Provider 实战:Hermes、Mem0、Honcho、Hindsight 为什么都这样设计?
人工智能·agent·ai编程
吴佳浩4 小时前
企业级 Agent Memory 选型指南:如何构建可扩展的 Memory Service?
人工智能·agent·ai编程
北方的银狐-Zero5 小时前
ERP 管执行,数据管标准,OntoL本体 管思考:企业智能化升级的规划图
大数据·人工智能·本体论
浅安的邂逅5 小时前
260918-白帽把 OpenAI 论坛“打穿“了:攻防赛漏洞、账户被 Claude 入侵、模型偷偷掩盖不当行为
人工智能·大模型·ai编程·ai模型·行业动态
jinyishu_5 小时前
认识 AI Agent:概念、架构、设计模式与主流框架
人工智能
Hrain-AI6 小时前
AI 爬虫三档授权工程落地:搜索放行、训练拦截、Agent 分层(附脚本)
人工智能·elasticsearch·milvus
sunhy_csdn6 小时前
“词码”作为 Token 候选译名
人工智能
Hrain-AI6 小时前
多 Agent 并行不打架:worktree 隔离与反馈回流落地(附脚本)
网络·数据库·人工智能·架构