Shai-Hulud-mask sprider sig via npm och drabbar över 1 280 paket
En snabb supply chain-attack har komprometterat Keyv och flera andra npm-paket, vilket exponerade utvecklarstationsarbeten och kontinuerlig integration system för skadlig programvara. Shai-Hulud-varianten identifierades, liknande tidigare kampanjer rapporterade av Hackread.com 2025.
En snabbspridande supply chain-attack har drabbat det populära npm-paketet Keyv och hundratals andra paket, vilket exponerar utvecklares arbetsstationer och CI-system för skadlig kod som stjäl inloggningsuppgifter.
Säkerhetsföretaget Aikido Security har identifierat skadlig kod som en variant av Shai-Hulud, en kampanj som först rapporterades 2025.
Hur attacken gick till
Attacken spårades till GitHub-kontot för Jared Wray, som underhåller Keyv, ett key-value storage-bibliotek med cirka 127 miljoner nedladdningar per vecka via npm. Angriparna lyckades pusha skadliga filer direkt till main-branchen och använde sedan den legitima GitHub Actions-releaseprocessen för att publicera Keyv version 6.0.0.
Eftersom den förgiftade releasen gick genom projektets normala publiceringsflöde bar den giltig proveniensinformation på npm. Signaturen verifierade var paketet byggdes, men inte om källkoden som gick in i processen var säker.
Över 1 280 paket drabbade
Aikido rapporterade minst 868 drabbade paket med totalt 1 381 skadliga versioner. Tillsammans har dessa paket över två miljarder månatliga nedladdningar. Forskare såg att 50 till 100 nya paket dök upp var några minut, och antalet passerade snabbt 1 280.
Bland de drabbade paketen fanns namn kopplade till företag som Deliveroo, Picsart och Qlik. Det betyder att publishing-åtkomst för dessa namn missbrukades, inte nödvändigtvis att företagens interna nätverk hackades.
Vad skadlig koden gör
När ett drabbat paket installeras letar skadlig koden efter npm-autentiseringstoken, GitHub-uppgifter, AWS-nycklar, Kubernetes-hemligheter, HashiCorp Vault-tokens, privata nycklar och databasuppgifter. Den söker även efter tokens för tjänster som Stripe och Slack.
Efter insamling krypteras datan och laddas upp till ett publikt GitHub-repo. Om det misslyckas skickas den till en extern domän.
Vad utvecklingsteam bör göra
Alla arbetsstationer eller CI-runners som körde en drabbad version bör betraktas som exponerade. Att ta bort paketet räcker inte eftersom redan insamlade uppgifter inte ogiltigförklaras.
Utvecklingsteam rekommenderas att:
- Granska lockfiler för exakta paketversioner
- Ta bort drabbade releaser
- Rotera npm-, GitHub-, moln- och Vault-uppgifter
- Granska repon för obehöriga commits
- Gå igenom molnloggar efter oväntad åtkomst
Källa: Hackread