Menu dostępności

Malware ukryty w serwerach Nginx

Specjaliści z firmy Sansec odkryli, że nowe złośliwe oprogramowanie atakuje popularny serwer webowy Nginx. Nowatorski kod wirusa wstrzykuje się do aplikacji hosta Nginx i jest prawie niewidoczny. Malware służy do kradzieży danych klientów z serwerów eCommerce, a takie typy ataków znane są w świecie cybersecurity pod szyldem „Magecart”. Stealer został znaleziony na serwerach w USA, Niemczech i Francji.

Poniżej opiszemy, jak znaleźć go na serwerze i usunąć.

Ciekawy jest przypadek odkrycia tego malware przez Sansec. Specjaliści ponoć umieścili znanego RATa (Remote Access Trojan) ze znanym chińskim serwerem podanym jako C2 i czekali na złośliwą komunikację. Nie musieli długo czekać, aż zgłosił się właśnie nieznany wcześniej malware. Nazwali go NginRAT.

NginRAT zasadniczo przywłaszcza sobie aplikację hosta Nginx w celu ukrycia swojej obecności. Aby to zrobić, NginRAT modyfikuje core systemu hosta Linux. Gdy legalny serwer WWW Nginx korzysta z jednej z podmienionych funkcjonalności (np. dlopen), NginRAT wstrzykuje się. Rezultatem jest trojan zdalnego dostępu, który osadzony jest w procesie Nginx. Na typowym serwerze internetowym eCommerce istnieje wiele procesów Nginx. A nieuczciwy Nginx wygląda tak samo jak inne. Jesteś w stanie dostrzec różnicę?


Analiza bardziej techniczna

Jak wspominaliśmy wcześniej, pojawienie się NginRAT na zainfekowanym systemie poprzedzone było infekcją innego znanego trojana o nazwie CronRAT, który komunikuje się ze swoim serwerem C&C o adresie 47[.]115.46.167:443 za pomocą niestandardowych poleceń. Jednym z nich jest „dwn”, które pobiera bibliotekę systemu Linux do „/dev/shm/php-shared”. Następnie CronRAT otrzymuje polecenie uruchomienia takiej komendy:

To „wołanie o pomoc” skutecznie wstrzykuje pasożyta NginRAT do aplikacji Nginx na infekowanym hoście. Więc co tu się dzieje? Poniższy schemat powinien trochę rozjaśnić sprawę.

Zgodnie z komendą, do Nginx przekazywane są dwie zmienne. Pierwsza to LD_L1BRARY_PATH. Zauważyłeś 1 literówkę? Zmienna ta zawiera klucz deszyfrujący dla ładunku RAT.

Druga to LD_PRELOAD, która jest funkcją debugowania Linuksa. Programiści używają jej do testowania nowych bibliotek systemowych. Jednak może być również używana do przechwytywania standardowych wywołań bibliotek Linux. Jak widać, złośliwa biblioteka php-shared przechwytuje dlopen i dlsym, których używa Nginx:

Gdy Nginx wywoła dlopen, kontrolę przejmuje już NginRAT. Usuwa plik php-shared, zmienia nazwę procesu na „nginx: worker process”, zbiera informacje o systemie i otwiera połączenie z serwerem C&C pod adresem 47[.]115.46.167. Następnie czeka na dalsze polecenia, prawdopodobnie „śpiąc” przez tygodnie lub miesiące.


Jak wykryć i usunąć NginRAT?

Ponieważ NginRAT osadza się w legalnym procesie hosta Nginx, standardowy „/proc/PID/exe” będzie wskazywał na Nginx, a nie na złośliwe oprogramowanie. Ponadto kod biblioteki nigdy nie jest zapisywany na dysku i nie można go sprawdzić po jego uruchomieniu. Jednak użycie LD_L1BRARY_PATH (z literówką) może ujawnić obecność tej konkretnej wersji NginRAT. Aby znaleźć jakiekolwiek aktywne procesy, uruchamiamy to polecenie:

Pokaże ono wszelkie złośliwe procesy. Następnie wystarczy zabić wszystkie za pomocą „kill -9 ”. Warto sprawdzić również zaplanowane zadania w CRON, gdyż mogą istnieć z powodu CronRAT.

Popularne

7-Zip podatny na NTFS Heap Overflow

7-Zip podatny na NTFS Heap Overflow

Jaroslav Lobačevski z GitHub Security Lab opublikował analizę nowej podatności odnalezionej w 7-Zip, oznaczonej jako GHSL-2026-140. Luka dotyczy parsera NTFS i prowadzi do uszkodzenia pamięci procesu, co w...
Repozytoria na GitHubie zainfekowane w ataku Megalodon!

Repozytoria na GitHubie zainfekowane w ataku Megalodon!

Ponad 5 500 repozytoriów na GitHubie zostało zainfekowanych złośliwym oprogramowaniem w ataku na łańcuch dostaw, wykorzystującym zautomatyzowane zatwierdzanie zmian. Kampania, nazwana „Megalodon”, opiera si...
YellowKey: koniec mitu o bezpieczeństwie BitLockera? Nowy zero-day pozwala ominąć szyfrowanie przy użyciu zwykłego pendrive’a

YellowKey: koniec mitu o bezpieczeństwie BitLockera? Nowy zero-day pozwala ominąć szyfrowanie przy użyciu zwykłego pendrive’a

Jeszcze w piątek opisywaliśmy nowe podatności typu zero-day, o nazwach YellowKey oraz GreenPlasma, uderzające w mechanizmy bezpieczeństwa systemów Windows. Najnowsze informacje pokazują jednak, że spr...
Jak zmienić nieznane/zapomniane hasło Administratora na Windows?

Jak zmienić nieznane/zapomniane hasło Administratora na Windows?

W tym artykule pokażemy, jak możemy zmienić hasło administratora na komputerze posiadając do niego fizyczny dostęp. Artykuł ten można potraktować także jako przestrogę dla firm, które nie zaimplementowały jeszcze odpo...
Gdy antywirus staje się bronią. Microsoft ostrzega przed aktywnie wykorzystywanymi lukami w Defenderze

Gdy antywirus staje się bronią. Microsoft ostrzega przed aktywnie wykorzystywanymi lukami w Defenderze

Systemy ochrony końcówek (endpoint protection) od lat stanowią pierwszą linię obrony przed cyberatakami. Paradoksalnie jednak coraz częściej to właśnie mechanizmy bezpieczeństwa stają się celem atak...