Złośliwe oprogramowanie w repozytorium Python Package

Badacze Phylum odkryli kampanię złośliwego oprogramowania, skierowaną przeciwko użytkownikom PyPI, repozytorium oprogramowania dla Python. Phylum wykrył złośliwe pakiety narzędzi do kradzieży informacji w systemach deweloperskich. Usunięte pakiety obejmują pyrologin, easytimestamp, disorder, discord-dev, style.py i pythonstyles.

Fragment sformatowanego setup.py

Złośliwy kod, został ukryty w skrypcie instalacyjnym (konfiguracja.py), co oznacza, że ​​wystarczy uruchomić polecenie pip install, aby aktywować proces wdrażania złośliwego oprogramowania.

Złośliwe oprogramowanie uruchamia skrypt PowerShell, pobiera plik ZIP, instaluje inwazyjne zależności, takie jak pynput, pydirectinput i pyscreenshot oraz uruchamia skrypt Visual Basic wyodrębniony z archiwum, w celu wykonania pozostałej części kodu PowerShell. Jak wskazuje Phylum biblioteki te pozwalają kontrolować, monitorować ruch myszy i klawiatury, a także przechwytywać zawartość ekranu. Fałszywe pakiety są w stanie zbierać pliki cookie, zapisane hasła,  dane portfeli kryptowalut z przeglądarek Chrome, Firefox, Edge, Brave, Opera, Vivaldi, tokeny Dicord’a, które po spakowaniu do archiwum ZIP są transferowane.

Niestety w nowo przyjętej technice atakujący próbuje pobrać i zainstalować klienta tunelu cloudflare, w celu bezpiecznego łączenia zasobów. Cloudflared pośredniczy w ruchu z sieci Cloudflare do innych źródeł, znajduje się między siecią Cloudflare a np. serwerem WWW. Wygląda więc na to, że umożliwia to atakującemu dostęp do aplikacji działającej na komputerze ofiary przez tunel Cloudflare bez konieczności rekonfiguracji firewall’a. Pomysł ten polega na wykorzystaniu tunelu do zdalnego dostępu do zaatakowanej maszyny przy użyciu złośliwej aplikacji opartej na Flask, która zawiera trojana nazwanego xrat, o nazwie kodowej Phylum powerRAT. Złośliwe oprogramowanie umożliwia atakującemu uruchamianie poleceń w power shell, pobieranie zdalnych plików i wykonywanie ich na hoście, eksfiltrację danych, a nawet uruchamianie dowolnego kodu Pythona.

Flask

Aplikacja Flask obsługuje również funkcję ruchu „na żywo”, wykorzystującą JavaScript do nasłuchiwania zdarzeń kliknięcia na klawiaturze i ruchy myszą oraz przechwytuje zrzuty ekranu systemu pozyskując poufne informacje. Atak ten demonstruje w jaki sposób cyberprzestępcy stale rozwijają swoją taktykę, aby móc skutecznie atakować repozytoria pakietów typu open source i przeprowadzać ataki na łańcuch dostaw.