CVE-2024-47167
中已发布
Gradio 中 /queue/join 的路径参数存在 SSRF 漏洞
- 已发布
- 2024年10月10日
- 已更新
- 2024年10月11日
- 分配 CNA
- GitHub_M
- 观察到的证据
- 2026年8月6日
初级CVSS
6.9/ 10中
nvd · CVSS 4.0
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X0.5%
低 · 未来 30 天
- 百分位
- 40.2%
- 型号日期
- 2026年9月21日
EPSS 是统计估计,而不是确定性或影响衡量标准。将其与 CVSS、KEV 状态、暴露程度和您的环境相结合。
总结
Gradio 是一个用于快速原型设计的开源 Python 包。此漏洞涉及 `/queue/join` 端点中的**服务器端请求伪造(SSRF)**。Gradio 的 `async_save_url_to_cache` 函数允许攻击者强制 Gradio 服务器向用户控制的 URL 发送 HTTP 请求。这可能使攻击者能够针对本地网络内的内部服务器或服务发起攻击,并可能泄露数据或触发不必要的内部请求。此外,这些 URL 的内容会存储在本地,使攻击者更容易向服务器上传潜在恶意文件。这会影响部署使用涉及 URL 抓取的组件(如 Video 组件)的 Gradio 服务器的用户。建议用户升级到 `gradio>=5` 以解决此问题。作为临时解决方案,用户可以禁用或严格限制其 Gradio 应用程序中基于 URL 的输入,仅允许可信域名。此外,实施更严格的 URL 验证(例如基于白名单的验证)并确保无法通过 `/queue/join` 端点请求本地或内部网络地址,有助于降低 SSRF 攻击的风险。
来源
1搭建一个Docker化环境,用于复现和分析CVE-2024-47167——Gradio 4.40.0中的一个漏洞,包含内部HTTP服务器和易受攻击的目标,供安全测试使用。
负责任的使用
仅在您拥有或有权测试的系统上使用漏洞信息。 Kitploit 链接到公共研究元数据,并且不存储漏洞代码或恶意负载。