En rapporteret kampagne bygget omkring GitHub-stjålne tokens og WFX-stealeren bringer cirka 66.000 repositories i fare, ifølge dækning fra Cybernews. Angriberne brugte angiveligt stjålne adgangstokens til at plante ondsindede workflow-filer og forvandlede dermed en udviklingspipeline til en måde at indsamle hemmeligheder på. Den tilgængelige rapportering er kortfattet, så dette indlæg holder sig til det, der er blevet oplyst, og fokuserer på praktiske skridt, udviklere kan tage nu.

Hvordan stjålne tokens muliggjorde GitHub-workflow-angrebet

Ifølge rapporten brugte kampagnen stjålne tokens til at tilføje "WFX stealer"-workflows til omkring 66.000 GitHub-repositories. Et token er en legitimation, der giver en person eller en applikation mulighed for at handle på en konto uden at indtaste en adgangskode. Hvis en angriber har et gyldigt token med tilstrækkelige tilladelser, behandler GitHub deres handlinger som legitime.

Det er det, der gør workflows til et attraktivt mål. GitHub Actions-workflows er filer, der gemmes i et repository, og som kører automatisk, ofte med adgang til de hemmeligheder, et projekt bruger til at bygge, teste og udrulle kode. En ondsindet workflow behøver ikke at udnytte en softwarefejl. Den skal blot committes af en person, som GitHub mener er autoriseret, og derefter kører den inde i pipelinen.

Kildeopsummeringen beskriver ikke, hvordan tokens oprindeligt blev stjålet, og vi vil ikke gætte. Det, der betyder noget for læserne, er mønsteret: selve pipelinen bliver leveringsmekanismen, og de legitimationsoplysninger, der låser den op, er den egentlige gevinst.

Hvad WFX-stealeren kan eksponere fra udviklerkonti

Rapporteringen beskriver workflowene som hemmelighedsstjælende, og den foreslåede vinkel bemærker, at CI/CD-pipelines kan blive en vej til udvikleres hemmeligheder og personlige konti. I praktiske termer kan en stealer, der kører i en pipeline, være positioneret til at nå alt, hvad den pipeline kan nå. Typiske eksempler på sådant materiale omfatter:

  • API-nøgler og cloud-legitimationsoplysninger gemt som repository-hemmeligheder
  • Udrulningstokens og legitimationsoplysninger til pakkeregistre
  • Andre GitHub-tokens, der er tilgængelige for workflowen

De præcise data, som WFX-stealeren indsamler, er ikke blevet bekræftet i de oplysninger, vi har, så betragt listen ovenfor som kategorier af risiko, der er almindelige for pipeline-hemmeligheder, ikke som verificerede fund om denne kampagne. Den bredere bekymring er, at ét stjålet token kan føre til flere stjålne tokens. Hemmeligheder høstet fra ét repository kan låse op for andre tjenester, og det er sådan et repository-kompromis kan sprede sig til personlige og organisatoriske konti.

Det passer ind i et bredere tema, vi har dækket før: systemer, som folk skal kunne stole på, bliver vendt mod dem. Vores gennemgang af, hvordan en Pixel zero-click-fejl og ScreenConnect-angreb på MSP'er delte den samme ubehagelige tråd, viser, hvor ofte det betroede værktøj er det svage punkt.

Sådan tjekker du, om dine repositories blev påvirket

Vi kan ikke fortælle dig, om et specifikt repository er på den påvirkede liste, og den tilgængelige rapportering offentliggør ikke en sådan. Du kan stadig selv lede efter tegn på manipulation:

  1. Gennemgå workflow-filer. Åbn mappen .github/workflows i hvert repository, og led efter filer, du ikke genkender, eller ændringer, du ikke har lavet.
  2. Tjek commit- og pull request-historik. Led efter nylige commits eller branches, der rører ved workflows, især fra ukendte konti eller på mærkelige tidspunkter.
  3. Inspicér Actions-kørselslogs. Uventede kørsler, nye triggere eller trin, der laver udgående netværksanmodninger, fortjener et nærmere kig.
  4. Gennemgå din sikkerhedslog og autoriserede apps. I GitHub-indstillingerne kan du tjekke, hvilke personlige adgangstokens, OAuth-apps og GitHub Apps der har adgang, og fjerne alt, du ikke bruger.
  5. Antag eksponering, hvis du finder noget. Behandl enhver hemmelighed, som workflowen kunne læse, som kompromitteret, og udskift den.

Hærdning af GitHub: tokens, MFA og tredjeparts-Actions

Ingen af disse skridt er eksotiske, men sammen reducerer de, hvad et stjålet token kan gøre.

Rotér og begræns tokens. Tilbagekald gamle personlige adgangstokens, og udsted nye med det snævrest mulige omfang og den korteste udløbstid, der fungerer. Finkornede tokens begrænset til specifikke repositories er sikrere end brede.

Slå multifaktor-godkendelse til. MFA beskytter din kontologin, men det er værd at huske, at et stjålet token helt kan omgå login-trinnet. Derfor er token-hygiejne lige så vigtig.

Begræns workflow-tilladelser. Sæt standard-workflow-tokenet til skrivebeskyttet, og giv kun skriveadgang, hvor et job virkelig har brug for det. Kræv gennemgang, før ændringer i workflow-filer flettes, for eksempel via branch-beskyttelse og code owners.

Undersøg tredjeparts-Actions. Fastgør Actions til en specifik commit i stedet for et flytbart tag, og foretræk dem fra vedligeholdere, du stoler på. Hold hemmeligheder ude af jobs, der ikke har brug for dem.

Hvad dette betyder for dig

Hvis du vedligeholder selv et lille projekt på GitHub, er dine workflow-filer en del af dit angrebsareal. Et stjålet token kan lade nogen tilføje en workflow, der stille læser dine hemmeligheder, og du ser måske aldrig en alarm. Individuelle udviklere, open source-vedligeholdere og virksomheder med automatiserede udrulninger er alle i scope.

Den gode nyhed er, at forsvaret er inden for din kontrol og koster lidt tid. Det er også en del af et tilbagevendende mønster, hvor angribere går efter de konti og værktøjer, folk allerede stoler på. Vores dækning af Incransom, der hævder et angreb på TrRAC Inc. er en anden type hændelse, men den understreger, hvor hurtigt stjålen adgang kan blive til reel skade.

Handlingsorienterede pointer

  • Rotér dine GitHub-tokens i dag, og slet dem, du ikke længere bruger.
  • Aktivér MFA på enhver konto med repository-adgang.
  • Auditér dine .github/workflows-filer for ændringer, du ikke har lavet.
  • Sæt workflow-tilladelser til skrivebeskyttet som standard, og fastgør tredjeparts-Actions.
  • Hvis du finder noget mistænkeligt, udskift enhver hemmelighed, som workflowen kunne tilgå.

Rapporterne om GitHub-stjålne tokens og WFX-stealeren er stadig under udvikling, og detaljer kan ændre sig. Vent ikke på bekræftelse med at rydde op i din egen opsætning: rotér tokens, aktivér MFA og auditér dine workflows i dag.