DEV Community

CVE Reports
CVE Reports

Posted on • Originally published at cvereports.com

CVE-2026-67431: CVE-2026-67431: Session Poisoning via Improper Access Control in Model Context Protocol Ruby SDK

CVE-2026-67431: Session Poisoning via Improper Access Control in Model Context Protocol Ruby SDK

Vulnerability ID: CVE-2026-67431
CVSS Score: 8.3
Published: 2026-07-30

An Improper Access Control vulnerability exists in the Model Context Protocol (MCP) Ruby SDK prior to version 0.23.0. The stateful transport implementation failed to bind established sessions to their original owners or connection contexts, enabling unauthorized actors with access to active session IDs to execute arbitrary tools or alter session state.

TL;DR

A lack of session binding in the MCP Ruby SDK allows remote attackers possessing a valid session ID to execute arbitrary tool calls and manipulate session states.


⚠️ Exploit Status: POC

Technical Details

  • CWE ID: CWE-284
  • Attack Vector: Network (AV:N)
  • CVSS v4.0 Score: 8.3
  • EPSS Score: 0.00276
  • Exploit Status: POC (in official repository tests)
  • KEV Status: Not Listed
  • Impact: High Integrity, Low Availability

Affected Systems

  • mcp (RubyGems)
  • Model Context Protocol Ruby SDK
  • mcp: < 0.23.0 (Fixed in: 0.23.0)

Code Analysis

Commit: 3546660

Implement session validation and HTTP origin checks inside StreamableHTTPTransport

Mitigation Strategies

  • Upgrade the mcp gem to version 0.23.0 or higher.
  • Implement the session_request_validator hook to validate incoming requests against active user authentication states.
  • Limit session idle timeouts and maximum concurrent sessions to reduce exposure.

Remediation Steps:

  1. Identify all deployments using the mcp Ruby gem.
  2. Update the Gemfile to require version 0.23.0 or higher: gem 'mcp', '>= 0.23.0'.
  3. Execute bundle update mcp to install the patched version.
  4. Locate instantiate configurations of MCP::Server::Transports::StreamableHTTPTransport and define a custom session_request_validator callback.
  5. Ensure the callback validates that the user environment (cookies, tokens) matches the active session ownership context.

References


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

Top comments (0)