
Exponerat by design: en livegranskning av 414 internetexponerade MCP-servrar hittade 68 sårbarheter
- OrcaNYOrcaCyber: MiniMax M3.1 Flash Abliterated / Uncensored2026-10-29100 tok/s
- OrcaNYOrcaCyber: GLM 5.3 Flash Abliterated / Uncensored2026-10-27$0.80 / $1.60 per 1M tokens · 102 tok/s
- OrcaNYOrcaCyber: Qwen3.8 Flash Next Abliterated / Uncensored2026-10-26$0.80 / $1.60 per 1M tokens · 284 tok/s
- OrcaNYOrcaCyber: MiMo V2.6 Flash Abliterated / Uncensored2026-10-26$0.80 / $1.60 per 1M tokens · 93 tok/s
- MoonshotNYMoonshotAI: Kimi K3.1 Pro2026-10-2446Intelligens
- OrcaNYOrcaCyber: DeepSeek V4.1 Flash Abliterated / Uncensored2026-10-23$0.80 / $1.60 per 1M tokens · 106 tok/s
- minimaxNYMiniMax: M3.1 Flash2026-10-1929Intelligens
- OrcaNYOrca: OrcaCyber Ultra 1.02026-10-17$5.00 / $10.00 per 1M tokens · 70 tok/s
- deepseekNYDeepSeek: DeepSeek V4.1 Flash 10172026-10-1733Intelligens
- DeepSeekNYDeepSeek: DeepSeek V4.1 Flash2026-10-1740Intelligens
- OrcaOrca: OrcaCyber Zero 1.52026-10-10$3.00 / $7.50 per 1M tokens · 95 tok/s
- openaiOpenAI: GPT-6.1 Sol2026-09-2955Intelligens
- anthropicAnthropic: Claude Sonnet 5.52026-09-2854Intelligens
- typesafeTypeSafe: Jev 1.132026-09-24$0.04 / $0.00 per 1M tokens · 167 tok/s
- OpenAIOpenAI: GPT-6 Luna2026-09-2228Intelligens
- OpenAIOpenAI: GPT-6 Sol2026-09-2248Intelligens
- AnthropicAnthropic: Claude Opus 5.52026-09-2258Intelligens
- xiaomiXiaomi: MiMo-V2.6-Flash2026-09-2127Intelligens
- xiaomiXiaomi: MiMo-V2.6-Pro2026-09-2130Intelligens
- xAIGrok 4.72026-09-2134Intelligens
Den 31 juli 2026 publicerade Nicolás Padilla Exposed by Design (arXiv:2608.00150), ett preprint på 13 sidor som beskriver vad han kallar den första dynamiska beteendebaserade säkerhetsbedömningen av internetexponerade Model Context Protocol-servrar. Fyra mätomgångar under den månaden bekräftade 640 produktionsservrar i drift, varav 414 aktivt testades; testerna gav 68 rapporterbara sårbarheter, alla inlämnade till underhållare som GitHub Security Advisories. 380 av de 414 – 91,8 % – saknade OAuth-autentisering, och 687 verktygsinstanser annonserade shell-körning utan åtkomstkontroller. Padilla rapporterar inga tecken på att något av detta utnyttjades: testerna stannade vid proof of concept, inga autentiseringsuppgifter erhölls och inga data exfiltrerades. Postens fullständiga källförteckning, allvarlighetsgrad och konfidensbedömning finns i AI-incidentarkivet, tillsammans med de övriga MCP- och infrastrukturfynden som registrerades i anslutning till det.
Vad granskningen faktiskt gjorde
Model Context Protocol är gränssnittet som låter en AI-agent anropa verktyg som finns på annan plats – en dokumentsökning, en databasfråga, ett shell-hjälpverktyg. En server som talar det via HTTP och går att nå från internet är i praktiken en verktygsyta som vem som helst kan adressera. Padillas artikel hävdar att populationen av sådana servrar aldrig har räknats ordentligt, och att det är själva poängen att räkna dem: upptäckten är den svåra delen, och varje tidigare kartläggning såg på en annan del.
Hans upptäcktsfas slog samman elva källor – crt.sh, Hugging Face, GitHub, npm, Smithery, PyPI, Censys, FOFA, Shodan, glama.ai och pulsemcp.com – med argumentet att ingen enskild av dem fångar populationen. Den aktiva fasen använde Corvus, ett ramverk som Padilla byggde för studien: 34 testmoduler som täcker 10 MCP-specifika sårbarhetsklasser, uppdelade i 13 statiska och 21 dynamiska. Det är publicerat på GitHub under organisationen CobaltoSec och på PyPI som cobaltosec-corvus, och repots egen statistikfil anger samma antal på 34 moduler.
De fyra körningarna ägde rum den 15, 18, 21 och 24 juli 2026. Tidigare körningar bidrog endast med bekräftelsenummer; de tre sista skannade 3 485, 3 948 och 4 110 kandidater och bekräftade 140, 464 respektive 296 aktiva servrar. Efter deduplicering av 972 råobservationer med 332 upprepade förekomster återstod 640 unika bekräftade servrar, varav 414 – 64,7 % – accepterade fullständig dynamisk testning. Padilla betraktar 640 som en nedre gräns. Censys, en av upptäcktskällorna, hade uppskattat fler än 21 000 MCP-relaterade slutpunkter världen över i maj 2026, och han använder det som skaluppskattning snarare än som en räkning av vad han testade.

