Skip to main content
Press slash or control plus K to focus the search. Use the arrow keys to navigate results and press enter to open a threat.
Reconnecting to live updates…

CVE-2026-27896: CWE-178: Improper Handling of Case Sensitivity in modelcontextprotocol go-sdk

0
High
VulnerabilityCVE-2026-27896cvecve-2026-27896cwe-178cwe-436
Published: Thu Feb 26 2026 (02/26/2026, 00:47:46 UTC)
Source: CVE Database V5
Vendor/Project: modelcontextprotocol
Product: go-sdk

Description

CVE-2026-27896 is a high-severity vulnerability in the modelcontextprotocol Go SDK versions prior to 1. 3. 1. The issue arises from the use of Go's standard encoding/json. Unmarshal, which performs case-insensitive matching of JSON keys to struct fields, violating the JSON-RPC 2. 0 specification that requires exact field name matching. This flaw allows a malicious MCP peer to send protocol messages with non-standard casing in field names that the SDK would accept silently, potentially bypassing intermediary inspection and causing inconsistencies across implementations. The vulnerability affects the confidentiality and integrity of communications by enabling protocol message manipulation without detection. The issue was fixed by replacing the standard unmarshaler with a case-sensitive decoder in version 1. 3.

AI-Powered Analysis

AILast updated: 02/26/2026, 01:10:46 UTC

Technical Analysis

The vulnerability CVE-2026-27896 affects the modelcontextprotocol Go SDK versions earlier than 1.3.1. The root cause is the reliance on Go's standard encoding/json.Unmarshal function for parsing JSON-RPC and MCP protocol messages. This function performs case-insensitive matching of JSON keys to struct field tags, meaning that a field tagged as json:"method" would also match keys like "Method" or "METHOD". However, the JSON-RPC 2.0 specification mandates exact case-sensitive matching of field names. This discrepancy allows a malicious MCP peer to craft protocol messages with non-standard casing in field names that the SDK would accept without error. Such acceptance can lead to bypassing intermediary inspection mechanisms that expect strict adherence to the specification, and can cause inconsistencies in how different implementations interpret messages. This undermines protocol integrity and could facilitate attacks such as message spoofing or manipulation. The vulnerability was addressed by replacing the standard unmarshaler with a custom case-sensitive decoder in commit 7b8d81c, released in version 1.3.1 of the SDK. The CVSS 4.0 score is 7 (high severity), reflecting network attack vector, low complexity, no privileges or user interaction required, but with high scope impact. No known exploits have been reported in the wild to date.

Potential Impact

This vulnerability can have significant impacts on organizations using the affected modelcontextprotocol Go SDK versions in their systems. By accepting JSON-RPC messages with non-standard casing, attackers can bypass protocol enforcement and intermediary inspection tools that rely on exact field name matching. This can lead to unauthorized message injection, manipulation, or spoofing, potentially compromising the integrity and confidentiality of communications between components. Systems relying on strict JSON-RPC compliance for security or operational correctness may experience inconsistent behavior or security policy bypasses. In environments where MCP protocol messages control critical operations or sensitive data exchanges, this flaw could facilitate further exploitation or lateral movement. The network-based attack vector and lack of required privileges or user interaction increase the risk of remote exploitation. Although no known exploits exist yet, the vulnerability's nature and high severity score indicate a strong potential for impactful attacks if weaponized.

Mitigation Recommendations

Organizations should immediately upgrade the modelcontextprotocol Go SDK to version 1.3.1 or later, which includes the fix replacing the standard JSON unmarshaler with a case-sensitive decoder. Until the upgrade is applied, network-level controls should be implemented to monitor and block MCP protocol messages with unexpected or non-standard JSON field casing. Protocol message validation tools or custom middleware can be deployed to enforce strict case-sensitive JSON-RPC compliance before messages reach vulnerable SDK components. Security teams should audit existing systems for usage of affected SDK versions and prioritize patching in critical environments. Additionally, reviewing and enhancing logging and anomaly detection for MCP protocol traffic can help identify attempts to exploit this vulnerability. Developers should avoid relying on default JSON unmarshaling behavior for protocol parsing where exact field matching is required, and consider adopting strict schema validation techniques.

Need more detailed analysis?Upgrade to Pro Console

Technical Details

Data Version
5.2
Assigner Short Name
GitHub_M
Date Reserved
2026-02-24T15:19:29.717Z
Cvss Version
4.0
State
PUBLISHED

Threat ID: 699f9a40b7ef31ef0b726109

Added to database: 2/26/2026, 12:56:32 AM

Last enriched: 2/26/2026, 1:10:46 AM

Last updated: 2/26/2026, 2:18:38 AM

Views: 2

Community Reviews

0 reviews

Crowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.

Sort by
Loading community insights…

Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.

Actions

PRO

Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.

Please log in to the Console to use AI analysis features.

Need more coverage?

Upgrade to Pro Console in Console -> Billing for AI refresh and higher limits.

For incident response and remediation, OffSeq services can help resolve threats faster.

Latest Threats