InterPlanetary Storm – Linux, Mac i Android zagrożone

Zagrożenia: Nowy wariant InterPlanetary Storm atakujący urządzenia IoT

Organizacja cyberprzestępcza stojąca za złośliwym oprogramowaniem InterPlanetary Storm wypuściła nowy wariant, który oprócz komputerów z systemami Windows i Linux atakuje także urządzenia z systemami Mac i Android. Malware ten tworzy botnet, który według badaczy z firmy Barracuda obejmuje około 13 500 zainfekowanych maszyn z 84 państw świata – a liczba ta nadal rośnie.

InterPlanetary Storm

Większość komputerów zainfekowanych tym złośliwym oprogramowaniem znajduje się w Azji.

  • 59 proc. zainfekowanych maszyn znajduje się w Hongkongu, Korei Południowej i na Tajwanie
  • 8 proc. znajduje się w Rosji i na Ukrainie
  • 6 proc. znajduje się w Brazylii
  • 5 proc. znajduje się w Stanach Zjednoczonych i Kanadzie
  • 3 proc. znajduje się w Szwecji
  • 3 proc. znajduje się w Chinach
  • Pozostałe kraje – wśród których jest też Polska – mają wkłady poniżej 1 proc.

Poniżej są bliższe informacje na temat tego zagrożenia oraz rozwiązania, które pomagają wykrywać, blokować i odpierać ataki.

Zagrożenie

Nowy wariant złośliwego oprogramowania InterPlanetary Storm — Nowy wariant tego zagrożenia uzyskuje dostęp do komputerów przeprowadzając atak słownikowy na serwery SSH, podobnie jak FritzFrog, inny malware typu peer-to-peer (p2p). Może on też dostać się do urządzenia poprzez dostęp do otwartych serwerów ADB (Android Debug Bridge). Złośliwe oprogramowanie wykrywa architekturę CPU oraz system operacyjny ofiar, może też działać na urządzeniach opartych na architekturze ARM, która jest często stosowana w routerach i innych urządzeniach IoT.

Malware jest znany jako InterPlanetary Storm, ponieważ wykorzystuje sieć p2p InterPlanetary File System (IPFS) oraz jej bazową implementację libp2p. Pozwala to zainfekowanym węzłom komunikować się ze sobą bezpośrednio lub za pośrednictwem innych węzłów pełniących funkcję przekaźników.

Pierwszy wariant Interplanetary Storm, wymierzony w komputery Windows, odkryto w maju 2019 r., natomiast czerwcu b.r. pojawiły się doniesienia o wariancie zdolnym do infekowania komputerów Linux. Nowy wariant, który badacze z firmy Barracuda odkryli pod koniec sierpnia, bierze na cel urządzenia IoT, na przykład telewizory działające pod kontrolą systemu operacyjnego Android, a także urządzenia linuksowe, takie jak routery ze źle skonfigurowaną usługą SSH.

Choć przeznaczenie botnetu tworzonego przez to złośliwe oprogramowanie nie jest jeszcze jasne, zapewnia on operatorom „tylne drzwi” do zainfekowanych urządzeń, które później będzie można wykorzystywać do wydobywania kryptowalut, ataków DDoS lub innych ataków realizowanych na wielką skalę.

Samsung Galaxy S20 Fan Edition (FE) – wszystko, czego potrzeba w naszych rękach

Szczegóły

Nowy wariant InterPlanetary Storm jest napisany w języku Go, wykorzystuje implementację bibliotek libp2p dla tego języka i jest spakowany za pomocą programu UPX. Rozprzestrzenia się poprzez ataki typu brute force na serwery SSH oraz przez otwarte porty ADB, a następnie przesyła złośliwe pliki do innych węzłów sieci. Malware udostępnia napastnikowi tzw. odwrotną powłokę, może też uruchomić powłokę bash.

Badacze Barracuda wykryli kilka unikatowych funkcji, które pomagają złośliwemu oprogramowaniu utrwalić swoją obecność po zainfekowaniu komputera.

  • Wykrywanie honeypotów.Malware szuka łańcucha „svr04” w domyślnym monicie powłoki (PS1), który był wcześniej używany przez honeypot Cowrie.
  • Automatyczne aktualizacje.Malware porównuje wersję działającej instancji z najnowszą dostępną wersją i w razie potrzeby przeprowadza aktualizację.
  • Utrwalanie obecności w systemie poprzez instalację usługi (system/systemv) z wykorzystaniem pakietu Go Daemon.
  • Przerywanie procesów, które mogą stanowić zagrożenie, takich jak debuggery i konkurencyjne złośliwe oprogramowanie. W tym celu malware szuka następujących łańcuchów w wierszach polecenia procesów:
    • “/data/local/tmp”
    • “rig”
    • “xig”
    • “debug”
    • “trinity”
    • “xchecker”
    • “zypinstall”
    • “startio”
    • “startapp”
    • “synctool”
    • “ioservice”
    • “start_”
    • “com.ufo.miner”
    • “com.google.android.nfcguard”
    • “com.example.test”
    • “com.example.test2”
    • “saoas”
    • “skhqwensw”

Klucze rozgłaszane przez Interplanetary Storm

W tablicy IPFS Distributed Hash Table (DHT) malware rozgłasza poniższe klucze. Zainfekowane węzły następnie próbują znaleźć równorzędne węzły, które mogą zapewnić potrzebne im usługi:

Klucz Przeznaczenie
requeBOHCHIY2XRMYXI0HCSZA C2 (zarządzanie i kontrola)
proxybackendH0DHVADBCIKQ4S7YOX4X Zaplecze proxy
web-api:kYVhV8KQ0mA0rs9pHXoWpD Zaplecze dystrybucji plików

