Botnet typu peer-to-peer, który de facto pojawił się ponad rok temu, w ciągu ostatniego miesiąca skompromitował około 1500 serwerów należących do podmiotów z sektora opieki zdrowotnej, edukacji i administracji rządowej.
FritzFrog to zdecentralizowany botnet, który atakuje każde urządzenie hostujące serwer SSH — instancje w chmurze, serwery centrów danych, routery itp. — i jest w stanie uruchomić dowolny złośliwy ładunek na zainfekowanych węzłach. Tak twierdzą badacze Akamai w udostępnionym raporcie.
Najnowsza fala ataków rozpoczęła się na początku grudnia 2021 r., Nabrała tempa i odnotowała 10-krotny wzrost wskaźnika infekcji w ciągu miesiąca, osiągając szczytowy poziom 500 incydentów dziennie w styczniu 2022 r. Firma zajmująca się cyberbezpieczeństwem twierdzi, że wykryła zainfekowane maszyny w europejskiej sieci kanałów telewizyjnych, w sieci rosyjskiego producenta sprzętu medycznego oraz wielu uniwersytetów z Azji Wschodniej.
FritzFrog został po raz pierwszy udokumentowany w sierpniu 2020 r., pokazując sprawność botnetu w atakowaniu i infekowaniu ponad 500 serwerów w Europie i Stanach Zjednoczonych.
Każdy kolejny zainfekowany host rozszerza siłę rażenia i dynamikę wzrostu botnetu, ponieważ nowa maszyna zaczyna udostępniać złośliwe pliki w sieci, a także upuszczać szkodliwe ładunki, takie jak na przykład koparka kryptowalut Monero.
Architektura peer-to-peer (P2P) botnetu sprawia, że jest on odporny, ponieważ każda skompromitowana maszyna w sieci rozproszonej może działać jako serwer dowodzenia i kontroli (C2), w przeciwieństwie do pojedynczego, scentralizowanego hosta. Co więcej, ponownemu pojawieniu się botnetu towarzyszyły nowe rozszerzenia jego funkcjonalności, w tym wykorzystanie sieci proxy i targetowanie serwerów WordPress.
Aspekty techniczne
Po zidentyfikowaniu maszyny docelowej złośliwe oprogramowanie wykonuje szereg zadań, które obejmują SSH brute-force, infekowanie hosta złośliwymi ładunkami po udanym włamaniu oraz dodanie ofiary do sieci P2P.
Aby unikać wykrycia, złośliwe oprogramowanie działa jako ifconfig i NGINX i zaczyna nasłuchiwać na porcie 1234, aby otrzymywać dalsze polecenia do wykonania, w tym te służące do synchronizacji ofiary z bazą danych sieci równorzędnych i celów brute-force.
Same polecenia są przesyłane do złośliwego oprogramowania za pomocą serii pętli zaprojektowanych w celu maskowania działań. Węzeł atakujący w botnecie najpierw łączy się z konkretną ofiarą przez SSH, a następnie używa narzędzia NETCAT do nawiązania połączenia ze zdalnym serwerem. Widzimy to na poniższym obrazku.
Co więcej, pliki ładunku są wymieniane między węzłami w stylu BitTorrent, wykorzystując segmentowe podejście do przesyłania plików w celu wysyłania blobów danych.
Kiedy węzeł A chce otrzymać plik od swojego równorzędnego węzła B, może zapytać węzeł B, które obiekty BLOB są w jego posiadaniu za pomocą polecenia getblobstats. Następnie węzeł A może uzyskać określony obiekt BLOB przez jego hash, za pomocą polecenia P2P getbin lub przez HTTP, z adresem URL „https://node_IP:1234/blob_hash.” Gdy węzeł A ma wszystkie potrzebne obiekty, składa plik za pomocą specjalnego modułu o nazwie Assemble i uruchamia go.
Oprócz szyfrowania i kodowania odpowiedzi na polecenia, złośliwe oprogramowanie uruchamia osobny proces o nazwie „libexec”, aby wydobywać kryptowalutę Monero obciążając CPU. Pozostawia też tylne drzwi dla przyszłego dostępu do ofiary poprzez dodanie klucza publicznego do pliku „authorized_keys” SSH, aby umożliwić logowanie bez konieczności ponownego polegania na haśle.
FritzFrog wyróżnia się tym, że używany protokół P2P jest całkowicie zastrzeżony. Podczas gdy wcześniejsze wersje procesu złośliwego oprogramowania były maskowane jako „ifconfig” i „nginx”, ostatnie warianty próbują ukryć swoje działania pod nazwami „apache2” i „php-fpm”.
Inne nowe cechy wbudowane w złośliwe oprogramowanie obejmują wykorzystanie protokołu bezpiecznego kopiowania (SCP) do kopiowania się na zdalny serwer, tworzenie łańcuchów proxy Tor w celu maskowania wychodzących połączeń SSH, infrastrukturę do śledzenia serwerów WordPress pod kątem kolejnych ataków oraz listę niedozwolonych urządzeń do infekcji, takich jak na przykład Raspberry PI.
Podsumowanie
Jak widać powyżej, ostatnie duże infekcje miały miejsce zarówno w Chinach, jak i w Europie czy Stanach Zjednoczonych. Nie można więc określić konkretnego celu geograficznego botnetu.
Włączenie funkcji SCP mogło również dać pierwszą wskazówkę co do pochodzenia złośliwego oprogramowania. Akamai zwrócił uwagę, że biblioteka napisana w Go została udostępniona w serwisie GitHub przez użytkownika znajdującego się w chińskim mieście Szanghaj.
Druga informacja łącząca szkodliwe oprogramowanie z Chinami wynika z faktu, że jeden z nowych adresów portfela wykorzystywanych do kopania kryptowalut był również wykorzystywany w ramach kampanii botnetowej Mozi, której operatorzy zostali aresztowani w Chinach we wrześniu ubiegłego roku.
Te dowody, choć nie ostateczne, prowadzą nas do przekonania, że istnieje możliwy związek z aktorem działającym w Chinach lub aktorem udającym Chińczyka.