RabbitMQ 漏洞可能泄露 OAuth 密钥并暴露跨租户队列元数据
- 浏览次数 1583
- 喜欢 0
网络安全研究人员披露了影响 RabbitMQ 消息代理服务的两个访问控制相关漏洞的详细信息,这些漏洞可能允许攻击者泄露 OAuth 客户端密钥、使企业消息基础设施面临接管风险,并绕过租户边界。
发现并报告这些漏洞的 Miggo 安全团队表示,其中一个漏洞"在一次请求中就将代理的机密 OAuth 密钥泄露给未经身份验证的攻击者,在使用该密钥的配置中,这是完全接管代理的直接路径。"第二个漏洞允许任何已登录用户静默读取其他租户的数据。
据称,这两个缺陷自 2024 年初以来就一直存在于代码库中,影响 3.13.0 及更高版本的 RabbitMQ 发布系列。它们已在 4.3.0、4.2.6、4.1.11、4.0.20 和 3.13.15 版本中得到修复。在公开披露之前,没有证据表明这两个漏洞被积极利用。
以下是这两个漏洞的简要描述:
CVE-2026-57219(CVSS 评分:8.7) - 一个过时的 HTTP API 端点("GET /api/auth"),在配置了 OAuth 2 并使用 management.oauth_client_secret 配置密钥的 RabbitMQ 安装上会泄露客户端密钥,允许攻击者将其交换为管理员令牌,并获得对每条消息、队列、用户和代理设置的完全控制。
CVE-2026-57221(CVSS 评分:5.3) - 缺少授权检查,允许任何能够连接到虚拟主机的已认证用户枚举该虚拟主机中的所有队列和交换器名称,并读取队列消息计数和消费者计数,无论其实际权限如何。
"该端点的授权检查被硬编码为始终允许请求,这与所有其他敏感管理端点不同,"Miggo 在谈到 CVE-2026-57219 时表示。"在管理端口可被不受信任网络访问的任何地方,风险最为突出:云或多租户设置,或者意外暴露在互联网上的管理 UI。"
除了修补到最新版本外,建议如果管理接口可通过互联网访问,则轮换 OAuth 客户端密钥;限制对端口 15672 的访问,以防止管理接口通过网络可达;按虚拟主机隔离租户;并实施防火墙规则,以阻止对未修补实例上易受攻击端点的访问。
此次披露正值 RabbitMQ 维护者修复了两个严重级别的漏洞,这些漏洞可能导致 TLS 客户端身份验证绕过(CVSS 评分:9.1),并允许处于中间人(AitM)位置的攻击者伪造 JSON Web Key Set(JWKS)响应,导致代理接受任意 JWT(CVSS 评分:9.2)。