Läst som en tratt är siffrorna artikelns verkliga argument: en bred, billig genomgång hittar kandidater snabbare än en noggrann genomgång kan testa dem. Endast 414 av de 640 bekräftade servrarna testades fullt ut, och Padilla hävdar inte att den testade delmängden liknar den otestade återstoden.
Vad den hittade
Huvudfyndet är autentisering, eller bristen på den. Av de 414 testade servrarna hade 380 (91,8 %) ingen OAuth. Artikeln säger att de flesta av de återstående använde statiska bearer-token eller API-nycklar, ofta förutsägbara eller tomma – en server som accepterar en fast sträng är inte heller meningsfullt autentiserad. Eftersom granskningen endast testade servrar som var offentligt nåbara utan autentiseringsuppgifter, beskriver denna siffra den exponerade populationen per konstruktion; den är inte en uppskattning för MCP-servrar i allmänhet.
De 68 rapporteringsbara fynden fördelar sig på klass, och klassräknarna överlappar snarare än delar upp totalen: 380 autentiseringsbristfälligheter, 52 fall av acceptans av protokollfuzzing, 47 verktygsförgiftning, 38 kommandointräning, 31 schemabypass, 29 server-side request forgery, 24 manipulering av resurs-URI, 22 promptinjektion, 18 exponering av token och 14 indikatorer på leverantörskedja. Moduler för denial-of-service skrevs men köddes avsiktligt inte mot produktionsservrar, vilket Padilla utesluter av etiska skäl. De fyra sårbarhetstyper som nämns i abstraktet – SQL-injektion, SSRF mot molnmetadatatjänster, promptmallinjektion och sökvägstraversering via markörmanipulering – förekommer vardera inom dessa klasser.

