W pakiecie NPM UAParser.js, który ma 8 milionów pobrań tygodniowo, wprowadzono złośliwe oprogramowanie

Historia usunięcia trzech złośliwych pakietów z repozytorium NPM, które kopiowały kod biblioteki UAParser.js, otrzymała niespodziewany ciąg dalszy — nieznani cyberprzestępcy przejęli kontrolę nad kontem autora projektu UAParser.js i opublikowali aktualizacje zawierające kod do kradzieży haseł oraz kopania kryptowalut.

Problem polega na tym, że biblioteka UAParser.js, która oferuje funkcje do analizy nagłówka HTTP User-Agent, ma około 8 mln pobrań tygodniowo i jest używana jako zależność w ponad 1200 projektach. Twierdzi się, że UAParser.js jest stosowana w projektach takich firm jak Microsoft, Amazon, Facebook, Slack, Discord, Mozilla, Apple, ProtonMail, Autodesk, Reddit, Vimeo, Uber, Dell, IBM, Siemens, Oracle, HP i Verizon.

Atak został przeprowadzony przez zhakowanie konta dewelopera projektu, który zorientował się, że coś jest nie tak po nietypowej fali spamu, która spadła na jego skrzynkę odbiorczą. Nie wiadomo, w jaki sposób konto dewelopera zostało zhakowane. Napastnicy stworzyli wydania 0.7.29, 0.8.0 i 1.0.0, wprowadzając złośliwy kod. W ciągu kilku godzin deweloperzy odzyskali kontrolę nad projektem i stworzyli aktualizacje 0.7.30, 0.8.1 i 1.0.1, usuwając problem. Złośliwe wersje zostały opublikowane tylko w postaci pakietów w repozytorium NPM. Repozytorium Git projektu na GitHubie nie zostało naruszone. Wszystkim użytkownikom, którzy zainstalowali problematyczne wersje, zaleca się uznać system za skompromitowany, jeśli w Linux/macOS znajdą plik jsextension, a w Windows pliki jsextension.exe i create.dll.

Dodane złośliwe zmiany przypominały zmiany wcześniej proponowane w klonach UAParser.js, które, jak się wydaje, zostały wydane w celu przetestowania funkcjonalności przed przeprowadzeniem szeroko zakrojonego ataku na główny projekt. Na system użytkownika z zewnętrznego hosta ładowany i uruchamiany był plik wykonywalny jsextension, który był wybierany w zależności od platformy użytkownika i wspierał działanie w systemach Linux, macOS i Windows. Na platformie Windows oprócz programu do kopania kryptowaluty Monero (używany był kopacz XMRig) cyberprzestępcy zorganizowali również wprowadzenie biblioteki create.dll do przechwytywania haseł i ich wysyłania na zewnętrzny host.

Kod do pobrania został dodany do pliku preinstall.sh, w którym pojawiła się wstawka IP=$(curl -k https://freegeoip.app/xml/ | grep 'RU|UA|BY|KZ') if [ -z "$IP" ] … pobieranie i uruchomienie pliku wykonywalnego fi

Jak widać z kodu, skrypt najpierw sprawdzał adres IP w serwisie freegeoip.app i nie uruchamiał złośliwej aplikacji dla użytkowników z Rosji, Ukrainy, Białorusi i Kazachstanu.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster