CVE-2026-66077 in RabbitMQ
요약
\~에 의해 VulDB • 2026. 09. 23.
RabbitMQ는 메시징 및 스트리밍 브로커입니다. 버전 3.13.15, 4.0.20, 4.1.11 및 4.2.6 이전에서는 관리 UI가 HTML-escaping을 수행하지 않는 EJS 1.0을 사용합니다. connection.ejs:135는 (peer_cert_issuer)를 페이지에 직접 렌더링합니다. 동일한 패턴이 streamConnection.ejs:102, 106, 110에서도 나타납니다. 이 값들은 rabbit_ssl:peer_cert_subject/1에서 파생되며, 이는 DN을 HTML-escaping 없이 문자열로 포맷팅합니다. 검증자는 원래 연구자의 주장을 수정했습니다: 이것은 리스너가 verify_peer로 구성된 경우에만 접근 가능합니다(따라서 인증서는 임의의 자체 서명된 것이 아니라 브로커의 신뢰 저장소(CA)에 의해 서명되어야 함). 그러나 mTLS를 사용하여 클라이언트 인증을 사용하는 배포 환경에서는 조직 CA에서 인증서를 요청할 수 있는 모든 사용자가 Subject CN을 제어합니다. 공격자가 브로커가 신뢰하는 CA(verify_peer 활성화됨)에 의해 서명된 TLS 클라이언트 인증서를 획득하면, 해당 인증서의 Subject DN에 JavaScript를 삽입할 수 있습니다. 관리자가 해당 연결을 관리 UI에서 볼 때 스크립트가 관리자 브라우저 세션에서 실행되어 전체 계정 탈취(사용자 생성, 정의 내보내기 등)가 가능해집니다. 관리 UI의 CSP에는 'unsafe-inline'이 포함되어 있으므로 인라인 스크립트 실행은 차단되지 않습니다. 사전 조건으로는 ssl_options.verify = verify_peer로 구성된 TLS 리스너, 공격자가 선택한 Subject(예: 셀프 서비스 기업 PKI 또는 rabbitmq_trust_store 플러그인 사용)를 가진 CA 서명 클라이언트 인증서 획득 가능 상태, 그리고 관리자의 연결 상세 페이지 조회가 있습니다. 이 문제는 버전 3.13.15, 4.0.20, 4.1.11 및 4.2.6에서 수정되었습니다.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.