IPBUF安全漏洞报告
English
CVE-2026-34981 CVSS 5.8 中危

CVE-2026-34981 WhisperX SSRF漏洞

披露日期: 2026-04-06

漏洞信息

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

相关标签

SSRFWhisperX信息泄露未授权访问CVSS-5.8

漏洞概述

WhisperX API在0.3.1至0.5.0版本中存在服务端请求伪造(SSRF)漏洞。由于FileService.download_from_url()函数未对用户提供的外部URL进行有效验证,且文件扩展名检查发生在HTTP请求发出之后,导致验证逻辑可被绕过。攻击者可通过在恶意内部URL后添加.mp3后缀,利用未授权的/speech-to-text-url端点,诱导服务器向内网地址发起请求并返回响应,从而造成敏感信息泄露。

技术细节

该漏洞位于WhisperX FastAPI的app/services/file_service.py文件中的FileService.download_from_url()方法。漏洞成因是服务器直接使用requests.get(url)处理用户输入,未在请求前对URL进行合法性校验(如限制内网IP)。此外,系统的安全检查逻辑存在缺陷,仅在文件下载完成后检查文件扩展名。攻击者可以利用这一逻辑顺序错误,通过在目标URL(如http://127.0.0.1/admin)末尾追加.mp3(即http://127.0.0.1/admin.mp3)来欺骗扩展名检查机制。结合/speech-to-text-url接口无需认证的特性,攻击者可探测或读取内部网络资源(如本地元数据服务、管理后台等),导致内网信息泄露。

攻击链分析

STEP 1
1. 信息收集
攻击者识别目标服务器运行WhisperX API,并确认存在未授权的/speech-to-text-url端点。
STEP 2
2. 构造恶意载荷
攻击者构造包含内网IP地址的URL,并在末尾添加.mp3以绕过文件扩展名检查(例如:http://169.254.169.254/latest/meta-data/role.mp3)。
STEP 3
3. 发送攻击请求
攻击者向/speech-to-text-url端点发送POST请求,将恶意URL作为参数传递。
STEP 4
4. 服务器执行请求
服务器端在未验证URL安全性的情况下,向内网地址发起HTTP请求,获取响应内容。
STEP 5
5. 信息泄露
服务器将内网资源的响应内容返回给攻击者,导致敏感信息泄露。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests target = "http://target-ip:8000/speech-to-text-url" # Bypass check by appending .mp3 internal_resource = "http://127.0.0.1:8080/secrets.mp3" data = { "url": internal_resource } response = requests.post(target, data=data) print(f"Status Code: {response.status_code}") print(f"Response Body: {response.text}")

影响范围

WhisperX FastAPI 0.3.1 - 0.5.0

防御指南

临时缓解措施
建议立即将组件升级至修复版本0.6.0。如果暂时无法升级,应通过防火墙或安全组限制服务器的出站网络访问权限,仅允许其访问必要的语音处理服务,阻断对内网敏感地址的连接。同时,可在WAF层配置规则,拦截请求参数中包含内网IP特征的流量。

参考链接

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