Backdoor, web‑shell, dropper, injector, C2 — słownik pojęć z raportu o infekcji strony

Po skanie dostajesz raport, a w nim werdykty: backdoor, wstrzyknięty kod, podejrzany. Hosting pisze o malware, forum o dropperach i C2, a Ty chcesz wiedzieć jedno: co to oznacza dla Twojej strony. Poniżej pojęcia, które pojawiają się w raportach CleanOps i w rozmowach o infekcjach, wyjaśnione tak, żeby dało się na ich podstawie podjąć decyzję.
Malware
Ogólne słowo na złośliwe oprogramowanie, czyli każdy kod, który działa wbrew woli właściciela systemu. Hostingi używają go w komunikatach („Malware detected”), bo nie wnikają w rodzaj. Wszystko poniżej to odmiany malware.
Backdoor
Dosłownie „tylne drzwi”. Kod, który pozwala atakującemu wrócić na serwer bez logowania i bez wykorzystywania luki po raz drugi. Może być osobnym plikiem albo kilkoma linijkami doklejonymi do istniejącego pliku. Dopóki backdoor istnieje, każda naprawa jest tymczasowa: atakujący wraca i wgrywa resztę od nowa.
W raporcie: werdykt backdoor oznacza plik, którego jedynym celem jest dostęp dla atakującego. Nie da się go „oczyścić”, bo nie ma w nim nic Twojego. Trafia do kwarantanny w całości.
Web‑shell
Najczęstsza postać backdoora: plik PHP, który po otwarciu w przeglądarce (z hasłem lub bez) daje atakującemu interfejs do serwera. Można przez niego przeglądać i edytować pliki, wgrywać nowe, wykonywać komendy systemowe, czytać bazę danych. Znane rodziny mają nazwy (WSO, c99, b374k, P.A.S.), ale większość to warianty bez nazwy, zaciemnione tak, żeby skanery sygnaturowe ich nie rozpoznały.
Pliki o nazwach radio.php, lock360.php, about.php, wp-login.php w Joomli, pojawiające się w allowlistach przejętego .htaccess, to web‑shelle.
Dropper
Kod, który sam nic nie robi poza wgrywaniem reszty. Jest mały, często kilka linii, i ściąga z serwera atakującego właściwy ładunek: web‑shell, mailer, kod przekierowujący. Dzięki temu atakujący może zmieniać ładunek bez ponownego włamania, a skaner widzi tylko niepozorny fragment.
W raporcie: dropper doklejony do początku index.php to klasyka. Naprawa polega na odcięciu doklejonego fragmentu i zachowaniu reszty pliku, który jest Twój.
Injector / wstrzyknięty kod
Injector to skrypt, który rozsiewa kod po wielu plikach naraz: dokleja ten sam fragment do każdego index.php, tworzy .htaccess w każdym katalogu, dopisuje <script> do każdego wpisu w bazie. Efekt to tysiące zainfekowanych plików o identycznej zmianie.
W raporcie: werdykt injected (wstrzyknięty) oznacza plik, który jest Twój, ale ma doklejony obcy fragment. Naprawa zachowuje plik i usuwa fragment; dla plików rdzenia przywracamy oryginał z wydania. Identyczne pliki dostają jeden werdykt, więc 6 tysięcy identycznych .htaccess to jedna decyzja, nie sześć tysięcy.
Podejrzany (suspicious)
Werdykt dla pliku, który ma cechy złośliwego kodu (zaciemnienie, nietypowe funkcje, dziwne miejsce), ale nie ma pewności. Stare rozszerzenia, biblioteki z zaciemnionym kodem na licencji, własne skrypty napisane „kreatywnie” potrafią tak wyglądać.
W raporcie: pliki podejrzane są zgłaszane, nie przenoszone automatycznie. Decyzja należy do człowieka: Twoja albo asystenta po sprawdzeniu kontekstu.
C2 (command and control)
Serwer atakującego, z którym komunikuje się malware na Twojej stronie: pobiera z niego polecenia i ładunki, wysyła skradzione dane. Adres C2 jest zwykle zaszyty w kodzie, często zaciemniony. W raporcie pojawia się jako „przekierowanie do serwera C2” albo „kontakt z obcym serwerem”. Zablokowanie adresu C2 w zaporze pomaga doraźnie, ale nie usuwa kodu, który będzie próbował się połączyć.
Cloaking
Pokazywanie innej treści różnym odwiedzającym: Googlebot dostaje spam, telefon dostaje przekierowanie, właściciel strony dostaje normalną stronę. Dlatego infekcja może być aktywna miesiącami, a właściciel niczego nie widzi. Szczegóły w naszych wpisach o przekierowaniach z telefonu i o spamie SEO.
Zaciemnienie (obfuskacja)
Zapisanie kodu tak, żeby człowiek i skaner go nie przeczytali, przy zachowaniu działania: kodowanie base64, kompresja gzinflate, rozbicie nazw funkcji na znaki, warstwy eval. Zaciemnienie samo w sobie nie jest dowodem infekcji (niektóre legalne biblioteki je stosują), ale w pliku w katalogu na obrazki jest.
Skimmer
Kod na stronie zamówienia w sklepie, który kopiuje dane karty i adresu wpisywane przez klienta i wysyła je atakującemu. Zwykle JavaScript ładowany z obcej domeny. Opisujemy to w osobnym wpisie o sklepach.
Kwarantanna
Przeniesienie pliku do katalogu, do którego serwer WWW nie wpuszcza żądań z sieci, z zachowaniem ścieżki. Plik przestaje działać, ale istnieje: można go obejrzeć, porównać, przywrócić, przekazać jako dowód. Przeciwieństwo kasowania.
Sygnatura
Wzorzec (fragment kodu, suma kontrolna), po którym skaner antywirusowy rozpoznaje znane malware. Działa szybko i pewnie dla znanych rodzin, nie działa dla nowych wariantów i zaciemnionego kodu. Dlatego sygnatury są pierwszą warstwą skanu, nie jedyną.
Porównanie z wydaniem
Sprawdzenie, czy plik rdzenia CMS‑a jest identyczny z plikiem z oficjalnej paczki tej samej wersji. Identyczny: czysty. Różny: podejrzany z definicji. Nieobecny w paczce: obcy. Najtańsza i najpewniejsza metoda oceny plików, które nie są Twoje, i podstawa pierwszej warstwy skanu w CleanOps.
Co z tego wynika
Jeśli raport mówi backdoor: plik idzie do kwarantanny i trzeba szukać, jak wszedł. Jeśli injected: Twój plik zostaje, obcy fragment znika. Jeśli suspicious: ktoś musi spojrzeć. A jeśli hosting mówi tylko „malware”, poproś o nazwę pliku; z samej nazwy pliku i katalogu da się zwykle powiedzieć, która z powyższych rzeczy to jest.


