C0XMO: nowy botnet IoT eliminuje konkurencyjne malware i wzmacnia potencjał DDoS - Security Bez Tabu

C0XMO: nowy botnet IoT eliminuje konkurencyjne malware i wzmacnia potencjał DDoS

Cybersecurity news

Wprowadzenie do problemu / definicja

C0XMO to nowy wariant botnetu z rodziny Gafgyt, zaprojektowany do atakowania urządzeń IoT oraz sprzętu sieciowego działającego pod kontrolą systemów linuksowych. Kampania wyróżnia się tym, że nie tylko infekuje podatne hosty, ale również aktywnie usuwa z nich konkurencyjne malware, aby przejąć pełną kontrolę nad zasobami urządzenia.

Z perspektywy bezpieczeństwa oznacza to wzrost dojrzałości operacyjnej botnetów IoT. Operatorzy C0XMO wykorzystują stare, lecz nadal skuteczne podatności w urządzeniach brzegowych, a następnie budują stabilną infrastrukturę zdolną do realizacji ataków DDoS na dużą skalę.

W skrócie

C0XMO został zidentyfikowany jako bardziej rozwinięty wariant Gafgyt, który wykorzystuje m.in. lukę CVE-2021-27137 w usłudze UPnP firmware DD-WRT. Dzięki temu atakujący mogą zdalnie przejmować podatne urządzenia bez potrzeby uwierzytelnienia.

  • Atakuje routery, DVR, NAS i inne urządzenia IoT.
  • Pobiera binaria dla wielu architektur procesorów.
  • Utrzymuje trwałość za pomocą cron i modyfikacji plików startowych.
  • Usuwa konkurencyjne botnety i narzędzia zakłócające jego działanie.
  • Obsługuje rozproszone ataki DDoS z użyciem wielu technik zalewania ruchem.

Kontekst / historia

Rodzina Gafgyt od lat należy do najbardziej rozpoznawalnych zagrożeń wymierzonych w ekosystem IoT. W przeszłości tego typu malware zwykle opierało się na prostych metodach infekcji, takich jak domyślne hasła, Telnet lub wykorzystywanie starych błędów w routerach i rejestratorach.

C0XMO wpisuje się w ten sam trend, ale rozszerza go o bardziej elastyczną architekturę oraz funkcję eliminowania konkurencji. To ważna zmiana, ponieważ wskazuje na przejście od prostych kampanii masowych do operacji nastawionych na stabilne utrzymanie kontroli nad przejętymi urządzeniami.

Szczególnie narażone pozostają systemy stale podłączone do internetu, słabo monitorowane i rzadko aktualizowane. Dotyczy to zwłaszcza starszych routerów, urządzeń z alternatywnym firmware, systemów DVR, komponentów NVMS oraz hostów z wystawionym Android Debug Bridge.

Analiza techniczna

Łańcuch infekcji rozpoczyna się od wykorzystania podatności CVE-2021-27137, czyli przepełnienia bufora stosu w komponencie UPnP firmware DD-WRT. Atak bazuje na odpowiednio przygotowanym pakiecie UDP kierowanym na port 1900, używany przez SSDP, co sprzyja automatyzacji i masowemu skanowaniu internetu.

Po uzyskaniu wykonania kodu C0XMO pobiera binaria skompilowane dla wielu architektur, w tym ARM, MIPS, PowerPC, SuperH, x86 oraz x86_64. Dzięki temu operatorzy mogą infekować szerokie spektrum urządzeń, od routerów po rejestratory i systemy NAS.

Mechanizmy persistence są wielowarstwowe. Malware kopiuje się do ukrytych lokalizacji tymczasowych, ustawia uprawnienia wykonywania, tworzy zadania cron uruchamiające proces cyklicznie i dopisuje polecenia do plików startowych powłoki. Takie podejście utrudnia usunięcie infekcji poprzez samo zakończenie procesu lub jednorazowe czyszczenie systemu.

Najbardziej charakterystycznym elementem kampanii jest funkcja competitor-killing. C0XMO analizuje aktywne procesy, porównuje je z listą nazw i identyfikatorów powiązanych z innymi botnetami oraz kończy te, które uzna za zagrożenie dla własnej pracy. Dodatkowo próbuje usuwać mechanizmy trwałości konkurencyjnych próbek, w tym wpisy cron, rc.local, skrypty init, jednostki usługowe i wpisy w plikach startowych użytkownika.

Komunikacja z serwerem dowodzenia została zorganizowana jako niestandardowy, wieloetapowy handshake. Po zestawieniu sesji bot może otrzymywać polecenia związane z monitorowaniem stanu, kontrolą skanowania i prowadzeniem ataków DDoS. Obsługiwane metody obejmują m.in. UDP flood, TCP flood, SYN flood, ICMP flood oraz techniki amplifikacyjne wykorzystujące NTP i Memcached.

Na uwagę zasługuje również rozdzielenie modułu skanującego od głównego binarium. Zamiast osadzać logikę propagacji bezpośrednio w kodzie malware, operatorzy wykorzystują osobny skrypt w Pythonie odpowiedzialny za dalsze rozprzestrzenianie. Skaner używa różnych metod ataku, takich jak Telnet, SSH, HTTP i ADB, a także korzysta z list wykluczeń i rejestru nieudanych prób. To zwiększa elastyczność kampanii i pozwala szybciej dostosowywać ją do nowych celów.

