Han var tydlig med att han "inte hade något intresse" av att gå via MSRC-processen igen . Den tidigare buggen rapporterades först till GitHubs HackerOne-program, där han uttryckligen fick svaret att buggen låg utanför ramarna för deras belöningsprogram och att han måste vända sig till MSRC – en byråkratisk bollning som lämnade forskaren utan kompensation eller erkännande
.
Exploiten orkestrerar tre olika svagheter till en sömlös kedja som tar sig förbi varje skyddsbarriär github.dev har.
VS Codes ‘webviews’ – de isolerade sandlådorna som renderar Jupyter Notebook-filer, Markdown-förhandsgranskningar och liknande – är designade som säkra avskärmningar. Men för att snabbkommandon ska fungera i dem vidarebefordrar editorn tangentbordshändelser från den sandlådade vyn in i huvudredigeringsfönstret .
En skadlig Jupyter Notebook inuti angriparens repository genererar konstgjorda tangentbordshändelser (Ctrl+Skift+A, Ctrl+F1) som skickas från sandlådan rakt in i VS Codes huvudfönster . Knapptryckningarna triggar i smyg kommandot "Installera tillägg" och kringgår den dialogruta för utgivarverifiering som ska blockera opålitliga tillägg
.
Angriparens repository innehåller ett färdigpaketerat VS Code-tillägg sparat i en .vscode/extensions-mapp. Eftersom github.dev betraktar tillägg som följer med arbetsytan som implicit betrodda, installeras den skadliga modulen helt utan att användaren tillfrågas .
När det skadliga tillägget väl körs får det full tillgång till github.dev:s runtime-miljö. Där finns en GitHub OAuth-token som github.com tyst skickar (POST) till github.dev varje gång ett repository öppnas. Avgörande är att denna token inte är begränsad till det öppnade repot – den bär på användarens fulla åtkomstprivilegier . Tillägget extraherar tokenet, skickar API-anrop för att lista offrets privata repon, och skickar sedan både token och repometadata vidare till angriparen
.
Resultatet: fullständiga läs- och skrivrättigheter till varje enskilt publikt och privat repository offret har tillgång till, allt genom ett enda klick .
Microsoft bekräftade sårbarheten den 2 juni 2026 och meddelade att den redan hade mitigerats för deras tjänster – specifikt github.dev och VS Code for the Web .
Den 3 juni rullade Microsoft ut server-sida korrigeringar, bland annat ett nytt förtroendesteg vid öppning av webbläsarbaserade Notebooks, samt blockering av att installationskommandot för tillägg accepterar godtycklig anropsinformation . Den 4 juni driftsattes ytterligare restriktioner för hantering av webview-händelser
.
Microsoft uppgav att problemet inte påverkar VS Code Desktop . Men det underliggande mönstret – att arbetsytetillägg ges implicit förtroende med otillräcklig verifiering – väcker farhågor för varje utvecklare som öppnar opålitliga repositorier lokalt.
Den här exploitkedjan är anmärkningsvärd av tre skäl.
För det första är attackytan en URL. Offren laddar inte ner en fil, öppnar en terminal eller godkänner en rättighetsbegäran. En webbläsarlänk till github.dev är den enda förutsättningen.
För det andra är token-omfattningen alarmerande bred. OAuth-tokenet som github.com skickar till github.dev är inte begränsat till den öppnade vyn – det ger åtkomst till allt användaren kan nå. En angripare som äventyrar en utvecklare som arbetar i ett publikt open-source-projekt kan därmed också nå den utvecklarens arbetsgivares privata repositorier .
För det tredje är arbetsyteförtroendet inverterat. Den funktion som ska göra lokal utveckling smidig – att implicit lita på tillägg som följer med ett projekt – blir just den mekanism som ger den skadliga nyttolasten automatisk exekvering.
I ett parallellt avslöjande rapporterade forskare fem nolldagarsårbarheter i OpenClaw AI-agentramverket som tillåter angripare att utge sig för att vara godkända användare och kapa betrodda AI-agenters åtkomst över flera meddelandeplattformar .
Rotorsaken är arkitektonisk: OpenClaw stöder 15 olika kanaladaptrar – Telegram, Slack, Discord, WhatsApp med flera – och varje adapter implementerar sin egen tillståndskontroll och webhook-verifiering oberoende av varandra . De säkerhetskritiska identitetsfält som används för tillståndsgivning, till exempel mänskligt läsbara visningsnamn, är föränderliga på plattformsnivå och matchas inkonsekvent mot stabila användar-ID:n mellan olika adaptrar
.
Eftersom det saknas ett centraliserat lager för policygenomdrivning kan angripare:
En säkerhetsanalys publicerad på arXiv den 3 juni 2026 identifierade sårbarheter över flera arkitektoniska lager (körpolicy, gateway, kanal, sandlåda, webbläsare, plugin, prompt), där det dominerande strukturella mönstret var lager-vis och per-anropsplats-tillämpat förtroende istället för enhetliga policygränser . Analysen visade att diskreta arkitektoniska svagheter kan komponeras till fullständiga oautentiserade remote code execution-kedjor
.
Comments
0 comments