Odkryli 11 złośliwych pakietów w PyPI

Kilka dni temu powiadomienie, że W katalogu PyPI zidentyfikowano 11 pakietów zawierających złośliwy kod (indeks pakietu Pythona).

Zanim zidentyfikowano problemy, pakiety pobrano łącznie ok. 38 tys. razy Należy zauważyć, że wykryte szkodliwe pakiety wyróżniają się wykorzystaniem wyrafinowanych metod ukrywania kanałów komunikacji z serwerami atakujących.

Odkryte pakiety to:

  • ważny pakiet (6305 pobrań) e ważny-pakiet (12897): te pakiety nawiązać połączenie z serwerem zewnętrznym pod pozorem łączenia się z pypi.python.org aby zapewnić dostęp powłoki do systemu (odwrócona powłoka) i użyj programu trevorc2, aby ukryć kanał komunikacyjny.
  • test pp (10001) oraz ipboardy (946): używał DNS jako kanału komunikacji do przesyłania informacji o systemie (w pierwszym pakiecie nazwa hosta, katalog roboczy, wewnętrzny i zewnętrzny adres IP, w drugim nazwa użytkownika i nazwa hosta).
  • księżyc sowy (3285) DiscordBezpieczeństwo (557) y yiffimpreza (1859) — Zidentyfikuj token usługi Discord w systemie i wyślij go do hosta zewnętrznego.
  • trrfab (287): Wysyła identyfikator, nazwę hosta i zawartość / etc / passwd, / etc / hosts, / home do zewnętrznego hosta.
  • 10 centów10 (490) — Ustanowiono połączenie zwrotne powłoki z zewnętrznym hostem.
    Yandex-yt (4183): pokazywał wiadomość o zhakowanym systemie i przekierowywał na stronę z dodatkowymi informacjami o dodatkowych akcjach, wydaną przez nda.ya.ru (api.ya.cc).

Biorąc to pod uwagę, wspomina się, że szczególną uwagę należy zwrócić na sposób dostępu do zewnętrznych hostów używanych w pakietach Ważny pakiet i ważny-pakiet, które wykorzystują sieć dostarczania treści Fastly używaną w katalogu PyPI w celu ukrycia swojej aktywności.

W rzeczywistości żądania były wysyłane do serwera pypi.python.org (w tym określenie nazwy python.org w SNI w ramach żądania HTTPS), ale nazwa serwera kontrolowanego przez atakującego została ustawiona w nagłówku HTTP „Host ». Sieć dostarczania treści wysłała podobne żądanie do serwera atakującego, wykorzystując parametry połączenia TLS do pypi.python.org podczas przesyłania danych.

Infrastruktura PyPI jest zasilany przez sieć Fastly Content Delivery Network, która wykorzystuje przezroczyste proxy Varnish do buforowania typowych żądań i używa przetwarzania certyfikatów TLS na poziomie CDN zamiast serwerów punktów końcowych do przesyłania żądań HTTPS przez serwer proxy. Niezależnie od hosta docelowego żądania są wysyłane do serwera proxy, który identyfikuje żądanego hosta za pomocą nagłówka „Host” HTTP, a nazwy hostów domen są łączone z adresami IP systemu równoważenia obciążenia CDN typowymi dla wszystkich klientów Fastly .

Serwer atakujących rejestruje się również w CDN Fastly, który zapewnia każdemu darmowe plany cenowe, a nawet umożliwia anonimową rejestrację. Szczególnie schemat jest również używany do wysyłania żądań do ofiary podczas tworzenia „odwróconej powłoki”, ale rozpoczęte przez gospodarza atakującego. Z zewnątrz interakcja z serwerem atakującego wygląda jak legalna sesja z katalogiem PyPI, zaszyfrowana certyfikatem PyPI TLS. Podobna technika, znana jako „adresowanie domeny”, była wcześniej aktywnie używana do ukrywania nazwy hosta przez omijanie blokad, przy użyciu opcji HTTPS dostępnej w niektórych sieciach CDN, określając fikcyjnego hosta w SNI i przekazując nazwę hosta. w nagłówku hosta HTTP w ramach sesji TLS.

W celu ukrycia złośliwej aktywności dodatkowo wykorzystano pakiet TrevorC2, który upodabnia interakcję z serwerem do normalnego przeglądania sieci.

Pakiety pptest i ipboards wykorzystywały inne podejście do ukrywania aktywności sieciowej, polegające na kodowaniu przydatnych informacji w żądaniach do serwera DNS. Złośliwe oprogramowanie przesyła informacje, wykonując zapytania DNS, w których dane przesyłane do serwera dowodzenia i kontroli są zaszyfrowane przy użyciu formatu base64 w nazwie subdomeny. Atakujący akceptuje te wiadomości, kontrolując serwer DNS domeny.

Wreszcie, jeśli chcesz dowiedzieć się więcej na ten temat, możesz zapoznać się ze szczegółami W poniższym linku.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.