DEV Community

CVE Reports
CVE Reports

Posted on Originally published at cvereports.com

CVE-2026-63127: CVE-2026-63127: OAuth Resource Spoofing and Token Leakage in rmcp SDK

CVE-2026-63127: OAuth Resource Spoofing and Token Leakage in rmcp SDK

Vulnerability ID: CVE-2026-63127
CVSS Score: 8.2
Published: 2026-09-16

An OAuth resource spoofing vulnerability in the rmcp crate prior to 2.0.0 allows a malicious Model Context Protocol (MCP) server to spoof protected resource metadata. By presenting metadata pointing to a legitimate resource and authorization server, the attacker can trick the client into completing the authentication flow and subsequently sending the authorized token back to the malicious server.

TL;DR

A missing validation of the RFC 9728 'resource' field in the rmcp crate allows rogue MCP servers to perform OAuth resource spoofing and capture legitimate access tokens.


⚠️ Exploit Status: POC

Technical Details

  • CWE ID: CWE-345
  • Attack Vector: Network (AV:N)
  • CVSS v3.1 Score: 8.2 (High)
  • EPSS Score: N/A
  • Impact: Confidentiality High (C:H), Integrity Low (I:L), Scope Changed (S:C)
  • Exploit Status: Proof-of-Concept (PoC) available in official test suite
  • CISA KEV Status: Not Listed

Affected Systems

  • Model Context Protocol (MCP) clients using the rmcp crate with OAuth features enabled
  • rmcp: < 2.0.0 (Fixed in: 2.0.0)

Code Analysis

Commit: c1a8b29

Implement RFC 9728 resource field validation in ResourceServerMetadata and check resource matches base URL

Exploit Details

  • GitHub Test Suite: A comprehensive set of regression tests asserting correct rejection of mismatched resources and missing resource fields in RFC 9728 discovery.

Mitigation Strategies

  • Upgrade the rmcp crate to version 2.0.0 or higher.
  • Disable dynamic OAuth metadata discovery if interacting with untrusted or unverified third-party MCP servers.
  • Enforce egress network controls to restrict outbound metadata discovery requests to trusted hosts only.

Remediation Steps:

  1. Open the Cargo.toml of your Rust project containing the rmcp dependency.
  2. Update the dependency entry to: rmcp = { version = ">= 2.0.0", features = ["auth"] }.
  3. Run cargo update -p rmcp to update the Cargo.lock file to the patched version.
  4. Verify the updated configuration by rebuilding your client and executing automated verification tests.

References


Read the full report for CVE-2026-63127 on our website for more details including interactive diagrams and full exploit analysis.

Top comments (0)