A három rosszindulatú csomag NPM-tárolóból való eltávolításának története, amely a UAParser.js könyvtár kódját másolta, váratlan folytatást kapott – ismeretlen elkövetők átvehették az UAParser.js projekt szerzőjének fiókját, és olyan frissítéseket adtak ki, amelyek jelszólopást és kriptovaluta bányászatot tartalmazó kódot tartalmaztak.
A probléma az, hogy az UAParser.js könyvtár, amely a User-Agent HTTP-fejléc elemzésére szolgáló funkciókat kínál, heti körülbelül 8 millió letöltéssel bír, és több mint 1200 projektben használják függőségként. Azt állítják, hogy az UAParser.js olyan cégek projektjeiben található, mint a Microsoft, Amazon, Facebook, Slack, Discord, Mozilla, Apple, ProtonMail, Autodesk, Reddit, Vimeo, Uber, Dell, IBM, Siemens, Oracle, HP és Verison.
A támadást a projekt fejlesztőjének fiókjának feltörésével hajtották végre, aki furcsa spamáradatot észlelt a postaládájában. A fejlesztő fiókjának pontos feltörésének módjáról nincsenek információk. A támadók a 0.7.29, 0.8.0 és 1.0.0 kiadásokat alakították át rosszindulatú kóddal. Néhány órán belül a fejlesztők visszanyerték a projekt feletti irányítást, és az 0.7.30, 0.8.1 és 1.0.1 frissítéseket elkészítették a probléma megoldására. A rosszindulatú verziókat csak NPM-tárolócsomagok formájában tették közzé. A projekt GitHubon található Git-tárolója nem szenvedett kárt. Minden felhasználónak, aki a problémás verziókat telepítette, javasolják, hogy a Linux/macOS rendszereken a jsextension fájl, míg Windows alatt a jsextension.exe és create.dll fájlok felfedezése esetén tekintse a rendszert kompromittáltnak.
A hozzáadott rosszindulatú változások hasonlítottak az UAParser.js klónokban korábban javasolt módosításokhoz, amelyek nyilvánvalóan a funkcionalitás tesztelésére készültek, mielőtt széleskörű támadást hajtottak volna végre a fő projekten. Az áldozat rendszere külső hostról töltötte le és indította el a jsextension végrehajtható fájlt, amely a felhasználó platformjától függően lett kiválasztva, és támogatta a Linux, macOS és Windows működését. Windows platform számára a Monero kriptovaluta bányászó program (a XMRig bányászt használták) mellett az elkövetők a create.dll könyvtár beillesztését is megszervezték, hogy lelopják a jelszavakat és azokat egy külső hostra küldjék.
A letöltési kód hozzá lett adva a preinstall.sh fájlhoz, amelyben megjelent egy bejegyzés: IP=$(curl -k https://freegeoip.app/xml/ | grep 'RU|UA|BY|KZ') if [ -z "$IP" ] … a végrehajtó fájl letöltése és elindítása fi
Ahogy a kódból látható, a szkript először ellenőrizte az IP-címet a freegeoip.app szolgáltatásban, és nem indította el a rosszindulatú alkalmazást Oroszország, Ukrajna, Fehéroroszország és Kazahsztán felhasználói számára.
Forrás: opennet.ru
