🟠 高危 | CVE-2026-18353 — PIA's `POST /v1/upload/sbom` endpoint accepts a Be...
🟠 《高危安全漏洞:CVE-2026-18353》
CVSS 评分: 高危(8.8) 状态: Received 发布时间: 2026-07-30
漏洞简介
该漏洞存在于 PIA 项目的 POST /v1/upload/sbom 端点中。该端点接受一个 Bearer JWT(JSON Web Token),并在执行 OIDC(OpenID Connect)发现流程(使用 requests 库)之前,使用 Python 的 urlparse 函数检查 JWT 中 未经验证 的 iss(issuer,签发者)声明是否在签发者白名单中。
由于 urlparse 与 requests/urllib3 在解析包含反斜杠(\)的授权字符串(authority string)时,会将其解析为 **不同的主机名**(hostname),攻击者可以构造一个看似通过白名单检查的签发者(issuer),但实际上会驱动 requests 库(以及后续用于 JWKS 密钥检索的 urllib.request.urlopen)连接到攻击者任意指定的主机、端口和协议(scheme)。
例如,攻击者可以构造类似 https://attacker-host\@ci.eclipse.org/ 的签发者字符串。urlparse 会将其解析为 ci.eclipse.org(通过白名单检查),而 requests/urllib3 则会将其解析为 attacker-host(攻击者控制的主机),从而实现服务器端请求伪造(SSRF,Server-Side Request Forgery)。
影响范围
- 相关 CWE 分类:CWE-918(服务器端请求伪造,Server-Side Request Forgery)
- CVSS 向量:CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:H/VA:N/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:X
- 具体软件/版本:PIA(Eclipse 基金会下的项目),具体版本信息请参考官方安全公告(GitHub Advisory GHSA-v249-9xjm-qhgf)。
风险分析
攻击后果:攻击者可以利用此漏洞发起服务器端请求伪造(SSRF)攻击。具体来说,攻击者可以:
- 绕过签发者白名单检查:通过精心构造的
iss声明值,使urlparse认为其属于白名单中的合法签发者。 - 劫持 OIDC 发现流程:使服务器向攻击者控制的主机发起 HTTP 请求(包括 JWKS 密钥检索)。
- 潜在危害:攻击者可以:
- 获取服务器内部网络信息(如内网主机、端口扫描)。
- 与内部服务交互(如未授权的 API、数据库等)。
- 提供恶意的 JWKS 密钥,从而伪造合法 JWT,进一步绕过认证或提升权限。
- 利用服务器作为跳板攻击其他内部系统。
- 绕过签发者白名单检查:通过精心构造的
漏洞严重性:该漏洞的 CVSS 4.0 评分为 9.1(Critical),攻击复杂度低(AC:L),无需认证(PR:N),无需用户交互(UI:N),且攻击者可以完全控制请求的目标(主机、端口、协议)。虽然对机密性影响为低(VC:L),但对完整性影响为高(VI:H),表明攻击者可能通过伪造 JWT 或篡改 OIDC 流程来破坏系统的完整性。
🔍 技术细节
| 字段 | 值 |
|---|---|
| CVE ID | CVE-2026-18353 |
| CVSS 评分 | 8.8 🟠 |
| 严重程度 | 高危 |
| CVSS 向量 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:H/VA:N/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:X |
| CWE 分类 | CWE-918 |
| 发布时间 | 2026-07-30 |
| 最后更新 | 2026-07-30 |
| 状态 | Received |
| 数据来源 | emo@eclipse.org |