Specjaliści ds. cyberbezpieczeństwa wykryli poważny incydent w ekosystemie oprogramowania typu open source. Popularne narzędzie Jscrambler, służące do ochrony kodu JavaScript, stało się wektorem ataku typu supply chain. W wersji 8.14.0, udostępnionej w repozytorium npm, umieszczono złośliwy kod, który po instalacji pakietu automatycznie pobierał i uruchamiał oprogramowanie typu infostealer oparte na języku Rust.
Atak ten jest szczególnie niebezpieczny, ponieważ wykorzystuje zaufanie programistów do oficjalnych kanałów dystrybucji bibliotek. Zainfekowana wersja 8.14.0 została opublikowana w repozytorium npm, co oznacza, że każdy projekt korzystający z automatycznego pobierania najnowszych aktualizacji mógł nieświadomie zainstalować zagrożenie w swoim środowisku programistycznym.
Mechanizm działania złośliwego oprogramowania
Złośliwy skrypt został ukryty wewnątrz procesu instalacji pakietu. Po uruchomieniu komendy instalacyjnej, skrypt nawiązywał połączenie z zewnętrznym serwerem, z którego pobierany był plik wykonywalny napisany w języku Rust. Wybór tego języka nie jest przypadkowy – Rust pozwala na tworzenie wydajnego, trudnego do analizy kodu, który skutecznie omija wiele standardowych zabezpieczeń systemowych.
Głównym celem zainfekowanego oprogramowania była kradzież wrażliwych danych użytkownika. Infostealer został zaprojektowany do przeszukiwania zainfekowanego systemu w poszukiwaniu:
Reakcja na incydent i zalecenia
Po wykryciu zagrożenia, zainfekowana wersja 8.14.0 została usunięta z repozytorium npm. Incydent ten przypomina o konieczności zachowania szczególnej ostrożności podczas zarządzania zależnościami w projektach programistycznych. Eksperci zalecają, aby zespoły IT oraz programiści indywidualni przeprowadzili audyt swoich środowisk pod kątem obecności tej konkretnej wersji pakietu.
W przypadku wykrycia wersji 8.14.0 w plikach konfiguracyjnych (takich jak package.json lub package-lock.json), należy niezwłocznie usunąć pakiet, wyczyścić pamięć podręczną npm oraz zresetować wszelkie dane uwierzytelniające, które mogły zostać skompromitowane w trakcie pracy z zainfekowanym narzędziem. Warto również rozważyć stosowanie narzędzi do skanowania zależności, które automatycznie wykrywają znane luki w zabezpieczeniach oraz złośliwe pakiety w czasie rzeczywistym.
Choć Jscrambler jest narzędziem komercyjnym, a jego pełne licencje mogą kosztować tysiące dolarów (często przekraczające równowartość kilkunastu czy kilkudziesięciu tysięcy złotych), incydent ten pokazuje, że nawet profesjonalne rozwiązania mogą stać się celem ataków hakerskich. Bezpieczeństwo łańcucha dostaw oprogramowania pozostaje jednym z największych wyzwań dla współczesnych zespołów deweloperskich.
