Reklama

Cyberbezpieczeństwo

Złośliwa paczka w PyPI. Nietypowa infekcja malware

Złośliwa paczka znaleziona w PyPI
Złośliwa paczka znaleziona w PyPI
Autor. Pete Linforth, Pixabay.com

Złośliwe oprogramowanie może być przypadkowo zainstalowane również przez programistów. Istnieje ryzyko, że będzie ukrywane w paczkach, które mają podobne nazwy do często pobieranego opgrogramowania.

10 maja wykryto złośliwe oprogramowanie w paczce requests-darwin-lite, która próbowała podszyć się pod request. Samo request zostało pobrane ponad 11 miliardów razy, zaś requests-darwin-lite – na szczęście tylko 417 razy do momentu usunięcia z PyPI. Co ciekawe, sam backdoor został ukryty w logo projektu, lecz mógł zadziałać jedynie na urządzeniu wskazanym w kodzie.

Czytaj też

Reklama

Instalacja malware

Samo zainstalowanie złośliwej paczki nie było trudne. Wystarczyło użyć polecenia „pip install requests-darwin-lite” zamiast „pip install requests”.

Użycie takiego polecenia powodowało pobranie paczki, która udawała tzw. forka – czyli repozytorium oparte (prawie) w całości na innym oprogramowaniu. Świadczy o tym przede wszystkim nazwa paczki, która poza nazwą prawidłowej - składa się z dopisku „darwin-lite”.

Po wykonaniu program sprawdzał UUID urządzenia. Co najdziwniejsze w całej paczce, oprogramowanie może się wykonać tylko na konkretnej maszynie – oznacza to, że atak był nakierowany na konkretny sprzęt lub paczka służyła jedynie testom. Nie można tego ustalić.

Fragment kodu
Fragment kodu
Autor. https://blog.phylum.io/malicious-go-binary-delivered-via-steganography-in-pypi/

Jeżeli UUID było poprawne, dalszym krokiem programu było pobranie danych z pliku requests-sidebar-large.png.

Logo Requests
Logo Requests
Autor. https://blog.phylum.io/malicious-go-binary-delivered-via-steganography-in-pypi/

Oryginalne logo waży 300KB, a plik przetwarzany przez program waży 17MB. Została w nim zastosowana steganografia, czyli w tym przypadku ukrywanie danych w obrazku.

Analiza na VirusTotal pokazuje, że w obrazie ukryty był Silver, czyli otwartoźródłowe oprogramowanie służące do łączenia się z serwerami C2 (ang. Command and Control).

Analiza malware
Analiza malware
Autor. https://www.virustotal.com/gui/file/89fb2149bdf1482463377c055eb946dd357f2d90b3e425ebb3ab78c4774f7b00

Czytaj też

Reklama

Nie pierwszy taki przypadek

Niestety takie ataki nie są niczym nowym. Kacper Szurek na swoim blogu omawiał przykłady paczek, które mogły próbować podszyć się pod inne oprogramowanie.

Przykładowo – uruchomienie paczki requesys, requesrs lub requesr skutkowało zaszyfrowaniem plików na dysku, a klucz deszyfrujący dostępny był na Discordzie.

Klucze deszyfrujące na Discordzie
Klucze deszyfrujące na Discordzie
Autor. https://blog.sonatype.com/ransomware-in-a-pypi-sonatype-spots-requests-typosquat

Czytaj też

Reklama

Rekomendacje

Przy instalacji paczek należy zwrócić szczególną uwagę na to, czy faktycznie instalujemy pożądaną paczkę. Literówka może nas słono kosztować, ponieważ cyberprzestępcy stale pracują nad technikami ukrywania złośliwego oprogramowania.

W przypadku paczki z PyPI warto sprawdzić liczbę pobrań przed zainstalowaniem jej. Można to zrobić np. na PyPI Stats.

Serwis CyberDefence24.pl otrzymał tytuł #DigitalEUAmbassador (Ambasadora polityki cyfrowej UE). Jeśli są sprawy, które Was nurtują; pytania, na które nie znacie odpowiedzi; tematy, o których trzeba napisać – zapraszamy do kontaktu. Piszcie do nas na: [email protected].

Reklama
Reklama

Komentarze