Test Alcatel 3X 2020 – ma wszystko, a nie rujnuje kieszeni

Każdy zainfekowany węzeł ogłasza klucz „fmi4kYtTp9789G3sCRgMZVG7D3uKalwtCuWw1j8LSPHQEGVBU5hfbNdnHvt3kyR1fYUlGNAO0zactmIMIZodsOha9tnfe25Xef1”, aby poinformować, że jest częścią botnetu. Identyfikator każdego zainfekowanego urządzenia jest generowany jednorazowo podczas wstępnej infekcji i jest wykorzystywany także jeśli urządzenie zostanie uruchomione ponownie albo malware zaktualizuje się.

Zainfekowane węzły ogłaszają też klucze o postaci „stfadv:<suma kontrolna>”, aby powiadomić, że węzeł może udostępnić plik z taką właśnie sumą kontrolną.

Protokoły komunikacyjne

Aplikacje libp2p obsługują połączenia przychodzące (strumienie) na podstawie adresu logicznego (tzn. nieznanego warstwie transportowej) nazywanego identyfikatorem protokołu. Zgodnie z konwencją, identyfikatory protokołu mają strukturę przypominającą ścieżkę, której ostatnim elementem jest numer wersji.

Malware używa następujących identyfikatorów protokołu:

ID protokołu Przeznaczenie Uwagi
/sbst/1.0.0 Używany do aktywacji odwrotnej powłoki Hostowany w węzłach
/sfst/1.0.0 Używany do transferu plików Hostowany w węzłach, suma kontrolna służy do sprawdzania integralności przesyłanego pliku
/sbpcp/1.0.0 Używany do przez usługę proxy do łączenia się z serwerem zaplecza Hostowany w serwerach zaplecza
/sbptp/1.0.0 Używany przez usługę proxy. Zwykły kanał proxy Hostowany w węzłach
/sreque/1.0.0 Używany przez kolejkę skanera Hostowany w węzłach, polecenia od C2 zawierają podpis.

Komunikaty w tym kanale są serializowane w postaci obiektów JSON. Komunikaty od C2 – „brute-ssh”, albo „tcp-scan” – nakazują węzłowi skanowanie sieci pod kątem podatnych urządzeń. Węzeł przesyła wyniki tych skanów.

Komunikaty „brute-ssh” od C2 zawierają listę adresów IP, które należy zaatakować, a także poświadczenia, których należy użyć.

Zaplecze dystrybucji plików

Serwery dystrybucji plików można odnaleźć z wykorzystaniem klucza „web-api:kYVhV8KQ0mA0rs9pHXoWpD”. Odpowiednie węzły równorzędne implementują protokół „http przez libp2p” obsługując następujące polecenia przesyłane jako ścieżki URL:

Ścieżka Metoda Opis
/version GET Pobierz wersję węzła równorzędnego
/files/checksum?f=<nazwa pliku> GET Pobierz bieżącą sumę kontrolną pliku <nazwa pliku>
/files/seedrs-http?c=<suma kontrolna> GET Pobierz listę węzłów, które mogą dostarczyć plik
POST /files/seedrs-http POST Dodaj informacje o węźle
/nodes/ POST Dodaj informacje o węźle

Odwrócenie sterowania

Malware może instalować niektóre z następujących plików:

storm_android-amd64 d4e3102b859ebfda5a276b2ce6f226e27fdcdef5e693ee7742be863236e2374a
storm_android-386 9dab7f5ff2873389a4b0e68cb84978fc5907cd2579bd15a1d39e277f5d2fdc27
storm_android-arm64 16bcb323bfb464f7b1fcfb7530ecb06948305d8de658868d9c3c3c31f63146d4
storm_android-arm7 56c08693fdf92648bf203f5ff11b10b9dcfedb7c0513b55b8e2c0f03b209ec98
storm_linux-amd64 ab462d9d2a9a659489957f80d08ccb8a97bbc3c2744beab9574fda0f74bd1fe2
Storm_linux-386 ba1e8d25cc380fdbbf4b5878a31e5ed692cfd2523f00ca41022e61f76654dd4f
storm_linux-arm64 50406ec7fa22c78e9b14da4ccc127a899db21f7a23b1916ba432900716e0db3d
storm_linux-arm7 a2f4c9f8841d5c02ffd4573c5c91f7711c7f56717ddb981f719256163be986e8
storm_darwin-amd64 4cd7c5ee322e55b1c1ae49f152629bfbdc2f395e9d8c57ce65dbb5d901f61ac1

Jak chronić się przed tymi atakami?

Aby ochronić się przed tym wariantem złośliwego oprogramowania, należy:

  • Prawidłowo skonfigurować dostęp SSH we wszystkich urządzeniach.Do logowania należy używać kluczy zamiast haseł, co zwiększy poziom bezpieczeństwa. Jeżeli włączone jest logowanie za pomocą haseł, a sama usługa jest dostępna, złośliwe oprogramowanie może to wykorzystać do ataku. Jest to problem często spotykany w routerach i urządzeniach IoT, przez co stają się one łatwym celem.
  • Używać narzędzi do zarządzania bezpieczeństwem w chmurze do monitorowania kontroli dostępu przez SSH w celu wyeliminowania ewentualnych pomyłek konfiguracyjnych, które mogą mieć katastrofalne następstwa. Aby w razie potrzeby zapewnić bezpieczny dostęp do powłoki systemowej, zamiast eksponować zasób w internecie, należy zastosować połączenie VPN z uwierzytelnianiem wieloskładnikowym oraz posegmentować sieć według konkretnych potrzeb zamiast przyznawać dostęp do całych sieci IP.

źródło: Barracuda

One thought on “InterPlanetary Storm – Linux, Mac i Android zagrożone

Dodaj komentarz

%d bloggers like this: