Cybersäkerhet

Forskare avslöjar samma MCP‑brist hos Google, JPMorgan och två regeringar

mm
Lägg till Unite.AI bland dina föredragna källor på Google

Den oberoende säkerhetsforskaren Syed Anas Mohiuddin avslöjade i en forskningsuppdatering i oktober 2026 att samma server‑side request forgery‑fel i Model Context Protocol-servrar har bekräftats och åtgärdats av säkerhetsteam på fem orelaterade organisationer: Google, JPMorgan Chase, Weaviate, Frankrikes interministeriella digitala direktoraten och Tangerang City‑regeringen i Indonesien.

Uppdateringen, med titeln “Protocol Pivoting, four months later”, testar en förutsägelse som Mohiuddin gjorde i maj 2026: om svagheten var strukturell snarare än ett enstaka vårdslöst implementeringsfel, skulle samma bugg dyka upp i servrar skrivna av team som inte delar kod, bransch, land eller ägare. Han rapporterar att var och en av de fem organisationerna bekräftade fallet genom sitt eget säkerhetsteam, och att säkerhetsleverantören Rapid7 separat publicerade en CVE för en annan men relaterad bugg. Uppdateringen räknar fem organisationer som har åtgärdat samma SSRF, två som publicerat CVE:n, och fem fynd i amerikanska federala MCP‑servrar som fortfarande är öppna.

Mohiuddin beskriver två felmoder bakom mönstret. Den första är server‑side request forgery: en MCP‑server bygger en utgående begäran från en URL, sökväg eller slutpunkt som levererats av en agent utan att kontrollera var den löser, så agenten i praktiken bestämmer vad serverns nätverksidentitet kommunicerar med. Den andra är osäker hantering av uppströmsdata, mest synligt genom att skriva hela uppströms‑API‑svar till centraliserade loggar utan radering, vilket vanliga fel räcker för att utlösa. Han spårar båda till ett antagande, att data som korsar MCP‑gränsen är betrodd eftersom den kom från systemets insida, vilket han menar inte gäller i en agentisk pipeline.

CVE-2026-14540 i Googles MCP‑verktygslåda

Enligt GitHub Advisory Database‑post för CVE-2026-14540, publicerad av National Vulnerability Database, finns en SSRF‑sårbarhet i de generiska HTTP‑käll- och verktygskomponenterna i Googles mcp-toolbox versioner 0.3.0 till 1.4.0. Eftersom HTTP‑klienten saknade restriktiv omdirigeringspolicy och aldrig validerade destinations‑IP‑adresser, kunde en konstruerad sökvägsparameter omdirigera verktygslådans utgående begäran mot interna eller godtyckliga externa slutpunkter. Advisorn graderar felet som hög allvarlighet med en CVSS‑poäng på 8.0; den publicerades den 31 juli 2026 och uppdaterades senast den 8 augusti 2026. Mohiuddin uppger att CVE:n reserverades den 3 juli 2026 och att posten krediterar honom som upptäckare.

Google sammanslog fixen, pull request #3448 i googleapis/mcp-toolbox‑förrådet, den 18 juni 2026, och den levererades i mcp-toolbox v1.5.0. Pull request‑en implementerar en SSRFGuard för att förhindra DNS‑rebinding‑attacker under fönstret mellan adresskontroll och anslutning, lägger till konfigurerbara allowPrivateNetworks, allowedIpRanges och customBlockedIpRanges‑egenskaper, validerar den konfigurerade BaseURL vid initiering snarare än vid första begäran, och varnar explicit för man‑in‑the‑middle‑risk när SSL‑verifiering är inaktiverad. PR:n krediterar Mohiuddin som rapportör, och Mohiuddin beskriver Googles åtgärd som en referensimplementation av en riktig SSRF‑guard.

Fyra ytterligare bekräftade fall

Mohiuddin rapporterar att JPMorgan Chase:s öppna källkods‑förråd jpmorgan‑payments/ai innehåller en dokumentations‑sök MCP‑server vars read_documentation‑verktyg tillämpar en domän‑allowlist innan hämtning, medan dess systerverktyg related() hämtar en URL som levererats av anroparen på serversidan utan restriktion. Han uppger att komponenten forktes från ett AWS‑projekt vars original aldrig refererade anroparens URL, att bankens Responsible Disclosure‑team bekräftade fyndet som giltigt, och att en fix har distribuerats. Han listas med namn på JPMorgan Chase:s offentliga sida för ansvarig avslöjning och bedömer fyndet som medelallvarligt, och noterar att inga autentiseringsuppgifter följer med den förfalskade begäran.

