Teknologi

En forgiftet VS Code-udvidelse stjal 3.800 af GitHubs interne repositorier

Susan Hill

GitHub undersøger uautoriseret adgang til sine interne repositorier og bekræfter, at en angriber har formået at exfiltrere data fra omkring 3.800 af dem. Indtrængen kom ind via en forgiftet Visual Studio Code-udvidelse, som en medarbejder havde installeret, og gav angriberen adgang til den maskine og derfra til intern kode, der skulle leve bag firmaets egne mure.

Den grænse, GitHub peger på, mellem interne repositorier og den kundevendte platform, er det eneste, der skiller en indkapslet hændelse fra en global forsyningskædekrise. GitHub er vært for omkring 100 millioner udviklere og en væsentlig del af den åbne kildekode, som det moderne internet hviler på. Når selskabet siger “internt”, mener det sin egen platformkode, sit eget værktøjssæt, sin operationelle konfiguration, det materiale GitHub bygger og driver sig selv med. Kundernes organisationer, virksomheder og de offentlige og private repositorier, som disse kunder opbevarer på GitHub, ligger ifølge selskabet selv uden for radius af denne indtrængen.

Den distinktion gør en betydelig del af arbejdet i det opslag, selskabet lagde på sin officielle X-konto. “Selvom vi i øjeblikket ikke har dokumentation for, at kundeoplysninger uden for GitHubs interne repositorier er påvirket”, lyder teksten, “overvåger vi vores infrastruktur nøje for opfølgende aktivitet”. Formuleringen er præcis, og præcision i en sikkerhedsmeddelelse betyder normalt, at undersøgelsen stadig bevæger sig. “Ingen dokumentation for påvirkning” er ikke det samme som “ingen påvirkning”. Hændelser hos store platforme har det med at vokse, efterhånden som forensik indhenter angriberens aktivitet, og linjen mellem interne og kundevendte systemer er sjældent en ren fysisk væg. Det er et sæt af adgangskontroller, legitimationsoplysninger og servicekonti, der skal tænkes igennem ét ad gangen.

Mekanismen er den del af historien, der bør bekymre enhver udvikler. Visual Studio Code er planetens dominerende kodeeditor, i brug hos næsten alle store ingeniørorganisationer. Markedspladsen for udvidelser kører på fællesskabets tillid: hvem som helst kan udgive, og de fleste ingeniører installerer plug-ins med samme lethed, som de tilføjer bogmærker i browseren. En forgiftet udvidelse leveret via den kanal og kørt på en udviklermaskine giver angriberen adgang til alt, hvad den udviklers session kan nå: repositorier, tokens, pakkeregistre, interne tjenester. Det konkrete navn på den udvidelse, der blev brugt i dette tilfælde, er endnu ikke offentliggjort, men mønsteret er ikke nyt. Nx Console, en populær udvidelse til udviklerværktøj, blev ramt af en lignende kompromittering.

Gruppen, der kalder sig TeamPCP, har påtaget sig indtrængen og tilbyder datasættet til salg på underjordiske fora med et gulv på halvtreds tusind dollar. Gruppens formulering, “det her er ikke en løsesum”, er i sig selv et signal. De forsøger ikke at afpresse GitHub direkte. De behandler stjålet intern kildekode, som andre kriminelle behandler kreditkortdumps: som en vare med købere. Den, der ender med det arkiv på 3.800 repositorier, vil kæmme det igennem efter indlejrede legitimationsoplysninger, hårdkodede hemmeligheder, detaljer der er nyttige til at angribe GitHubs egen infrastruktur, og alt, der kan bruges til at kompromittere mål længere nede i kæden. Samme gruppe sættes også i forbindelse med ormen Mini Shai-Hulud, der ramte pakken durabletask på PyPI, hvilket understreger historiens egentlige baggrund: angreb på udviklingens forsyningskæde er gået fra teoretisk scenarie til operationelt håndværk.

GitHubs inddæmningssvar var efter selskabets egen beskrivelse hurtigt. Den kompromitterede enhed blev isoleret. Den ondsindede udvidelse blev fjernet. Selskabet siger, at det har roteret kritiske hemmeligheder med prioritet til legitimationsoplysninger med størst påvirkning, og vil underrette berørte kunder gennem sine etablerede incident response-kanaler, hvis undersøgelsen udvides. Microsofts datterselskab navngav hverken den GitHub-medarbejder, hvis enhed blev kompromitteret, navngav ikke udvidelsen og angav ikke et præcist vindue for, hvor længe angriberen havde adgang før opdagelsen. Disse detaljer dukker typisk op i den længere post-incident-rapport, der kommer flere uger efter den første melding.

For resten af branchen er den praktiske pointe enklere, end threat intelligence-indpakningen får det til at lyde. Enhver ingeniørorganisation er én skødesløs udvidelsesinstallation fra den samme hændelse. Enhver, der nogensinde har installeret en VS Code-udvidelse anbefalet i en forumtråd, har løbet den samme risiko, der landede på en GitHub-medarbejder. De forsvar, der virker, er velkendte og ujævnt anvendt: begræns installation af udvidelser til en kontrolleret tilladelsesliste, isolér udviklerstationer fra produktionslegitimationsoplysninger, rotér hemmeligheder med høj kadence. Denne hændelse skubber dem op på prioritetslisten i virksomheder, der hidtil har udskudt dem.

GitHub har ikke givet en tidsplan for en fuld offentlig post-mortem. Undersøgelser af denne størrelse på platforme i denne skala tager typisk flere uger om at vise det fulde omfang, og opdateringer vil komme via selskabets officielle kanaler, efterhånden som de produceres. Næste ting at holde øje med er, om arkivet på 3.800 repositorier rent faktisk dukker op til salg, og hvor gulvet flytter sig hen, når det underjordiske marked har haft et par dage til at gennemgå indekset.

Debat

Der er 0 kommentarer.