Napadači su uspjeli preuzeti kontrolu nad računom održavatelja i objaviti dva zlonamjerna izdanja NPM paketa axios, koji nudi implementaciju HTTP klijenta za preglednike i Node.js. Paket axios ima više od 100 milijuna preuzimanja tjedno i koristi se kao ovisnost u 174 tisuće drugih paketa. Zlonamjerne promjene integrirane su u izdanja Axios 1.14.1 i 0.30.4 putem zamjene lažne ovisnosti plain-crypto-js 4.2.1, koja sadrži kod za preuzimanje komponenti koje primaju komande s zlonamjernog poslužitelja. Zlonamjerna izdanja bila su dostupna za preuzimanje 31. ožujka tijekom gotovo 3 sata — od 03:21 do 06:15 (MSK).
Zlonamjerne verzije bile su objavljene na NPM-u direktno koristeći prijavne podatke glavnog održavatelja projekta axios (‘jasonsaayman’) mimo standardnog mehanizma objavljivanja novih izdanja temeljenog na GitHub Actions. Pretpostavlja se da su napadači uspjeli preuzeti token za pristup NPM-u od održavatelja, nakon čega su se prijavili na račun i promijenili vezu s emailom. Kako je točno preuzet token za pristup nije navedeno.
Pokrenuti zlonamjerni kod bio je smješten u paketu plain-crypto-js u datoteci setup.js, aktivirao se nakon završetka instalacije NPM paketa putem obrade postinstall (‘postinstall: «node setup.js»‘) i korišten je za preuzimanje i instaliranje trojanca koji napada sustave s Windows, macOS i Linux. Kako bi prikrila svoje prisustvo, nakon pokretanja zlonamjerni komponent brisao je datoteku setup.js i zamijenio package.json verzijom bez postinstall hooka. 
Na macOS-u zlonamjerni izvršni datoteka preuzimana je kao ‘/Library/Caches/com.apple.act.mond’, na Windows-u kao ‘%PROGRAMDATA%\wt.exe’, dok je na Linux-u bila ‘/tmp/ld.py’. Nakon aktivacije na Linux-u i macOS-u, svakih 60 sekundi na vanjski server poslužitelj napadača slan je zahtjev s komandom za izvršavanje na zaraženom sustavu, koji se mogao koristiti za preuzimanje dodatnih zlonamjernih komponenti, izvršavanje proizvoljnih shell komandi i pronalaženje/slanje određenih datoteka.
Zlonamjerna aktivnost na Linux-u i macOS-u nije predviđala očuvanje prisutnosti nakon ponovnog pokretanja i bila je osmišljena za brzo prikupljanje povjerljivih podataka, lozinki, tokena i ključeva za pristup. Na Windows-u kreiran je datoteka ‘%PROGRAMDATA%\system.bat’, koja je preuzimala zlonamjernu komponentu s poslužitelja poslužitelja napadača pri svakom prijavljivanju.
Izvor: opennet.ru
