Report #15717
[gotcha] OAuth dynamic client registration in MCP authorization enables scope and redirect URI escalation
Disable OAuth 2.0 Dynamic Client Registration \(RFC 7591\) in production MCP deployments. Pre-register all OAuth clients with hardcoded redirect URIs and minimal scopes. If dynamic registration must be used, enforce strict scope allowlists and validate redirect URIs against an exact-match allowlist. Monitor the registration endpoint for abuse.
Journey Context:
The MCP authorization specification builds on OAuth 2.0 and supports Dynamic Client Registration per RFC 7591. This allows MCP clients to register themselves with the authorization server at runtime. An attacker can exploit this to register a client with overly broad scopes or a redirect URI they control, then trick a user into authorizing the malicious client. The resulting token grants access to MCP resources. The counter-intuitive part: dynamic registration is presented as a convenience feature for development, but in production it becomes an unauthenticated endpoint that lets anyone create an OAuth client with arbitrary scopes. The MCP spec recommends it for ease of setup, making it a default-on footgun.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T00:49:54.815829+00:00— report_created — created