Poza CVE-2021-27137 skaner uwzględnia również starsze podatności, w tym CVE-2015-2051 w urządzeniach D-Link. W praktyce pokazuje to, że C0XMO nie jest pojedynczym narzędziem opartym na jednym exploicie, lecz wielowektorową platformą do kompromitacji urządzeń brzegowych.

Konsekwencje / ryzyko

Najpoważniejszym skutkiem aktywności C0XMO jest wzrost ryzyka masowych ataków DDoS realizowanych z wykorzystaniem przejętych urządzeń IoT. Organizacje mogą nieświadomie udostępniać własną infrastrukturę do generowania złośliwego ruchu, a jednocześnie same stać się celem bardziej wydajnych kampanii prowadzonych przez rozbudowany botnet.

Funkcja eliminowania konkurencyjnego malware zwiększa stabilność infekcji i wydłuża czas utrzymania się zagrożenia w środowisku. Raz przejęte urządzenie może pozostawać pod kontrolą operatora dłużej niż w przypadku klasycznych botnetów, ponieważ C0XMO aktywnie oczyszcza host z innych złośliwych komponentów i wzmacnia własne mechanizmy trwałości.

Ryzyko jest szczególnie wysokie w środowiskach z dużą liczbą urządzeń OT, IoT i sprzętu sieciowego, które nie są objęte pełnym monitoringiem bezpieczeństwa, centralnym logowaniem ani regularnym procesem aktualizacji. Dodatkowym problemem pozostają urządzenia z zakończonym wsparciem producenta oraz systemy korzystające z usług takich jak UPnP, Telnet czy ADB wystawionych do internetu.

Rekomendacje

Organizacje powinny rozpocząć od pełnej inwentaryzacji urządzeń IoT, routerów, DVR, NAS i innych hostów brzegowych dostępnych z internetu. Szczególną uwagę należy zwrócić na systemy z DD-WRT lub starszym firmware producentów sprzętu sieciowego oraz sprawdzić ich podatność na znane luki wykorzystywane przez C0XMO.

  • Niezwłocznie aktualizować firmware tam, gdzie poprawki są dostępne.
  • Wycofać z użycia albo odizolować urządzenia niewspierane i end-of-life.
  • Wyłączyć zbędne usługi zdalne, zwłaszcza UPnP, Telnet i wystawione ADB.
  • Ograniczyć dostęp do paneli administracyjnych i usług zarządzających do sieci wewnętrznych lub VPN.
  • Wymusić silne i unikalne poświadczenia administracyjne.
  • Segmentować sieć, oddzielając urządzenia IoT od systemów krytycznych.
  • Monitorować zadania cron, zmiany w plikach startowych oraz procesy uruchamiane z katalogów tymczasowych.
  • Wdrożyć reguły detekcji dla komunikacji C2 i nietypowego ruchu wychodzącego UDP oraz TCP.
  • Analizować logi urządzeń brzegowych pod kątem prób eksploatacji portu 1900, restartów usług i nieautoryzowanych zmian konfiguracji.

W praktyce warto rozszerzyć działania threat hunting o wskaźniki charakterystyczne dla botnetów IoT, takie jak obecność binariów wieloarchitekturnych, skryptów propagacyjnych w Pythonie, modyfikacje cron, wpisy w plikach .bashrc i .bash_profile oraz procesy uruchamiane z katalogów /tmp, /var/tmp i /dev/shm. W środowiskach rozproszonych szczególnie ważne jest objęcie monitoringiem urządzeń, które zazwyczaj pozostają poza standardowym nadzorem SOC.

Podsumowanie

C0XMO pokazuje, że botnety IoT stają się bardziej modułowe, elastyczne i agresywne operacyjnie. Połączenie obsługi wielu architektur, wykorzystania starych, ale nadal skutecznych podatności, oddzielnego modułu skanującego oraz funkcji usuwania konkurencyjnego malware sprawia, że kampania stanowi poważne zagrożenie dla organizacji posiadających słabo zarządzane urządzenia brzegowe.

Najważniejszy wniosek dla zespołów bezpieczeństwa jest jednoznaczny: ryzyko nie wynika wyłącznie z nowych błędów, lecz także z wieloletnich podatności pozostawionych w eksploatowanych urządzeniach. C0XMO jest kolejnym dowodem na to, że stare luki w ekosystemie IoT nadal zapewniają cyberprzestępcom tani, skalowalny i skuteczny dostęp do infrastruktury wykorzystywanej później w operacjach DDoS.

Źródła

  1. Security Affairs — https://securityaffairs.com/193290/uncategorized/iot-botnet-c0xmo-adds-competitor-killing-capability.html
  2. FortiGuard Labs — https://www.fortinet.com/blog/threat-research/inside-cross-platform-propagation-of-new-gafgyt-variant-c0xmo
  3. NVD: CVE-2021-27137 — https://nvd.nist.gov/vuln/detail/CVE-2021-27137
  4. NVD: CVE-2015-2051 — https://nvd.nist.gov/vuln/detail/CVE-2015-2051
  5. BleepingComputer — https://www.bleepingcomputer.com/news/security/c0xmo-botnet-spreads-via-dd-wrt-router-flaw-kills-rival-malware/