/

CVE-2026-67410

Severity:

HIGH RISK

(7.1)

Information Exposure (CWE-200) in RabbitMQ OAuth2 UI

CVE-2026-67410

Analyzed

Vulnerability type

Category:

Information Exposure

CWE:

CWE-200

Impact:

Exposure of OAuth2 Client Credentials

Severity:

HIGH RISK

(7.1)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

RabbitMQ Management UI can expose an OAuth2 client secret through an unauthenticated JavaScript endpoint when OAuth2 authentication is enabled and the identity provider configuration uses a client secret. Anyone who can reach the management UI port may retrieve the secret, which could enable client impersonation or abuse of OAuth2 authorization flows.

RabbitMQ Management UI can expose an OAuth2 client secret through an unauthenticated JavaScript endpoint when OAuth2 authentication is enabled and the identity provider configuration uses a client secret. Anyone who can reach the management UI port may retrieve the secret, which could enable client impersonation or abuse of OAuth2 authorization flows.

Affected context

The issue occurs in RabbitMQ deployments where:

  • The Management UI is enabled and reachable
  • OAuth2 authentication is configured for the UI
  • The selected identity-provider flow uses a client secret
  • The OAuth2 bootstrap JavaScript endpoint is accessible without authentication

In this configuration, the secret may be embedded in JavaScript served by /js/oidc-oauth/bootstrap.js.

The issue occurs in RabbitMQ deployments where:

  • The Management UI is enabled and reachable
  • OAuth2 authentication is configured for the UI
  • The selected identity-provider flow uses a client secret
  • The OAuth2 bootstrap JavaScript endpoint is accessible without authentication

In this configuration, the secret may be embedded in JavaScript served by /js/oidc-oauth/bootstrap.js.

Exploit preconditions

  • Attack surface: RabbitMQ Management UI HTTP endpoint
  • Required access: Network reachability to the Management UI port; authentication to RabbitMQ is not required for the affected endpoint
  • Trigger point: Requesting the unauthenticated OAuth2 bootstrap JavaScript resource
  • Why exploitation is possible: Sensitive OAuth2 configuration data is included in a response intended for unauthenticated clients
  • Attack surface: RabbitMQ Management UI HTTP endpoint
  • Required access: Network reachability to the Management UI port; authentication to RabbitMQ is not required for the affected endpoint
  • Trigger point: Requesting the unauthenticated OAuth2 bootstrap JavaScript resource
  • Why exploitation is possible: Sensitive OAuth2 configuration data is included in a response intended for unauthenticated clients

Why this happens

The vulnerability results from exposing a confidential OAuth2 client configuration value through an unauthenticated web response. The Management UI route serves bootstrap JavaScript containing the configured client secret instead of limiting the response to non-sensitive public configuration.

This maps to CWE-200: Exposure of Sensitive Information to an Unauthorized Actor, because a credential is disclosed to users who have not been authenticated or authorized to receive it.

The vulnerability results from exposing a confidential OAuth2 client configuration value through an unauthenticated web response. The Management UI route serves bootstrap JavaScript containing the configured client secret instead of limiting the response to non-sensitive public configuration.

This maps to CWE-200: Exposure of Sensitive Information to an Unauthorized Actor, because a credential is disclosed to users who have not been authenticated or authorized to receive it.

Potential impact

  • An attacker may obtain the OAuth2 client secret
  • The secret could enable client impersonation against the identity provider
  • Attackers could potentially abuse authorization-code flows or related tokens
  • Unauthorized requests may be made using the compromised client identity
  • Downstream RabbitMQ or identity-provider access could be affected, depending on permissions
  • An attacker may obtain the OAuth2 client secret
  • The secret could enable client impersonation against the identity provider
  • Attackers could potentially abuse authorization-code flows or related tokens
  • Unauthorized requests may be made using the compromised client identity
  • Downstream RabbitMQ or identity-provider access could be affected, depending on permissions

General mitigation guidance

Mitigation focuses on ensuring that client secrets never cross an unauthenticated browser boundary.

