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.

    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
      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
        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

        Sztuczna inteligencja w Twoim banku. Gdzie ją spotkasz?

        Materiał sponsorowany

        Komentarze

          Reklama