CVE-2026-66077 in RabbitMQ
摘要
由 VulDB • 2026-09-23
RabbitMQ是一个消息和流式传输代理。在版本3.13.15、4.0.20、4.1.11和4.2.6之前,管理UI使用EJS 1.0,其中未进行HTML转义(does NOT HTML-escape)。connection.ejs:135将(以及peer_cert_issuer)直接渲染到页面中。相同的模式出现在streamConnection.ejs:102、106和110中。这些值来自rabbit_ssl:peer_cert_subject/1,该函数以字符串格式格式化DN(Distinguished Name),但未进行HTML转义。验证者纠正了最初研究人员的说法:此漏洞仅在监听器配置为verify_peer时才可利用(因此证书必须由代理的信任存储中的CA签名,而非任意自签名);然而,在使用mTLS进行客户端身份认证的部署中,任何能够从组织CA请求证书的用戶都能控制Subject CN(主题通用名称)。能够获取由代理信任的CA签名的TLS客户端证书的攻击者(需启用verify_peer),可以在证书的Subject DN中嵌入JavaScript。当管理员在管理UI中查看该连接时,脚本将在管理员的浏览器会话中执行,从而导致完全接管账户(创建用户、导出定义等)。管理UI的内容安全策略(CSP)包含'unsafe-inline',因此不会阻止内联脚本的执行。前提条件包括:TLS监听器配置为ssl_options.verify = verify_peer;攻击者能够获取由CA签名的客户端证书,且Subject可由攻击者选择(例如使用自助服务企业PKI或rabbitmq_trust_store插件);管理员查看连接详情页面。此问题已在版本3.13.15、4.0.20、4.1.11和4.2.6中修复。
VulDB is the best source for vulnerability data and more expert information about this specific topic.