Common defensive patterns include:

  • Keeping OAuth2 client secrets exclusively in server-side or protected secret stores
  • Serving only public OAuth2 client metadata to browser-based components
  • Reviewing unauthenticated routes for credentials, tokens, and sensitive configuration values
  • Applying authentication and authorization controls to configuration-bearing endpoints
  • Using least-privilege scopes and permissions for OAuth2 clients
  • Rotating exposed client credentials and reviewing identity-provider and broker logs when disclosure is suspected

Mitigation focuses on ensuring that client secrets never cross an unauthenticated browser boundary.

Common defensive patterns include:

  • Keeping OAuth2 client secrets exclusively in server-side or protected secret stores
  • Serving only public OAuth2 client metadata to browser-based components
  • Reviewing unauthenticated routes for credentials, tokens, and sensitive configuration values
  • Applying authentication and authorization controls to configuration-bearing endpoints
  • Using least-privilege scopes and permissions for OAuth2 clients
  • Rotating exposed client credentials and reviewing identity-provider and broker logs when disclosure is suspected

How teams detect issues like this

Organizations can detect this class of issue through:

  • Dynamic testing of unauthenticated Management UI routes for secret-like values
  • Static analysis and code review checks for credentials interpolated into JavaScript responses
  • Route inventory reviews that compare authentication requirements with response sensitivity
  • Secret-scanning policies applied to generated web assets and HTTP fixtures
  • Monitoring for unusual OAuth2 authorization activity or client use from unexpected sources

Automated security review tools may help identify hard-coded or response-bound credential exposure, but findings should be validated against deployment configuration.

Organizations can detect this class of issue through:

  • Dynamic testing of unauthenticated Management UI routes for secret-like values
  • Static analysis and code review checks for credentials interpolated into JavaScript responses
  • Route inventory reviews that compare authentication requirements with response sensitivity
  • Secret-scanning policies applied to generated web assets and HTTP fixtures
  • Monitoring for unusual OAuth2 authorization activity or client use from unexpected sources

Automated security review tools may help identify hard-coded or response-bound credential exposure, but findings should be validated against deployment configuration.

Sources

SourceLink
github.comgithub.com/rabbitmq/rabbitmq-server/commit/60a85d3605ebf94fd234497242812547d441d457
github.comgithub.com/rabbitmq/rabbitmq-server/commit/869f800998334bb363f2ad046f58de9caedc409e
github.comgithub.com/rabbitmq/rabbitmq-server/releases/tag/v4.2.9
github.comgithub.com/rabbitmq/rabbitmq-server/releases/tag/v4.3.3
github.comgithub.com/rabbitmq/rabbitmq-server/security/advisories/GHSA-f9f2-q3jf-wfj3

Frequently asked

questions

It may be exploitable remotely when the RabbitMQ Management UI port is network-reachable. The affected endpoint does not require prior RabbitMQ authentication, although network controls may limit exposure.

OAuth2 authentication must be enabled for the Management UI, and the configured identity-provider flow must use an OAuth2 client secret.

Do not include client secrets in browser-delivered JavaScript or other unauthenticated responses. Keep secrets server-side, restrict sensitive routes, and rotate credentials that may have been exposed.

Classify configuration values by sensitivity, enforce route-level authorization, scan responses and generated assets for secrets, and apply least-privilege OAuth2 client permissions.

It may be exploitable remotely when the RabbitMQ Management UI port is network-reachable. The affected endpoint does not require prior RabbitMQ authentication, although network controls may limit exposure.

OAuth2 authentication must be enabled for the Management UI, and the configured identity-provider flow must use an OAuth2 client secret.

Do not include client secrets in browser-delivered JavaScript or other unauthenticated responses. Keep secrets server-side, restrict sensitive routes, and rotate credentials that may have been exposed.

Classify configuration values by sensitivity, enforce route-level authorization, scan responses and generated assets for secrets, and apply least-privilege OAuth2 client permissions.

Find out what's already
exploitable in your codebase.