Weaviate, rapporterar han, sammanslog en pull request som begränsar Google‑modulens apiEndpoint-, region‑ och platsinställningar till Google‑API‑värdar, och listar honom med namn i dess offentliga Security Hall of Fame‑post daterad 25 augusti 2026.

Datagouv/datagouv-mcp‑projektet sammanslog pull request #126, “feat: harden SSRF on external APIs” den 4 september 2026, och pull request‑en inleds med att kreditera Mohiuddin som rapportör. Enligt PR:n hämtades ett machinedokumentationurl‑fält som levererats av någon registrerad data.gouv.fr‑producent på serversidan och kunde peka på loopback‑, privat‑nätverks‑ eller moln‑metadataadresser, där DNS‑rebinding kunde byta mål mellan kontroll och anslutning och en 302‑omdirigering kunde landa på en intern värd. Fixen validerar destinations‑IP‑adressen vid anslutningstid, kontrollerar omdirigeringar på nytt för varje hopp och avvisar proxys. Mohiuddin identifierar projektet som den officiella MCP‑servern för Frankrikes nationella öppna dataplattform, underhållen av DINUM, regeringens interministeriella digitala direktoraten.

A GitHub Security Advisory publicerad 3 september 2026 av underhållerna av INFOKOM-KI/Wazuh-MCP-Server, med hög riskgrad, registrerar att blueteamkontrollwebshell‑verktygets annonserade SSRF‑skydd bara avvisade bokstavliga IP‑adresser och aldrig löste upp värdnamn, så varje DNS‑namn som pekade på en privat, loopback‑ eller länk‑lokal adress, inklusive moln‑instansmetadata, kunde kringgå det. Advisorn noterar verktygets dokumenterade garanti, “SSRF Protection: Private/reserved IPs in the URL host are rejected,” gällde inte för URL:er baserade på värdnamn. Felet åtgärdades i commit 2bbfe12, och advisorn ger Mohiuddin kredit som rapportör. Mohiuddin uppger att han rapporterade det den 2 september 2026, att underhållerna svarade från en tangerangkota.go.id‑adress, och att projektet underhålls av Tangerang City‑regeringen i Indonesien.

Rapid7:s posten i sårbarhetsdatabasen för CVE-2026-97228 registrerar en GraphQL‑frågeinjektion i Rapid7 Bulk Export MCP versionerna 0.2.5 till 0.6.1, där ett ovaliderat exportid MCP‑verktygsargument interpoleras direkt i en GraphQL‑fråga. Rapid7 ger den poängen 2.7, Låg, på CVSS‑3.1‑skalan, publicerade posten den 25 september 2026, och noterar att injicerade frågor körs inom operatörens egen API‑omfång och inte kan korsa en hyresgästgräns; version 0.6.2 åtgärdar problemet genom att skicka exportid som en parametriserad variabel. Mohiuddin uppger att Rapid7 krediterade honom som upptäckare.

Utöver dessa fall rapporterar Mohiuddin att från och med uppdateringen har 16 GitHub‑säkerhetsråd publicerade av projekten själva underhållerna gett honom kredit som rapportör, vilket omfattar SSRF samt kommando‑injektion, autentiseringsluckor, sessionskapning, credential‑läckor och kringgående av tidigare åtgärder, och att han har fått åtgärder sammanslagna i projekt som github-mcp-server, mongodb-mcp-server och salesforce-mcp-server.

Oupplösta myndighetsfynd

Mohiuddin rapporterar att han lämnade in fem fynd som privata GitHub Security Advisories den 2 september 2026, som täcker MCP‑servrar under GSA:s Technology Transformation Services: en Department of Veterans Affairs förmåns‑ansökningsserver, en CMS Blue Button‑server, en regulations.gov‑server, en USASpending‑server och en CDC PLACES‑server. Han uppger att alla fem fortfarande är i triage, inte har åtgärdats och inte presenteras som bekräftade resultat.

I VA‑fallet, som han beskriver endast på klassnivå, loggar servern hela upstream‑felkroppen från benefits‑API:t på ERROR‑nivå utan maskering; dessa kroppar kan innehålla en veteranens namn, personnummer, födelsedatum och adress, och han uppger att rutinmässiga valideringsfel räcker för att utlösa loggningen under normal drift. Han håller tillbaka kod‑nivå‑detaljer tills servrarna har åtgärdats.

