(Nowy?) botnet DDoS w wersji na Linuksa i Windowsa

Data publikacji: 16/12/2013, Łukasz Siewierski

malware-icon

Na początku grudnia zauważyliśmy nowy botnet, którego boty występują w wersji zarówno na systemy z rodziny Linuks jak i Windows. Bot był instalowany, w przypadku systemów Linuks, w wyniku ataku typu brute-force na hasło użytkownika usługi SSH. Następnie atakujący loguje się na serwer, pobiera plik bota i go uruchamia. Bot jest dosyć prosty – jedyną jego funkcjonalnością jest możliwość wykonania ataków typu DDoS, a dokładnie DNS Amplification. Istnieje również wersja na systemy operacyjne z rodziny Windows, która instaluje nową usługę, aby utrudnić usunięcie bota z systemu. Wykrywalność wersji na systemy Windows jest wysoka: 34/48, przy czym wykrywalność wersji na systemy Linuks jest dosyć niska: 3/47.

malware-icon

Wersja na systemy z rodziny Linuks

Próbka, którą udało nam się uzyskać jest 32-bitowym, statycznie zlinkowanym plikiem ELF. Program uruchamia się w trybie demona i nawiązuje połączenie TCP z serwerem C&C na wysokim porcie. W pliku bota znajduje się zaszyfrowane IP serwera oraz port. Algorytm szyfrowania jest bardzo prosty, pętla realizująca odszyfrowywanie jest pokazana na zrzucie ekranu znajdującym się po lewej stronie.
Po uruchomieniu bot wysyła informacje o systemie operacyjnym (korzystając z funkcji uname) do serwera C&C, nie szyfrując ich, i czeka na polecenia. Z analizy wynika, iż możliwe są cztery typy poleceń, każde powoduje wykonanie ataku typu DDoS na zdefiniowany cel. Wśród możliwych ataków jest atak typu DNS Amplification, który powoduje wysłanie jednego żądania do zdefiniowanego serwera DNS, który zawiera 256 zapytań o różne, wygenerowane losowo bądź podane w poleceniu domeny. Istnieją również inne, niezaimplementowane, funkcje, które prawdopodobnie miały służyć atakom z wykorzystaniem protokołu HTTP.
Dodatkowo, w katalogu, z którego został uruchomiony bot, tworzony jest plik o nazwie fake.cfg, zawierający konfigurację interfejsów sieciowych maszyny. W trakcie wykonywania ataku przesyłany jest również status określający czy zadanie zostało przyjęte i czy jest wykonywane. Bot ma również możliwość sprawdzenia prędkość procesora (parsując /proc/cpuinfo), obłożenia systemu (parsując /proc/stat) oraz prędkości połączenia sieciowego (parsując /proc/net/dev).

Wersja na systemy z rodziny Windows

Ten sam typ bota jest również używany w przypadku ataków na systemy operacyjne z rodziny Windows. W tym przypadku infekcja jest dwuetapowa. Pierwszy malware tworzy plik C:Program FilesDbProtectSupportsvchost.exe i go uruchamia. Program ten rejestruje siebie jako nową usługę systemu Windows – DBProtectSupport, która ma startować automatycznie przy starcie systemu. Następnie wysyła zapytanie do serwera DNS 8.8.8.8 o domenę znajdującą się w TLD .com, z którą następnie się łączy, na wysoki port, inny niż w przypadku systemów Linuks, w celu otrzymania rozkazów. Zachowanie to jest inne niż zaobserwowane na systemach Linuks – adres IP nie jest zawarty w pliku wykonywalnym, zamiast tego używana jest nazwa domenowa.
W katalogu C:Program FilesDbProtectSupport tworzony jest plik fake.cfg zawierający te same dane, co w przypadku bota na systemy Linuks. Również podobnie, do serwera C&C przesyłana jest wersja systemu w postaci tekstowej. Ten plik konfiguracyjny, jak i fakt używania tego samego adresu IP serwera C&C przemawia za faktem, że w rzeczywistości jest to oprogramowanie stwrzone przez tę samą grupę.

Podsumowanie

Przeanalizowane pliki malware wydają się być ukierunkowane tylko na ataki DDoS. Oznacza to, że atakujący zainteresowani są zarażaniem maszyn, które posiadają dużą przepustowość łącza jak np. serwery. Stąd pewnie też wynika próba stworzenia dwóch różnych wersji malware – systemy z rodziny Linuks są często wykorzystywane jako systemy serwerowe.
Poniżej znajdują się skróty SHA-256 próbek, które przeanalizowaliśmy.

7307eecaa5a0dd0157b8d5abd50a7557f7a8a20dcf96508d4f969c6cfa05ced6 svchost.exe
c2a0e9f8e880ac22098d550a74940b1d81bc9fda06cebcf67f74782e55e9d9cc Windows
3b9cd35c61d8d8cf61bdd874a232bda0905991920e6177f7f497ed6e56af8238 Linux