Ammar Askar biztonsági kutató nyilvánosságra hozott egy súlyos, nulladik napi (zero-day) sérülékenységet kihasználó proof-of-concept (PoC) exploitot a Visual Studio Code környezethez kapcsolódó github.dev szolgáltatásban. A kutató a hibát jelezte a GitHub-nak, majd mindössze egy órával később publikálta a részleteket és a működőképes exploitot, megkerülve a sérülékenységek felelős közzétételének folyamatát.
A sérülékenység a github.dev webes fejlesztői környezetet érinti, amely lehetővé teszi a GitHub-tárolók böngészőből történő szerkesztését. A probléma abból fakad, hogy a GitHub által átadott OAuth-token nem kizárólag az adott tárolóra érvényes, hanem a felhasználó által elérhető valamennyi nyilvános és privát repositoryhoz hozzáférést biztosít.
A támadási forgatókönyv szerint amennyiben egy támadó módosítani tudja egy repository .vscode/extensions.json állományát, rosszindulatú VS Code-kiterjesztést ajánlhat a felhasználónak. Ha az áldozat egy speciálisan kialakított github.dev hivatkozáson keresztül nyitja meg a tárolót, a támadás nagyrészt automatikusan végrehajtható. A kutató bemutatta azt is, hogyan lehet egy Jupyter Notebookba ágyazott HTML-kód segítségével megkerülni a kiterjesztések telepítéséhez szükséges felhasználói jóváhagyást. A bővítmény így a felhasználó tudta nélkül települhet, majd megszerezheti az OAuth-tokeneket, lehetővé téve a támadók számára az áldozat GitHub-tárolóinak kompromittálását további interakció nélkül.
Askar azért döntött a teljes nyilvános közzététel mellett, mert korábbi tapasztalatai alapján elvesztette bizalmát a Microsoft Security Response Center (MSRC) működésében, mivel egy korábban általa jelentett VS Code-sérülékenységet a Microsoft úgy javított ki, hogy nem adott elismerést a bejelentőnek, miközben a hibát biztonsági szempontból jelentéktelennek minősítette. A kutató szerint hasonló problémák más biztonsági kutatók jelentéseinél is előfordultak.
Ugyanakkor hangsúlyozta, hogy kritikája nem a VS Code fejlesztőcsapatát célozza, hanem kifejezetten a Microsoft sérülékenységkezelési folyamatát. Véleménye szerint a nyilvános közzététel az egyik utolsó eszköz arra, hogy nyomást gyakoroljon a vállalatra a termék biztonsági szintjének javítása érdekében.
Az eset felhívja a figyelmet a felelős hibabejelentés és a sérülékenységkutatók elismerésének kérdésére. Több szakértő szerint, ha a kutatók úgy érzik, hogy munkájukat nem értékelik megfelelően, vagy a jelentett hibákat alábecsülik, az hosszú távon gyengítheti az együttműködést a biztonsági közösség és a vállalatok között.