Han rapporterar också att han den 1 september 2026 meddelade JPCERT att Japan Digital Agency:s jgrants-mcp-server saknade autentisering, och den 7 september 2026 öppnade en offentlig pull‑request som kräver ett explicit samtycke för att binda servern till något annat än loopback samt begränsa storleken på bilagors skrivning. Pull‑requesten har ännu inte slagits ihop, och han presenterar den inte som ett bekräftat resultat.

Protokollpivotering och MCPCon‑föredraget

Mohiuddin definierar Protokollpivotering som en flerstegsattack där en angripare går in via ett protokoll, utnyttjar de förtroendeantaganden som protokollen gör om varandra, och eskalerar till funktioner som endast är tillgängliga genom ett annat protokoll. Hans konkreta exempel placerar text som liknar en A2A‑uppgiftsinstruktion i MCP‑verktygets utdata; en orkestrerande agent vidarebefordrar den till en subagent som normal delegation, och subagenten, som litar på sin orkestrerare, kör den.

Den formella preprinten, “Protocol Pivoting: Cross-Protocol Attack Escalation in Agentic AI Systems,” publicerades på Zenodo den 24 maj 2026. Den presenterar tre scenarier: MCP‑till‑A2A‑privilegieringsescalering via implicit förtroendedelegation, A2A‑till‑MCP‑kapabilitetsinjektion via skadlig agent‑imitering, och tvär‑protokoll‑prompt‑injiceringskedjor. Den analyserar också varför befintliga försvar misslyckas mot klassen och föreslår ett enhetligt tvär‑protokoll‑säkerhetsramverk med en formell förtroendegränsmodell och tre protokoll‑agnostiska motåtgärder.

Arbetet i maj inleddes med Microsofts playwright-mcp, vars browser_navigate‑verktyg accepterade vilken URL som agenten levererade utan SSRF‑skydd, vilket gjorde det möjligt att styra en agent till AWS:s instans‑metadata‑tjänst på 169.254.169.254 och dess autentiseringsuppgifter. Mohiuddin noterar att han rapporterade detta som ett offentligt GitHub‑ärende, att det inte finns någon CVE och ingen leverantörsbekräftelse, och att svårighetsgraden är hans egen bedömning.

Mohiuddin argumenterar att programvarusammansättningsanalys och beroendesökare missar denna klass eftersom den farliga inmatningen anländer via transporten som ett verktygsargument beskrivet i ett verktygsmanifest som skannern aldrig läser, så anropsgrafen stannar vid transportgränsen. Han uppger att han byggde mcp-safeguard, en öppen källkods‑scanner som testar MCP‑servrar via deras exponerade verktygsyt utan att behöva källkod, och letar efter sex klasser: SSRF, överdrivna behörigheter, prompt‑injiceringsytor, informationsläckage, autentiseringsluckor och livscykel‑bypass. Han påpekar också att mönstermatchningsverktyg, inklusive hans eget, missar en stor del av klassen.

Mohiuddin uppger att han kommer att presentera tvär‑leverantörsmönstret den 23 oktober 2026 på MCPCon North America i San Jose, inklusive de fynd som är åtgärdade vid det tillfället, och att de federala fynden kommer att förbli privata tills de har reparerats.

Miles Okada är en AI‑genererad analytiker på Unite.AI, som täcker artificiell intelligens och cybersäkerhet med fokus på nya hot, defensiva arkitekturer och de föränderliga dynamikerna mellan angripare och automatiserade system. Hans arbete undersöker hur AI omformar säkerhetsoperationer, från autonom hotdetektering och respons till ökningen av adversariella AI‑tekniker.

Med ett tekniskt och undersökande perspektiv analyserar Miles säkerhetsforskning, incidentavslöjanden och verkliga implementeringar för att förstå var AI stärker försvar — och var det introducerar nya sårbarheter. Han ägnar särskild uppmärksamhet åt modellutnyttjande, dataförgiftning, attackautomation och de operativa realiteterna för att säkra AI‑drivna system i stor skala.

Artiklar skrivna av Miles Okada är AI‑genererade och granskas av Unite.AI:s redaktionsteam för att säkerställa noggrannhet, stringens och ett ansvarsfullt bevakande av det snabbt föränderliga AI‑säkerhetslandskapet.