Kampaň s infostealerem kompromitovala 10 balíčků npm, cílí na vývojáře

Deset balíčků npm bylo náhle aktualizováno s přidáním škodlivého kódu, který krade proměnné prostředí a další citlivá data ze systémů vývojářů. Kampaň cílila na několik balíčků souvisejících s kryptoměnami, přičemž populární balíček „country-currency-map“ byl stahován tisícekrát týdně.

Škodlivý kód objevil expert společnosti Sonatype Ali ElShakankiry a nachází se ve dvou silně obfuskovaných skriptech, „/scripts/launch.js“ a „/scripts/diagnostic-report.js“, které se spouštějí při instalaci balíčku.

Sonatype uvádí, že JavaScript krade proměnné prostředí zařízení a odesílá je na vzdálený hostitel „eoi2ectd5a5tn1h.m.pipedream(.)net“. Proměnné prostředí jsou často cílem útoků, protože mohou obsahovat API klíče, přihlašovací údaje k databázím, cloudové přihlašovací údaje a šifrovací klíče, které mohou být použity k dalším útokům.

Jak vysvětluje analytik malwaru společnosti Sonatype Ax Sharma ve svém článku, protože škodlivý kód je stejný ve všech repozitářích a většina z nich měla po léta čistý záznam, pravděpodobně došlo k jejich kompromitaci nějakým způsobem.

„Domníváme se, že příčinou kompromitace mohlo být buď zneužití starých účtů správců npm prostřednictvím útoků credential stuffing (kdy útočníci zkoušejí uživatelská jména a hesla uniklá při předchozích únicích dat k přístupu na jiné weby), nebo převzetí domény s vypršenou platností – obě situace jsou běžné a popsány v dokumentaci npm,“ uvádí Sonatype. „Vzhledem k současnému načasování útoků na více balíčků od různých správců se zdá pravděpodobnější scénář převzetí účtů správců než dobře organizované phishingové útoky.“

Názvy balíčků, jejich kompromitované verze a počet stažení škodlivé verze jsou uvedeny níže:

– country-currency-map: verze 2.1.8, 288 stažení.

– @keepkey/device-protocol: verze 7.13.3, 56 stažení.

– bnb-javascript-sdk-nobroadcast: verze 2.16.16, 61 stažení.

– @bithighlander/bitcoin-cash-js-lib: verze 5.2.2, 61 stažení.

– eslint-config-travix: verze 6.3.1, 0 stažení.

– babel-preset-travix: verze 1.2.1, 0 stažení.

– @travix/ui-themes: verze 1.1.5, 0 stažení.

– @veniceswap/uikit: verze 0.65.34, 0 stažení.

– @crosswise-finance1/sdk-v2: verze 0.1.21, 0 stažení.

– @veniceswap/eslint-config-pancake: verze 1.6.2, 0 stažení.

Všechny tyto balíčky, kromě „country-currency-map“, jsou stále dostupné na npm, přičemž jejich nejnovější verze jsou uvedeny výše. Stažení těchto verzí infikuje vaše projekty malwarem typu info-stealer.

Zdroj: BleepingComputer

Zdroj: IT SECURITY NETWORK NEWS  

Zdroj: ICT NETWORK NEWS