Nordkoreanska statshackare komprometterade Axios npm-paket den 31 mars 2026 och infogade en plattformsberoende remote access trojan (RAT) i en av JavaScripts mest använda HTTP-klienter. Angreppsfönstret varade i tre timmar, men med cirka 100 miljoner nedladdningar per vecka var exponeringen tillräcklig för att nå system över hela världen.
CISA bekräftade komprometteringen i en rådgivning publicerad den 20 april och beskrev incidenten som en supply chain attack som ”laddar ner flerstegspayloads från angriparinfrastruktur, inklusive en remote access trojan.” Myndigheten uppmanar organisationer att utgå från att de kan vara komprometterade om de installerat de drabbade versionerna: axios@1.14.1 och axios@0.30.4.
Attribueringen är denna gång väl underbyggd
Microsoft Threat Intelligence och Googles Threat Intelligence Group attribuerade båda angreppet till nordkoreanska statsaktörer. Microsoft spårar gruppen som Sapphire Sleet, Google som UNC1069. Båda bedömningarna kopplar operationen till det bredare BlueNoroff-klustret, en finansiellt inriktad enhet Lazarus Group.
Attribueringen baseras på infrastrukturanalys snarare än tidsmässiga spekulationer. Microsoft bekräftade att ”kontot som skapade plain-crypto-js-paketet är kopplat till Sapphire Sleet-infrastruktur.” Googles analys hänvisar till användingen av WAVESHAPER.V2, en uppdaterad version av en backdoor som denna aktör har använt i kryptovalutarelaterade stölder sedan 2020.
Även metoden för social engineering följer gruppens etablerade mönster. Axios-underhållaren Jason Saayman beskrev en flerstegoperation som inkluderade falska företagsgrundare, fabricerade Slack-arbetsytor och Microsoft Teams-möten med flera tillsynes legitima deltagare. Detta speglar taktiker som Google dokumenterade i tidigare UNC1069-kampanjer riktade mot kryptovalutaföretag.
Så blev 39 minuter en global incident
Angriparna komprometterade Saaymans npm-konto och ändrade den registrerade e-postadressen till en ProtonMail-adress under deras kontroll. De kringgick helt Axios normala GitHub Actions-pipeline genom att publicera direkt till npm med de kapade inloggningsuppgifterna.
Operationen förbereddes 18 timmar i förväg. Den 30 mars klockan 05:57 UTC publicerades en legitim version av plain-crypto-js@4.2.0 för att etablera trovärdighet i paketregistret. Klockan 23:59 UTC följde version 4.2.1 med den med den skadliga koden. Därefter släpptes två Axios-versioner inom 39 minuter: axios@1.14.1 klockan 00:21 UTC och axios@0.30.4 klockan 01:00 UTC, båda injicerade plain-crypto-js@4.2.1 som en runtime-beroende.
När utvecklare körde npm install löste pakethanteraren beroendeträdet, hämtade det skadliga paketet och exekverade dess postinstall-skript automatiskt. Ingen användarinteraktion krävdes. Skriptet identifierade operativsystemet och laddade ner plattformsspecifika RAT-payloads från sfrclak.com:8000, en vardera för Windows, macOS och Linux.
Malwaren raderade sedan sig själv och ersatte sin package.json med en ren version för att försvåra forensisk analys. StepSecuritys automatiserade övervakning detekterade komprometteringen inom några timmar, men angriparen använde tiden till att radera GitHub ärenden som uppmärksammade problemet- omkring 20 raderingsförsök gjordes med det skapade underhållarkontot.
Kontrollera era system omedelbart
CISAs rekommendationer är tydliga: nedgradera till axios@1.14.0 eller axios@0.30.3, radera node_modules/plain-crypto-js-katalogen och rotera alla inloggningsuppgifter som kan ha exponerats. För CI/CD-pipelines som kördes mellan 00:21 och 03:15 UTC den 31 mars bör kompromettering antas.
Tidsfönstret är särskilt kritiska eftersom byggsystem ofta innehåller känsliga uppgifter såsom npm-tokens, SSH-nycklar, molninloggningar och API-nycklar. Microsoft rekommenderar att blockera utgående trafik till sfrclak.com samt att genomföra hotjakt i endpoint-skydd baserat på indikationer som publicerats av säkerhetsföretag.
Organisationer bör även se över sin npm-säkerhetskonfiguration. CISA rekommenderar att sätta ignore-scripts=true i .npmrc-filer för att förhindra automatisk exekvering av paketskript, samt min-release-age=7 för att undvika installation av paket som inte har varit offentligt granskade i minst sju dagar.
Detta var ingen opportunistiskt attack. Tre separata payloads var färdigbyggda för tre operativsystem. Båda release-grenarna komprometterades inom 39 minuter, och de forensiska spåren var utformade för att raderas automatiskt. Supply chain-attacker av denna nivå kräver resurser och tålamod som typiskt återfinns hos statsaktörer- och Nordkoreas har en väldokumenterad historik inom området.
Referenser
This post is also available in:
april 22, 2026