漏洞概述 标题: 盲SSRF通过多模态工具函数利用提示注入 描述: AgentScope中的多模态工具函数(如 , , )在处理LLM生成的工具调用参数时,未对URL进行验证或消毒,导致盲服务器端请求伪造(Blind SSRF)。攻击者可以通过提示注入操纵LLM生成恶意URL,进而探测内部网络拓扑、扫描端口、触发内部服务的副作用等。 影响范围 受影响产品: - 生态系统: pip - 包名: agentscope - 受影响版本: <= 1.0.14(所有使用 工具的版本) - 修复版本: 1.0.14(所有使用 工具的版本) 严重性: 中等 CVSS向量字符串: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:N 弱点: CWE-918: Server-Side Request Forgery (SSRF) 修复方案 修复版本: 1.0.14(所有使用 工具的版本) POC代码 攻击场景 1. 开发者部署一个使用OpenAI多模态工具的AgentScope ReactAgent。 2. 攻击者发送包含提示注入的消息给Agent。 3. LLM生成包含恶意URL的工具调用。 4. AgentScope的 提取参数并调用函数。 5. 在 中,攻击者的URL到达 。 影响 内部网络侦察/端口扫描: 攻击者可以通过观察错误差异探测内部主机和端口。 云元数据端点探测: 服务器向云元数据端点发起GET请求,可能触发日志、警报或副作用。 触发内部服务的副作用: GET请求到内部API可能触发状态更改、缓存警告等。 拒绝服务: 攻击者可以迫使服务器向任意目标发送慢速或大请求,消耗服务器资源。 不受影响的情况 直接外泄响应内容(响应字节发送到OpenAI API,而非攻击者) 读取云IAM凭证(元数据响应被拒绝) 读取本地文件内容(本地文件路径打开文件,但内容传递给OpenAI的图像API,拒绝非图像数据)