Description
RMCP is an official Rust SDK for the Model Context Protocol. Prior to 2.1.0, the rmcp crate's StreamableHttpClientTransport in crates/rmcp/src/transport/common/reqwest/streamable_http_client.rs builds its default_http_client with reqwest's automatic redirect policy and applies caller-supplied values from StreamableHttpClientTransportConfig.custom_headers without marking them as sensitive. When a malicious or compromised MCP endpoint returns a cross-origin 307 or 308 redirect, reqwest follows the redirect and apply_custom_headers causes custom API keys or authentication tokens to be replayed to the new origin, where an attacker can capture and reuse them. The separate auth_header path is not affected because it uses the standard Authorization header, which reqwest strips on cross-origin redirects. This issue is fixed in version 2.1.0.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| modelcontextprotocol | rust-sdk | < 2.1.0 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Tumbleweed | openai-codex | 0.155.1-1.1 | openSUSE-SU-2026:11849-1 |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| crates.io | rmcp | < 2.1.0 | 2.1.0 | GHSA-9g45-5xwm-f3wc |
Advisories 1
- openSUSE-SU-2026:11849-1 openai-codex-0.155.1-1.1 on GA media SUSE / openSUSE Security Updates · Sep 23, 2026
References
- https://github.com/modelcontextprotocol/rust-sdk/security/advisories/GHSA-9g45-5xwm-f3wc
- https://github.com/modelcontextprotocol/rust-sdk/pull/936
- https://github.com/modelcontextprotocol/rust-sdk/commit/496902b9cf2c8a947454718da31829ae776b969b
- https://github.com/modelcontextprotocol/rust-sdk/releases/tag/rmcp-v2.1.0