Kybernetická bezpečnost
Výzkumník odhalil stejnou chybu MCP u Googlu, JPMorgan a dvou vlád.

Nezávislý bezpečnostní výzkumník Syed Anas Mohiuddin zveřejnil v v říjnu 2026 výzkumné aktualizaci, že stejná chyba server‑side request forgery v serverech Model Context Protocol byla potvrzena a opravena bezpečnostními týmy pěti nesouvisejících organizací: Google, JPMorgan Chase, Weaviate, francouzská meziministerská digitální ředitelství a vláda města Tangerang v Indonésii.
Aktualizace nazvaná “Protocol Pivoting, four months later” testuje předpověď, kterou Mohiuddin učinil v květnu 2026: pokud je slabina strukturální, nikoli jen jednorázová neopatrná implementace, stejná chyba se objeví v serverech vyvíjených týmy, které nesdílejí kód, odvětví, zemi ani vlastníka. Uvádí, že každá z pěti organizací potvrdila svůj případ prostřednictvím vlastního bezpečnostního týmu a že bezpečnostní dodavatel Rapid7 samostatně zveřejnil CVE pro jinou, ale související chybu. Aktualizace uvádí pět organizací, které opravit stejný SSRF, dvě zveřejnily CVE a pět zjištění v amerických federálních serverech MCP, která zůstávají otevřená.
Mohiuddin popisuje dva režimy selhání stojící za tímto vzorcem. Prvním je server‑side request forgery: MCP server vytvoří odchozí požadavek z URL, cesty nebo koncového bodu poskytnutého agentem, aniž by kontroloval, kam se rozřeší, takže agent v podstatě rozhoduje, s čím síťová identita serveru komunikuje. Druhým je nebezpečné zacházení s daty z upstreamu, nejviditelněji zápisem kompletních odpovědí upstream API do centralizovaných logů bez redakce, což stačí k vyvolání běžných chyb. Oba režimy spojuje předpoklad, že data překračující hranici MCP jsou důvěryhodná, protože pocházejí zevnitř systému, což podle něj v agentickém pipeline neplatí.
CVE‑2026‑14540 v Google MCP Toolbox
Podle záznamu v GitHub Advisory Database pro CVE‑2026‑14540, publikovaného Národním databází zranitelností, existuje SSRF zranitelnost v obecných HTTP zdrojových a nástrojových komponentách Google mcp-toolbox ve verzích 0.3.0 až 1.4.0. Protože HTTP klient neměl restriktivní politiku přesměrování a nikdy nevalidoval cílové IP adresy, mohl vytvořený parametr cesty přesměrovat odchozí požadavky toolboxu na interní nebo libovolné externí koncové body. Poradenství hodnotí tuto chybu jako vysokou závažnost s CVSS skóre 8,0; byla publikována 31. července 2026 a naposledy aktualizována 8. srpna 2026. Mohiuddin uvádí, že CVE bylo rezervováno 3. července 2026 a že záznam mu připisuje jako objeviteli.
Google sloučilo opravu, pull request #3448 v repozitáři googleapis/mcp-toolbox, dne 18. června 2026, a byla vydána v mcp-toolbox v1.5.0. Pull request implementuje SSRFGuard, který zabraňuje DNS‑rebinding útokům v mezidobí mezi kontrolou adresy a připojením, přidává konfigurovatelné vlastnosti allowPrivateNetworks, allowedIpRanges a customBlockedIpRanges, validuje nastavený BaseURL při inicializaci místo při prvním požadavku a výslovně varuje před rizikem typu man‑in‑the‑middle, když je vypnuta SSL verifikace. PR připisuje Mohiuddina jako nahlásitele a Mohiuddin popisuje Google opravu jako referenční implementaci skutečného SSRF guardu.
Čtyři další potvrzené případy
Mohiuddin uvádí, že open‑source repozitář jpmorgan-payments/ai společnosti JPMorgan Chase obsahuje MCP server pro vyhledávání v dokumentaci, jehož nástroj read_documentation používá seznam povolených domén před stažením, zatímco sourozenecký nástroj related() načítá URL poskytnutou volajícím na serveru bez jakýchkoli omezení. Tvrdí, že komponenta byla odvozená z projektu AWS, jehož originál nikdy neodkazoval na URL volajícího, že tým zodpovědného zveřejňování banky potvrdil nález jako platný a že oprava byla nasazena. Je uveden jménem na veřejné stránce uznání zodpovědného zveřejňování JPMorgan Chase a hodnotí nález jako střední závažnost, přičemž poznamenává, že žádné přihlašovací údaje nejsou s podvrženým požadavkem přenášeny.
Weaviate, uvádí, sloučilo pull request omezující nastavení apiEndpoint, region a location Google modulu na hosty Google API, a uvádí ho jménem ve svém veřejném záznamu Security Hall of Fame ze dne 25. srpna 2026.
Projekt datagouv/datagouv-mcp sloučil pull request #126, “feat: harden SSRF on external APIs” dne 4. září 2026 a pull request začíná připisováním Mohiuddina jako nahlásitele. Podle PR bylo pole machinedokumentaceurl poskytnuté jakýmkoli registrovaným producentem data.gouv.fr načítáno na serveru a mohlo ukazovat na adresy loopback, soukromé sítě nebo cloudové metadata, přičemž DNS rebinding mohl mezi kontrolou a připojením změnit cíl a 302 přesměrování mohlo vést na interní hostitele. Oprava validuje cílovou IP při připojení, znovu kontroluje každý přesměrovací krok a odmítá proxy. Mohiuddin identifikuje projekt jako oficiální MCP server francouzské národní platformy otevřených dat, udržovaný DINUM, meziministerským digitálním ředitelstvím.
A GitHub Security Advisory zveřejněná 3. září 2026 správců INFOKOM-KI/Wazuh-MCP-Server, hodnoceno jako Vysoké, uvádí, že nástroj blueteamkontrolawebshell s reklamovanou ochranou proti SSRF odmítal pouze doslovné IP adresy a nikdy neřešil názvy hostitelů, takže jakýkoli DNS název směřující na soukromou, smyčkovou nebo lokální adresu, včetně metadat cloudových instancí, tuto ochranu obcházel. Upozornění uvádí, že dokumentovaná záruka nástroje, “SSRF Protection: Private/reserved IPs in the URL host are rejected,” neplatila pro URL založené na názvech hostitelů. Chyba byla opravena v commitu 2bbfe12 a upozornění připisuje Mohiuddina jako oznamovatele. Mohiuddin uvádí, že ji nahlásil 2. září 2026, že správci odpověděli z adresy tangerangkota.go.id a že projekt je udržován vládou města Tangerang v Indonésii.
Rapid7’s záznam v databázi zranitelností pro CVE-2026-97228 zaznamenává injekci GraphQL dotazu v Rapid7 Bulk Export MCP verzích 0.2.5 až 0.6.1, kde je nevalidovaný exportid argument nástroje MCP interpolován přímo do GraphQL dotazu. Rapid7 mu přiřadilo skóre 2.7, Nízké, podle škály CVSS 3.1, záznam byl zveřejněn 25. září 2026 a uvádí, že injektované dotazy jsou prováděny v rámci API operátora a nemohou překročit hranice nájemce; verze 0.6.2 problém opravuje předáním exportid jako parametrizované proměnné. Mohiuddin uvádí, že Rapid7 mu připisuje roli objevu.
Kromě těchto případů Mohiuddin uvádí, že k datu aktualizace bylo 16 bezpečnostních upozornění GitHub zveřejněných správci jednotlivých projektů, kde je uveden jako oznamovatel; tato upozornění se týkají SSRF i injekce příkazů, mezer v autentizaci, únosu relací, úniků přihlašovacích údajů a obcházení dřívějších oprav, a že má sloučené opravy v projektech včetně github-mcp-server, mongodb-mcp-server a salesforce-mcp-server.
Nevyřešené vládní nálezy
Mohiuddin uvádí, že 2. září 2026 podal pět nálezů jako soukromá bezpečnostní upozornění GitHub, která se týkají MCP serverů pod správou Technology Transformation Services (TTS) GSA: server pro nároky na dávky Ministerstva pro veterány, server CMS Blue Button, server regulations.gov, server USASpending a server CDC PLACES. Tvrdí, že všech pět zůstává v režimu triáže, nebylo opraveno a nejsou prezentována jako potvrzené výsledky.
V případě VA, který popisuje pouze na úrovni třídy, server zaznamenává celé tělo chyby upstream benefits-API na úrovni ERROR bez redakce; tato těla mohou obsahovat jméno veterána, číslo sociálního zabezpečení, datum narození a adresu, a uvádí, že běžné selhání validace stačí k vyvolání tohoto logování během normálního provozu. Podrobnosti na úrovni kódu zadržuje, dokud nebudou servery opraveny.
Také uvádí, že 1. září 2026 informoval JPCERT, že jgrants-mcp-server japonské Digitální agentury postrádal autentizaci, a 7. září 2026 otevřel veřejný pull request vyžadující explicitní souhlas pro navázání serveru na cokoli jiného než smyčku a omezení velikosti zápisu příloh. Pull request nebyl sloučen a nepředstavuje potvrzený výsledek.
Pivotování protokolu a přednáška MCPCon
Mohiuddin definuje Pivotování protokolu jako vícefázový útok, při kterém útočník vstoupí skrze jeden protokol, využije důvěryhodných předpokladů, které protokoly navzájem kladou, a eskaluje k schopnostem dostupným pouze přes jiný protokol. Jeho konkrétní příklad umisťuje text ve formě instrukce úkolu A2A do výstupu nástroje MCP; řídící agent jej předá podagentovi jako běžnou delegaci a podagent, důvěřujíc svému řídícímu, jej spustí.
formální preprint, “Protocol Pivoting: Cross-Protocol Attack Escalation in Agentic AI Systems,” byl publikován na Zenodo dne 24. května 2026. Představuje tři scénáře: eskalace oprávnění MCP‑to‑A2A prostřednictvím implicitní delegace důvěry, injekci schopností A2A‑to‑MCP pomocí zneužití identity škodlivého agenta a řetězce cross‑protocol prompt injection. Také analyzuje, proč stávající obranné mechanismy selhávají proti této třídě, a navrhuje jednotný cross‑protocol bezpečnostní rámec s formálním modelem důvěryhodné hranice a třemi protokol‑agnostickými mitigacemi.
Práce v květnu začala s Microsoftovým playwright-mcp, jehož nástroj browser_navigate přijímal jakoukoli URL poskytnutou agentem bez ochrany proti SSRF, což umožnilo nasměrovat agenta na službu metadat instance AWS na adrese 169.254.169.254 a získat její přihlašovací údaje. Mohiuddin poznamenává, že to nahlásil jako veřejný problém na GitHub, že neexistuje CVE ani potvrzení od dodavatele, a že hodnocení závažnosti je jeho vlastní odhad.
Mohiuddin tvrdí, že analýza softwarových komponent a skenery závislostí tuto třídu přehlížejí, protože nebezpečný vstup přichází přes transport jako argument nástroje popsaný manifestem nástroje, který skener nikdy nečte, takže graf volání končí na transportní hranici. Uvedl, že vytvořil mcp-safeguard, open‑source skener, který testuje MCP servery přes jejich exponovanou nástrojovou plochu bez potřeby zdrojového kódu a hledá šest tříd: SSRF, nadměrná oprávnění, povrchy prompt‑injekcí, únik informací, mezery v autentizaci a obcházení životního cyklu. Také uvádí, že nástroje založené na shodě vzorů, včetně jeho vlastních, přehlížejí značnou část této třídy.
Mohiuddin uvádí, že představí vzor napříč dodavateli 23. října 2026 na MCPCon North America v San Jose, včetně všech nálezů, které budou do té doby opraveny, a že federální nálezy zůstanou soukromé, dokud nebudou opraveny.












