Skadlig programvara injiceras i UAParser.js NPM-paket med 8 miljoner nedladdningar per vecka

Historien om borttagningen av tre skadliga paket som kopierade koden för UAParser.js-biblioteket från NPM-förvaret fick en oväntad fortsättning - okända angripare tog kontroll över kontot till författaren till UAParser.js-projektet och släppte uppdateringar som innehöll kod för stjäla lösenord och bryta kryptovalutor.

Problemet är att UAParser.js-biblioteket, som erbjuder funktioner för att analysera HTTP User-Agent-huvudet, har cirka 8 miljoner nedladdningar per vecka och används som ett beroende i över 1200 projekt. UAParser.js påstås användas av företag som Microsoft, Amazon, Facebook, Slack, Discord, Mozilla, Apple, ProtonMail, Autodesk, Reddit, Vimeo, Uber, Dell, IBM, Siemens, Oracle, HP och Verison.

Attacken utfördes genom att hacka sig in på projektutvecklarens konto, som insåg att något var fel efter att en ovanlig våg av spam föll in i hans brevlåda. Exakt hur utvecklarens konto hackades rapporteras inte. Angriparna skapade utgåvorna 0.7.29, 0.8.0 och 1.0.0 genom att injicera skadlig kod i dem. Inom några timmar återtog utvecklarna kontrollen över projektet och genererade uppdateringar 0.7.30, 0.8.1 och 1.0.1 som fixade problemet. Skadliga versioner publicerades endast som paket i NPM-förvaret. Projektets Git-förråd på GitHub påverkades inte. Alla användare som har installerat problematiska versioner, om de hittar jsextension-filen på Linux / macOS, och jsextension.exe och create.dll-filerna på Windows, rekommenderas att överväga att systemet är äventyrat.

De skadliga ändringarna som lagts till liknade de som tidigare föreslagits i UAParser.js-kloner, som verkar ha släppts för att testa funktionalitet innan en storskalig attack mot huvudprojektet lanserades. Den körbara filen jsextension laddades och startade på användarens system från en extern värd, som valdes beroende på användarens plattform och stödde arbete på Linux, macOS och Windows. För Windows-plattformen organiserade angriparna, förutom Monero cryptocurrency mining-programmet (XMRig-gruvarbetaren) även introduktionen av create.dll-biblioteket för att fånga upp lösenord och skicka dem till en extern värd.

Nedladdningskoden lades till i preinstall.sh-filen, som inkluderade infogningen IP=$(curl -k https://freegeoip.app/xml/ | grep 'RU|UA|BY|KZ') om [ -z " $ IP" ] ... ladda ner och kör fi-körfilen

Som framgår av koden kontrollerade skriptet först IP-adressen i tjänsten freegeoip.app och startade inte en skadlig applikation för användare från Ryssland, Ukraina, Vitryssland och Kazakstan.

Källa: opennet.ru

Lägg en kommentar