<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://db.gcve.eu</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Tue, 29 Sep 2026 18:21:30 +0000</lastBuildDate>
    <item>
      <title>fkie_cve-2026-63127</title>
      <link>https://db.gcve.eu/vuln/fkie_cve-2026-63127</link>
      <description>&lt;p&gt;RMCP is an official Rust SDK for the Model Context Protocol. Prior to 2.0.0, the rmcp crate&amp;#39;s OAuth implementation in crates/rmcp/src/transport/auth.rs omits the RFC 9728 resource field from ResourceServerMetadata and allows discover_oauth_server_via_resource_metadata to use protected-resource metadata without confirming that the returned resource identifier exactly matches the configured MCP server. A malicious MCP server can publish metadata for a different legitimate MCP resource and its authorization server, causing a victim who connects and completes the authorization flow to obtain a legitimate access token that the client subsequently sends to the malicious server. The attacker can capture the token and impersonate the victim against the legitimate MCP resource within the token&amp;#39;s granted scopes. This issue is fixed in version 2.0.0.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;RMCP is an official Rust SDK for the Model Context Protocol. Prior to 2.0.0, the rmcp crate&amp;#39;s OAuth implementation in crates/rmcp/src/transport/auth.rs omits the RFC 9728 resource field from ResourceServerMetadata and allows discover_oauth_server_via_resource_metadata to use protected-resource metadata without confirming that the returned resource identifier exactly matches the configured MCP server. A malicious MCP server can publish metadata for a different legitimate MCP resource and its authorization server, causing a victim who connects and completes the authorization flow to obtain a legitimate access token that the client subsequently sends to the malicious server. The attacker can capture the token and impersonate the victim against the legitimate MCP resource within the token&amp;#39;s granted scopes. This issue is fixed in version 2.0.0.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://db.gcve.eu/vuln/fkie_cve-2026-63127</guid>
    </item>
    <item>
      <title>GHSA-33f5-2c5q-wgwj — RMCP: Missing Resource Field Validation in OAuth Protected Resource Metadata Discovery</title>
      <link>https://db.gcve.eu/vuln/ghsa-33f5-2c5q-wgwj</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; crates.io: rmcp&lt;/p&gt;
&lt;p&gt;### Summary
The `rmcp` library does not validate the `resource` parameter in OAuth Protected Resource metadata (RFC 9728), allowing a malicious MCP server to redirect OAuth flows to a legitimate authorization server and steal the resulting access tokens.&lt;/p&gt;
&lt;p&gt;### Details
RFC 9728 specifies two MUST requirements for resource parameter validation:
- Section 7.3: the client MUST ensure that the resource identifier URL it is using as the prefix for the metadata request exactly matches the `resource` value in the returned metadata document.
- Section 3.3: if the `resource` value returned is not identical to the URL the client used, the data MUST NOT be used.&lt;/p&gt;
&lt;p&gt;In the current implementation (`crates/rmcp/src/transport/auth.rs`), the `ResourceServerMetadata` struct (lines 390–394) does not include a resource field:
```rust
struct ResourceServerMetadata {
    authorization_server: Option&amp;lt;String&amp;gt;,
    authorization_servers: Option&amp;lt;Vec&amp;lt;String&amp;gt;&amp;gt;,
    scopes_supported: Option&amp;lt;Vec&amp;lt;String&amp;gt;&amp;gt;,
}
```
And discover_oauth_server_via_resource_metadata() (lines 1446–1465) proceeds without any resource URL validation.&lt;/p&gt;
&lt;p&gt;#### Recommended fix
1. Add the `resource` field to the struct:
    ```rust
    struct ResourceServerMetadata {
        resource: Option&amp;lt;String&amp;gt;,  // RFC 9728 REQUIRED field
        authorization_server: Option&amp;lt;String&amp;gt;,
        authorization_servers: Option&amp;lt;Vec&amp;lt;String&amp;gt;&amp;gt;,
        scopes_supported: Option&amp;lt;Vec&amp;lt;String&amp;gt;&amp;gt;,
    }
    ```
2. Add validation logic after fetching metadata:
    ```r…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; crates.io: rmcp&lt;/p&gt;
&lt;p&gt;### Summary
The `rmcp` library does not validate the `resource` parameter in OAuth Protected Resource metadata (RFC 9728), allowing a malicious MCP server to redirect OAuth flows to a legitimate authorization server and steal the resulting access tokens.&lt;/p&gt;
&lt;p&gt;### Details
RFC 9728 specifies two MUST requirements for resource parameter validation:
- Section 7.3: the client MUST ensure that the resource identifier URL it is using as the prefix for the metadata request exactly matches the `resource` value in the returned metadata document.
- Section 3.3: if the `resource` value returned is not identical to the URL the client used, the data MUST NOT be used.&lt;/p&gt;
&lt;p&gt;In the current implementation (`crates/rmcp/src/transport/auth.rs`), the `ResourceServerMetadata` struct (lines 390–394) does not include a resource field:
```rust
struct ResourceServerMetadata {
    authorization_server: Option&amp;lt;String&amp;gt;,
    authorization_servers: Option&amp;lt;Vec&amp;lt;String&amp;gt;&amp;gt;,
    scopes_supported: Option&amp;lt;Vec&amp;lt;String&amp;gt;&amp;gt;,
}
```
And discover_oauth_server_via_resource_metadata() (lines 1446–1465) proceeds without any resource URL validation.&lt;/p&gt;
&lt;p&gt;#### Recommended fix
1. Add the `resource` field to the struct:
    ```rust
    struct ResourceServerMetadata {
        resource: Option&amp;lt;String&amp;gt;,  // RFC 9728 REQUIRED field
        authorization_server: Option&amp;lt;String&amp;gt;,
        authorization_servers: Option&amp;lt;Vec&amp;lt;String&amp;gt;&amp;gt;,
        scopes_supported: Option&amp;lt;Vec&amp;lt;String&amp;gt;&amp;gt;,
    }
    ```
2. Add validation logic after fetching metadata:
    ```r…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://db.gcve.eu/vuln/ghsa-33f5-2c5q-wgwj</guid>
    </item>
    <item>
      <title>openSUSE-SU-2026:11849-1 — openai-codex-0.155.1-1.1 on GA media</title>
      <link>https://db.gcve.eu/vuln/opensuse-su-2026:11849-1</link>
      <description>&lt;p&gt;openai-codex-0.155.1-1.1 on GA media&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;openai-codex-0.155.1-1.1 on GA media&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://db.gcve.eu/vuln/opensuse-su-2026:11849-1</guid>
    </item>
  </channel>
</rss>
