Wykrywanie i zabijanie Tindera

Mając na celu Internet Rzeczy, nowy wariant "Gaffyta" Pojawia się trojan

Mając na celu Internet Rzeczy, nowy wariant "Gaffyta" Pojawia się trojan. Ostatnio, Laboratorium bezpieczeństwa Huorong odkryło incydent związany z włamaniem wirusa, który po zbadaniu i analizie potwierdzono, że jest to nowy wariant wirusa trojana Gafgyt.

Mając na celu Internet Rzeczy, nowy wariant "Gaffyta" Pojawia się trojan

Ostatnio, Laboratorium bezpieczeństwa Huorong odkryło incydent związany z włamaniem wirusa, który po zbadaniu i analizie potwierdzono, że jest to nowy wariant wirusa trojana Gafgyt.

Gafgyt to program botnetowy IoT oparty na protokole IRC, który infekuje głównie systemy Linux Urządzenia IoT do przeprowadzania rozproszonych ataków typu „odmowa usługi”. (DDoS). Jest to największa poza rodziną Mirai aktywna rodzina botnetów IoT.

Po wycieku kodu źródłowego i przesłaniu go do GitHub w 2015, różne warianty i exploity pojawiały się jeden po drugim, stwarzając większe zagrożenie dla bezpieczeństwa użytkowników. Obecnie, Produkty zabezpieczające Huorong mogą przechwytywać i zabijać wyżej wymienione wirusy. Użytkownicy korporacyjni proszeni są o aktualizację bazy danych wirusów na czas w celu obrony.

Tinder detection and killing - Aiming at the Internet of Things, a new variant of the "Gafgyt" Trojan appears

1. Analiza próbki
Wirus najpierw zmienia nazwę swojego procesu na "/usr/sbin/dropbear" Lub "sshd" ukryć się:

process rename
zmiana nazwy procesu

Pomiędzy nimi, odnaleziono zaszyfrowany ciąg, a algorytmem deszyfrowania jest bajt XOR 0xDEDEFFBA. Kiedy jest używany, tylko te używane są odszyfrowywane indywidualnie, lecz tylko 4 faktycznie się odwołują:

Encrypted string and decryption algorithm
Zaszyfrowany ciąg znaków i algorytm deszyfrowania

 

Pierwsze odniesienie ma na celu jedynie wyświetlenie odpowiedniego ciągu na ekranie, a dwa środkowe odniesienia to operacje na procesie nadzorującym, mające na celu uniknięcie utraty kontroli w wyniku ponownego uruchomienia urządzenia:

decrypt and quote

odszyfruj i zacytuj

 

Pozostałe operacje wykonywane są w pętli, łącznie z inicjowaniem połączenia C2 (94.156.161.21:671), wysyłanie typu urządzenia platformy, odebranie polecenia powrotu i wykonanie odpowiedniej operacji modułu. I w porównaniu z kodem źródłowym ujawnionym przez Gafgy, format i przetwarzanie polecenia nie uległy większym zmianom, a format polecenia pozostaje niezmieniony "!*Komenda [Parametr]"

loop operation code

kod operacji pętli

 

W funkcji ProcessCmd, Łącznie 14 wykonywane są polecenia i uruchamiane są odpowiednie ataki DDoS, w tym: "HTTP", "Rozszerzenie CUDP", "UDP", "STD", "JSC", "TCP", "SYN" , "POTWIERDŹ", "CXMAS", "BOŻE NARODZENIE", "CVSE", "WSZYSTKO", "CNC", "czarnuch"

command screenshot - IoT security
zrzut ekranu polecenia - Bezpieczeństwo Internetu Rzeczy

 

Pomiędzy nimi, CUDP, UDP, JSC, i moduły TCP mogą wysyłać losowe ciągi znaków do określonego adresu IP i portu, i może rekonstruować pakiety TCP i UDP za pomocą samodzielnie zbudowanych nagłówków IP, aby ukryć źródłowy adres IP.

 

message structure
struktura wiadomości

 

Przypuszcza się, że przedrostek C jest skrótem słowa zwyczaj. Biorąc za przykłady CUDP i UDP, w oryginalnej wersji Gafgyt, parametry w wydanym poleceniu obejmują: ip, Port, czas, sfałszowane, rozmiar pakietu, pollinterval i inne wartości pól oraz bity flag Do konstruowania pakietów UDP. W tej próbce, Jednakże, zaobserwowane wyniki wskazują, że jest to zastosowanie tych parametrów przy różnym stopniu ograniczenia, co może zwiększyć elastyczność określonych typów ataków DDOS.

Porównanie CUDP i UDP

Funkcje innych modułów obejmują dodawanie dużej liczby ciągów User-Agent, które służą do uruchamiania poleceń HTTP w przypadku ataków CC:

Atak CC

Uwzględnione w przypadku ataków na serwery Source Engine firmy Valve: ("Silnik źródłowy" zapytania są częścią codziennej komunikacji między klientami i serwery gier przy użyciu protokołu oprogramowania Valve)

Ataki na branżę gier

W tym polecenia CNC, które mogą przełączać adres IP połączenia:

przełącz IP połączenia

Obejmuje ataki SYN i ACK:

Ataki SYN i ACK

W tym ataki powodziowe UDP STD:

Atak STD

Łącznie z atakiem świątecznym: (to jest, Atak na choinkę, ustawiając wszystkie bity flagi protokołu TCP na 1, zużywając w ten sposób więcej zasobów przetwarzania odpowiedzi systemu docelowego)

Świąteczny atak

Moduł NIGGA jest odpowiednikiem komendy KILLATTK w wersji oryginalnej, który powstrzymuje ataki DoSS, zabijając wszystkie procesy potomne z wyjątkiem procesu głównego

Moduł NIGGA

Analiza porównawcza
Funkcja ProcessCmd przechowująca główną logikę w kodzie źródłowym zawiera PING, GETLOKALIP, SKANER, E-MAIL, GRATY, UDP, TCP, TRZYMAĆ, KILLATTK, i moduły LOLNOGTFO. W wariancie przechwyconego tym razem exploita współistnieją jedynie uproszczone wersje modułów UDP i TCP. .

Oraz w operacji uzyskiwania lokalnego adresu IP, wersja oryginalna uzyskuje lokalny adres IP poprzez /proc/net/route i zwraca go poprzez moduł GETLOCALIP. W tym wariancie obserwuje się tę samą operację get, ale nie ma modułu GETLOCALIP i nie obserwuje się żadnych odniesień.

Uzyskaj lokalny adres IP

Warto zauważyć, że nie ma oryginalnej wersji modułu SCANNER używanego do blastowania SSH (Port 22) w tego typu próbce, i nie ma innych wariantów, które osadzają wiele "aplikacje/urządzenie" luki w zabezpieczeniach rozprzestrzeniające się poprzez Payload. Można zauważyć, że atakujący dzieli moduł propagacyjny na niezależne programy, i po pomyślnym zalogowaniu się do hosta ofiary, pobierze próbkę komunikacji do następnego etapu, wykonując kod powłoki, to jest, próbkę do analizy.

Wykonaj przykładowy kod powłoki

Na przykładzie próbek uzyskanych z tego samego źródła, osoba atakująca usunęła informacje debugowania z większości próbek, z wyjątkiem kilku, Jak na przykład: x86.

Podziel się swoją miłością

Zostaw odpowiedź

Twoj adres e-mail nie bedzie opublikowany. wymagane pola są zaznaczone *