🟠 高危 | CVE-2026-54603 — OAuth2 is a Ruby wrapper for the OAuth 2.0 and 2.1...
🟠 《高危安全漏洞:CVE-2026-54603》
CVSS 评分: 高危(8.6) 状态: Received 发布时间: 2026-07-28
漏洞简介
该漏洞存在于 Ruby 语言的 OAuth2 库中,该库是 OAuth 2.0 和 2.1 授权框架(包括 OpenID Connect,即 OIDC)的 Ruby 封装实现。在版本 0.4.0 至 2.0.21(含)中,存在一个协议相对重定向(protocol-relative redirect)漏洞。具体而言,当 OAuth2::Client#request 方法处理返回的 Location 头时,如果该头包含协议相对 URL(例如 //attacker.com/callback),则请求的授权(authority)会被覆盖,导致本应发送给合法服务器的 Bearer 授权头(Authorization header)被错误地发送到攻击者控制的服务器上,从而泄露凭证(credential)。
该漏洞已在版本 2.0.22 中修复。
影响范围
- 受影响版本:OAuth2 Ruby gem 版本 0.4.0 至 2.0.21(含)
- 不受影响版本:版本 2.0.22 及以上
- 相关 CWE 分类:CWE-200(信息泄露)、CWE-601(URL 重定向至不可信站点)
风险分析
- 攻击向量:网络远程攻击(AV:N),攻击者无需认证(PR:N),无需用户交互(UI:N),攻击复杂度低(AC:L)。
- 影响范围:该漏洞影响范围发生变化(S:C),即攻击者可以利用此漏洞影响与受影响组件不同的安全主体(例如,攻击者控制的服务器)。
- 机密性影响:高(C:H),因为 Bearer 令牌(token)或凭证可能被直接泄露给攻击者。
- 完整性影响:无(I:N)
- 可用性影响:无(A:N)
- CVSS 评分:8.6(高危)
可能的攻击后果:攻击者可以通过构造一个恶意的重定向响应,诱使 OAuth2 客户端将包含用户授权凭证的请求发送到攻击者控制的服务器。一旦凭证泄露,攻击者可以冒充用户访问受保护的资源,执行未授权的操作,如读取、修改或删除用户数据,甚至可能进一步扩大攻击范围。
🔍 技术细节
| 字段 | 值 |
|---|---|
| CVE ID | CVE-2026-54603 |
| CVSS 评分 | 8.6 🟠 |
| 严重程度 | 高危 |
| CVSS 向量 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N |
| CWE 分类 | CWE-200,CWE-601 |
| 发布时间 | 2026-07-28 |
| 最后更新 | 2026-07-28 |
| 状态 | Received |
| 数据来源 | security-advisories@github.com |
🔗 参考链接
💬 评论