CVE-2026-27896
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 17 - wyżej niż 17% wszystkich znanych CVE
Streszczenie
W Go MCP SDK przed wersją 1.3.1 używano standardowego kodera/dekodera JSON z biblioteki Go, który dopasowuje klucze JSON do pól struktury bez uwzględniania wielkości liter. To narusza specyfikację JSON-RPC 2.0, która wymaga dokładnych nazw pól. Złośliwy peer MCP mógł wysyłać wiadomości protokołu z niestandardową wielkością liter, które SDK akceptowało, co mogło prowadzić do ominięcia inspekcji pośredniej i niespójności między implementacjami.
Ocena ryzyka
Organizacja narażona jest na ryzyko, że złośliwy peer MCP może wysyłać wiadomości z niestandardową wielkością liter, które SDK akceptuje, co może ominąć inspekcję pośrednią i spowodować niespójności między implementacjami, potencjalnie prowadząc do nieautoryzowanych działań lub naruszenia integralności danych.
Rekomendacja
Należy niezwłocznie zaktualizować Go MCP SDK do wersji 1.3.1, która zawiera poprawkę zastępującą standardowe dekodowanie JSON dekoderem uwzględniającym wielkość liter.
Inne podatności w Go MCP SDK
Oryginalny opis (angielski, źródło NVD)
The Go MCP SDK used Go's standard encoding/json.Unmarshal for JSON-RPC and MCP protocol message parsing in versions prior to 1.3.1. Go's standard library performs case-insensitive matching of JSON keys to struct field tags — a field tagged json:"method" would also match "Method", "METHOD", etc. This violated the JSON-RPC 2.0 specification, which defines exact field names. A malicious MCP peer may have been able to send protocol messages with non-standard field casing that the SDK would silently accept. This had the potential for bypassing intermediary inspection and coss-implementation inconsistency. Go's standard JSON unmarshaling was replaced with a case-sensitive decoder in commit 7b8d81c. Users are advised to update to v1.3.1 to resolve this issue.

