CVE-2026-44430
ŚrednieCVSS 4.0Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 21 - wyżej niż 21% wszystkich znanych CVE
Streszczenie
MCP Registry przed wersją 1.7.7 używa funkcji safeDialContext do weryfikacji przestrzeni nazw przez HTTP, ale bloklista nie obejmuje adresów IPv6 6to4, NAT64 ani site-local, które mogą kodować dowolne IPv4 i tunelować do usług RFC1918 lub metadanych chmury. Podatność została naprawiona w wersji 1.7.7.
Ocena ryzyka
Atakujący może obejść blokadę adresów prywatnych i uzyskać dostęp do wewnętrznych usług, w tym metadanych chmury, co może prowadzić do wycieku danych lub eskalacji uprawnień.
Rekomendacja
Zaktualizuj MCP Registry do wersji 1.7.7, która naprawia tę podatność. Zaleca się niezwłoczne wdrożenie aktualizacji.
Inne podatności w MCP Registry
Zobacz wszystkie- CVE-2026-44428Średnie
MCP Registry przed wersją 1.7.6 wiąże przepływ GitHub OIDC tylko z globalnym ciągiem audience, a nie z konkretną instancją rejestru. Token uzyskany dla jednego wdrożenia jest akceptowany przez inne wdrożenia o tym samym kodzie i audience, co pozwala na niewłaściwe przypisanie uprawnień publikacji. Podatność naprawiono w wersji 1.7.6.
- CVE-2026-44427Nieznane
MCP Registry (rejestr serwerów MCP dla klientów MCP) w wersjach od 1.1.0 do 1.7.4 zawiera podatność open redirect w TrailingSlashMiddleware w pliku internal/api/server.go. Atakujący może spreparować URL z protokołowo-relatywną ścieżką (np. //evil.com/), która po usunięciu końcowego ukośnika daje nagłówek Location o wartości //evil.com, interpretowany przez przeglądarki jako bezwzględny adres zewnętrznej domeny. Podatność naprawiono w wersji 1.7.5.
- CVE-2026-45781Niskie
MCP Registry dostarcza klientom MCP listę serwerów MCP, działając jak sklep z aplikacjami. Przed wersją 1.7.9 walidacja własności OCI pomija sprawdzenie zgodności etykiet, gdy nadrzędny rejestr OCI zwraca HTTP 429, pozwalając dowolnemu uwierzytelnionemu wydawcy przypisać swoją przestrzeń nazw io.github.<user>/* do obrazów OCI, których nie kontroluje. Funkcja ValidateOCI zwraca nil przy http.StatusTooManyRequests, a publikacja jest akceptowana bez sprawdzenia etykiety io.modelcontextprotocol.server.name.
- CVE-2026-44429Średnie
MCP Registry przed wersją 1.7.7 zawiera podatność na przechowywany XSS w publicznym interfejsie katalogu (GET /) poprzez pole server.websiteUrl w pliku server.json. Walidacja po stronie serwera nie odrzuca znaków cudzysłowu, a wartość jest wstawiana do atrybutu href bez odpowiedniego kodowania, co pozwala na wstrzyknięcie dowolnych handlerów zdarzeń on*.
Oryginalny opis (angielski, źródło NVD)
The MCP Registry provides MCP clients with a list of MCP servers, like an app store for MCP servers. Prior to 1.7.7, the Registry's HTTP-based namespace verification (POST /v0/auth/http, POST /v0.1/auth/http) uses safeDialContext (internal/api/handlers/v0/auth/http.go:67-110) to refuse dialling private/internal addresses when fetching the well-known public-key file from a publisher-supplied domain. The blocklist (isBlockedIP, lines 125-133) relies entirely on Go stdlib's IsLoopback / IsPrivate / IsLinkLocalUnicast / IsMulticast / IsUnspecified plus a manual CGNAT range. None of these cover IPv6 6to4 (2002::/16), NAT64 (64:ff9b::/96 and 64:ff9b:1::/48 per RFC 8215), or deprecated site-local (fec0::/10) — all of which encode arbitrary IPv4 in the address bits and tunnel to RFC1918 / cloud-metadata services on dual-stack / NAT64-enabled hosts. This vulnerability is fixed in 1.7.7.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