Siffran för shell-exekvering kräver ett förbehåll som artikeln inte löser. I resultatavsnittet räknas 687 verktygsinstanser med shell-exekvering och utan autentisering samman över den bekräftade poolen på 640 servrar. I diskussionsavsnittet introduceras samma siffra med orden "av de 414 dynamiskt granskade servrarna" och hänvisas därefter till den "bredare bekräftade uppsättningen". De två formuleringarna stämmer inte överens, och artikeln anger aldrig något totalt antal verktyg för de testade servrarna, så 687 kan inte omvandlas till en procentandel.
Churn är det fynd som i störst utsträckning förändrar hur siffrorna ska tolkas. Av de 464 servrar som bekräftades den 21 juli var 193 – 41,6 % – borta när den fjärde körningen kontrollerade tre dagar senare. Nio av de 41 servrar som hade ett CRITICAL-fynd hade också försvunnit. Padilla tolkar detta som driftsättning utan granskning; det innebär också att ett fynd som bekräftats på måndagen kanske inte har någon ägare som kan patcha det före torsdag.
De tre fallstudierna och vad som kan kontrolleras
Tre fynd beskrivs i detalj, vart och ett med en identifierare från GitHub Security Advisory. En SQL-injektion i lectorium-corpus-mcp (GHSA-m8qh-p8m5-8c48, klassad som KRITISK) bekräftades med payloaden ' OR 1=1 -- och en skillnad i svarstorlek, utan att något dokumentinnehåll lästes eller behölls. En SSRF i epwforge (GHSA-r9fx-qwmc-rvx3, HÖG) bekräftades genom tidsmätning: 11,9 sekunder mot en intern metadataadress jämfört med en baslinje på 0,3 sekunder, utan att något innehåll från metadatasvaret lagrades. En promptmallsinjektion i frootai (GHSA-5h8f-r9g8-5w5p, HÖG) kompletterar uppsättningen.
Två av de tre kan kontrolleras direkt. Den 30 oktober 2026 gick de två första rådgivningssidorna att nå offentligt i CobaltoSecs rådgivningsarkiv, båda publicerade den 20 augusti 2026, och båda listade fortfarande "Patchade versioner: Inga" och ingen CVE. Den tredje, GHSA-5h8f-r9g8-5w5p, svarade "hittades inte" på den adressen. CobaltoSecs arkiv listade 46 publicerade rådgivningar samma datum, som täckte MCP-servrar och angränsande AI-verktyg; artikeln räknade 19 som offentligt avslöjade och 49 fortfarande under embargo när den skrevs. En skanningsartefakt för frootai daterad 28 juli 2026 finns i Corvus-arkivet, så testet genomfördes; det är bara rådgivningen som inte är synlig.
Själva avslöjandeprocessen beskrivs i stora drag snarare än i detalj. Alla 68 fynd skickades till underhållare via privata GitHub Security Advisories under en 90 dagars samordnad embargo, och där privat rapportering inte var tillgänglig skapade Padilla i stället ett offentligt ärende i kodförrådet. Artikeln rapporterar anekdotiskt att vissa underhållare patchade inom 24 timmar, att andra inte svarade på flera veckor och att vissa kodförråd var övergivna. Den redovisar inte antalet kontaktade underhållare och ingen tabell över svarsfrekvens, utan säger att dessa kommer att rapporteras i sin helhet vid inlämningstillfället.
Vad artikeln inte fastställer
Exposed by Design är en preprint med en enda författare. arXiv listar version 1, inskickad 31 juli 2026, utan tidskriftsreferens och utan uttalande om peer review. Arkivet graderar postens tillförlitlighet till B – dokumenterad, men från en enda källa – och den graden gäller för hela den här artikeln: varje uppgift ovan kommer från Padillas paper eller från artefakter han publicerar, inte från en oberoende mätning.
Ingen oberoende nyhetsredaktion verkar ha rapporterat om studien. Det finns bevakning – en AI-skriven analys på forkast.news, inlägg på LinkedIn och Medium, en kinesiskspråkig säkerhetsblogg, en japansk förklarande artikel – men den parafraserar preprinten utan att intervjua författaren, kontrollera säkerhetsmeddelandena eller tillföra data. Härledd bevakning är inte bekräftelse.
Padilla anger själv begränsningarna, och de är ovanligt specifika. Endast HTTP-transporter testades; stdio-servrar, det vanliga lokala fallet, ligger utanför omfattningen. Upptäckten är best-effort, så 640 är en undre gräns. De 226 bekräftade servrar som inte testades fullt ut uteslöts på grund av 403-svar, anslutningsåterställningar, JSON-RPC-svar som inte följer standarden eller helt enkelt att de var offline, och artikeln säger att den resulterande urvalsbiasen inte kan begränsas. Detektionen vilar på heuristik – tidsorakel, differentiella svar, schemainspelning – utan någon märkt benchmark och utan publicerad precision eller recall för de 34 modulerna. Den förändringstakt han dokumenterar undergraver den tidsmässiga validiteten hos enskilda fynd. Och en enda forskare som utför manuell verifiering introducerar en risk för bekräftelsebias som han namnger men inte kvantifierar.

Vad förändrades efter
Det praktiska resultatet hittills är verktyget och rådgivningsflödet. Corvus är installerbar och dokumenterad, och CobaltoSecs rådgivningsarkiv innehöll 46 publicerade poster den 30 oktober 2026, jämfört med de 19 offentliggöranden som artikeln räknade i slutet av juli. Två av artikelns egna fallstudier har fortfarande ingen patchad version – för dessa servrar har offentliggörandet gett ett offentligt register men ännu inte någon lösning.
För försvarare är den användbara delen av studien dess metod snarare än dess rubrik. En siffra på 91,8 % som endast hämtats från servrar som svarade utan autentiseringsuppgifter säger något snävt och verkligt: det mesta av det som exponerades var aldrig låst, och den tre dagar långa omsättningen antyder att mycket av det sattes upp för en demo, en prototyp eller ett test och aldrig härdades. Vad artikeln inte kan säga är huruvida samma sak gäller för de MCP-servrar som organisationer faktiskt är beroende av, eftersom dessa aldrig fanns i urvalet.
