3min Security

Gevolgen Shai-Hulud 2.0-worm groter dan gedacht, NPM onder druk

Gevolgen Shai-Hulud 2.0-worm groter dan gedacht, NPM onder druk

Het NPM-ecosysteem heeft opnieuw te maken met een ernstige supply-chainaanval. Waar de eerdere Shai-Hulud-infectie vooral bekend werd door het grote aantal getroffen pakketten, laat de nieuwe campagne zien dat de impact veel verder reikt dan codeverspreiding. 

Uit onderzoek van cloudbeveiliger Wiz blijkt dat grote hoeveelheden data zijn buitgemaakt en via tienduizenden GitHub-repositories openbaar zijn gemaakt.

Informatie uit de analyse toont aan dat de aanvallers zich deze keer meer hebben gericht op het verzamelen en verspreiden van gevoelige gegevens dan op de snelle besmetting van pakketversies. Volgens Wiz zijn ongeveer vierhonderdduizend ruwe secrets buitgemaakt, variërend van toegangstokens tot configuratiegegevens afkomstig uit CI- en ontwikkelomgevingen.

Opvallend is dat een aanzienlijk deel van de buitgemaakte NPM-tokens volgens de onderzoekers nog steeds geldig was op het moment dat het lek werd ontdekt. Dat betekent dat de aanval niet alleen een terugblik biedt op wat er is misgegaan, maar ook een reëel en aanhoudend risico vormt voor nieuwe compromitteringen.

De verspreiding van Shai-Hulud 2.0 verliep via honderden geïnfecteerde pakketversies, schrijft BleepingComputer. Het kwaadschadelijke gedrag werd vrijwel altijd geactiveerd tijdens het preinstall-event van NPM, waar een script genaamd setup_bun.js verantwoordelijk bleek voor het verzamellen van tokens, het injecteren van extra code en het opnieuw publiceren van pakketten onder accounts van slachtoffers. Een klein aantal pakketten was verantwoordelijk voor een groot deel van de besmettingen, waardoor de campagne zich snel en efficiënt kon uitbreiden.

Nieuwe variant heeft destructieve functie

Wiz beschrijft tevens dat de nieuwe variant een destructieve functie bevat die onder bepaalde omstandigheden de volledige homedirectory van een slachtoffer verwijdert. Hoewel dit gedrag niet breed lijkt te zijn geactiveerd, laat het volgens de onderzoekers zien dat supply-chainmalware zich ontwikkelt van louter datadiefstal naar functionaliteit die directe schade kan aanrichten binnen ontwikkelomgevingen en CI-infrastructuren.

Een groot aantal van de getroffen systemen bestond uit Linux-containers die onderdeel waren van automatiseringsprocessen. Veel infecties bleken te zijn gerelateerd aan GitHub Actions, gevolgd door andere CI-platformen zoals Jenkins, GitLab CI en AWS CodeBuild. Dit bevestigt dat moderne aanvallen zich steeds vaker richten op geautomatiseerde buildstraten, waar toegangstokens en publicatierechten aanwezig zijn en waar misbruik een directe invloed kan hebben op de integriteit van softwarelevering.

De repositories waarin de gestolen data werd opgeslagen bevatten verschillende soorten informatie, zoals momentopnamen van bestanden, systeemgegevens, scanresultaten en workflowsecrets afkomstig van GitHub Actions. Hoewel veel van de gegevens volgens Wiz niet bruikbaar zijn door de grote hoeveelheid ruis, bevat de verzameling wel degelijk honderden bruikbare credentials die direct inzetbaar zijn voor vervolgcampagnes.

Volledige ontwikkelketen wordt geraakt

In een eerder Techzine-artikel werd al aandacht besteed aan het opnieuw opduiken van de Shai-Hulud-worm binnen NPM. De nieuwe bevindingen tonen echter aan dat de schaal van de campagne veel groter was dan aanvankelijk gedacht. Wat begint als een pakketinfectie blijkt uiteindelijk uit te groeien tot een aanval die de volledige ontwikkelketen raakt, van lokale machines tot geautomatiseerde CI-omgevingen.

Volgens de onderzoekers is het waarschijnlijk dat de groep achter Shai-Hulud doorgaat met het verfijnen van de aanvalstechnieken. De omvang van de buitgemaakte gegevens maakt het aantrekkelijk om vervolgoperaties uit te voeren, mogelijk gerichter en met meer kennis van de interne processen bij slachtoffers. Organisaties die afhankelijk zijn van NPM en CI-platformen worden daarom aangespoord hun beveiligingsprocessen opnieuw te evalueren en met name de manier waarop tokens worden beheerd kritisch te bekijken.