4min Security

Microsoft geeft advies over Shai-Hulud 2.0 supply chain-aanval

Microsoft geeft advies over Shai-Hulud 2.0 supply chain-aanval

De terugkeer van de Shai-Hulud supply chain-aanval kreeg al kort na de eerste waarschuwing erover op 24 november de titel ‘The Second Coming’. Shai-Hulud 2.0 kan echter afgeweerd worden, legt Microsoft uit.

De Shai-Hulud 2.0-campagne, al eerder op Techzine omschreven, borduurt voort op eerdere supply chain-compromissen. Toch introduceert deze variant meer automatisering, snellere verspreiding en een breder doelwit. Kwaadaardige code draait tijdens de preinstall-fase van geïnfecteerde npm-pakketten, waardoor uitvoering plaatsvindt vóór tests of securitychecks. Aanvallers compromitteerden maintainer-accounts van veelgebruikte projecten zoals Zapier, PostHog en Postman.

Gestolen credentials worden geëxfiltreerd naar publieke, door aanvallers gecontroleerde repositories. Dit kan leiden tot verdere compromissen. Microsoft benadrukt dat traditionele netwerkverdedigingen onvoldoende zijn tegen aanvallen die zijn ingebed in vertrouwde package-workflows. Gecompromitteerde credentials stellen aanvallers in staat om privileges te escaleren en lateraal te bewegen over cloud-workloads.

Aanvalsmechanisme en detectie

Meerdere npm-pakketten raakten gecompromitteerd toen dreigingsactoren een preinstall-script genaamd set_bun.js toevoegden aan de package.json. Het setup_bun.js-script controleerde op een bestaande Bun runtime-binary en installeerde deze indien afwezig. Bun kan op dezelfde manier worden gebruikt als Node.js.

De Bun-runtime voerde vervolgens het gebundelde kwaadaardige script bun_environment.js uit. Dit script downloadde en installeerde een GitHub Actions Runner-archief en configureerde een nieuwe GitHub-repository met een runner-agent genaamd SHA1Hulud. Uit het archief werden extra bestanden geëxtraheerd, waaronder TruffleHog en Runner.Listener executables. TruffleHog werd ingezet om het systeem te doorzoeken op opgeslagen credentials en cloud-credentials op te halen.

Microsoft Defender for Containers waarschuwde klanten direct bij de start van de campagne via de alert “Suspicious usage of the shred command on hidden files detected”. Deze melding identificeerde de datavernietigingsactiviteit die onderdeel was van de campagne. Microsoft introduceerde ook een specifieke alert om deze campagne te identificeren: “Sha1-Hulud Campaign Detected – Possible command injection to exfiltrate credentials”.

In sommige gevallen werden commits naar nieuw aangemaakte repositories uitgevoerd onder de naam “Linus Torvalds”, de maker van de Linux-kernel en oorspronkelijke auteur van Git. Het gebruik van valse persona’s laat zien dat commit signature verification nodig is, een eenvoudige en betrouwbare controle om te bevestigen wie daadwerkelijk een commit creëerde.

Bredere context en impact

De gevolgen van Shai-Hulud 2.0 bleken al gauw groter dan aanvankelijk gedacht. Uit onderzoek blijkt dat grote hoeveelheden data zijn buitgemaakt en via tienduizenden GitHub-repositories openbaar zijn gemaakt. Ongeveer 400.000 ruwe secrets werden gestolen, variërend van toegangstokens tot configuratiegegevens afkomstig uit CI- en ontwikkelomgevingen.

Eerder werd het NPM-ecosysteem al getroffen door een eerste Shai-Hulud-aanval. De nieuwe variant genereert willekeurige repository-namen en bevat een destructieve functie die onder bepaalde omstandigheden de volledige homedirectory van een slachtoffer verwijdert. Dit type malware ontwikkelt zich van louter datadiefstal naar functionaliteit die directe schade kan aanrichten binnen ontwikkelomgevingen.

Volgens securityonderzoekers raakt de aanval de volledige ontwikkelketen, van lokale machines tot geautomatiseerde CI-omgevingen. Een groot aantal van de getroffen systemen bestond uit Linux-containers die onderdeel waren van automatiseringsprocessen. Veel infecties bleken gerelateerd aan GitHub Actions, gevolgd door andere CI-platformen zoals Jenkins, GitLab CI en AWS CodeBuild.

Bescherming en mitigatie

Microsoft Defender raadt organisaties aan om Key Vault-assets op de kritieke asset management-pagina te reviewen en relevante logs te onderzoeken op ongeautoriseerde toegang. Blootgestelde credentials moeten snel worden gereset en ingetrokken. Getroffen CI/CD-agents of workspaces dienen te worden geïsoleerd.

Organisaties moeten prioriteit geven aan risicovolle attack paths om verdere blootstelling te verminderen. Het is essentieel om onnodige rollen en permissies die zijn toegekend aan identiteiten voor CI/CD-pipelines te verwijderen, specifiek de toegang tot key vaults.

Voor npm-maintainers adviseert Microsoft om npm trusted publishing te gebruiken in plaats van tokens. Publishing-instellingen op accounts, organisaties en pakketten moeten worden versterkt om tweefactorauthenticatie (2FA) te vereisen voor alle schrijf- en publicatieacties. Bij het configureren van 2FA verdient WebAuthn de voorkeur boven een time-based, one-time password (TOTP).

Microsoft raadt ook aan om cloud-delivered protection en automatische sample submission in te schakelen op Microsoft Defender Antivirus. Deze mogelijkheden gebruiken AI en ML om nieuwe en onbekende dreigingen snel te identificeren en te stoppen. Attack surface reduction rules moeten worden ingeschakeld, met name voor het blokkeren van uitvoerbare bestanden tenzij ze voldoen aan prevalentie-, leeftijds- of vertrouwde lijst-criteria.

Defender for Cloud-klanten bij Microsoft kunnen cloud security explorer gebruiken om mogelijk gecompromitteerde softwarepakketten aan het licht te brengen. De security explorer templates library is uitgebreid met twee extra queries die alle container images met gecompromitteerde softwarepakketten ophalen en alle draaiende containers met deze images identificeren.