Złośliwy kod na stronie: jak zrozumieć, że zostałeś zainfekowany
„Strona zainfekowana” oznacza, że na niej pojawił się obcy kod: w plikach, w bazie lub w szablonie. Działa on cicho i zazwyczaj nie dla ciebie, a dla odwiedzających i robotów wyszukiwarek — pokazuje im to, czego nie publikowałeś.
Analogia dla właściciela strony
Jakby w zapleczu sklepu osiedlił się obcy. Nie łamie witryny — nie opłaca mu się, żebyś zauważył. Cicho korzysta z twojego adresu i robi duplikat klucza, aby wrócić po zmianie zamka. Dlatego czyszczenie bez szukania wejścia zazwyczaj kończy się ponowną infekcją.
Objawy, które są widoczne z zewnątrz
| Co zauważasz | Co zazwyczaj za tym stoi |
|---|---|
| Przejście z wyszukiwania prowadzi na obcą stronę, a bezpośrednie wejście — nie | Warunkowy przekierowanie według źródła przejścia |
| W wynikach twoich stron obce nagłówki — apteki, kasyna | Kloaking: robotowi oddawana jest nie ta strona, co człowiekowi |
| Ostry spadek ruchu bez zmiany pozycji | Ostrzeżenie przeglądarki „strona może być szkodliwa” na wejściu |
| Wiadomości z domeny masowo trafiają do spamu | Domena trafiła na czarne listy pocztowe z powodu spamu |
| Nowe pliki i administratorzy, których nie stworzyłeś | Backdoor i konto do ponownego wejścia |
Wyszukiwarka oznacza taką stronę, obniża zaufanie do domeny i wyklucza z indeksu zainfekowane strony; przy spamowych iniekcjach możliwe są także ręczne sankcje. Przywrócenie pozycji zajmuje tygodnie: najpierw wyszukiwarka i usługi reputacyjne muszą potwierdzić, że strona jest czysta.
Jak to wygląda w raporcie Security Shield
Jeśli znaleziono chociaż jeden objaw infekcji, raport zaczyna się nie od oceny, a od werdyktu „Zainfekowany” — czerwony poziom sygnalizacji świetlnej. Na zewnątrz skaner widzi obfuskowany JavaScript, skrypty wydobywcze, niewidoczne ramki, przechwytywanie pól formularzy, ukryte linki spamowe, objawy kloakingu i przekierowań, a także domenę na czarnych listach.
Część infekcji z zewnątrz nie jest zasadniczo widoczna: web shell w pliku, zmienione pliki rdzenia CMS, plik PHP w katalogu pobierania, zasady w .htaccess, kod w bazie, obcy administrator. To znajduje opcjonalny agent serwerowy — skrypt, który instalujesz na swoim hostingu. Więcej — w artykule o Security Shield.
Usunięcie znalezionych plików to za mało: jeśli punkt wejścia pozostał, kod wróci w ciągu godzin. Szukaj nie tylko samego pliku, ale i tego, przez co się dostał — przestarzały plugin, skradziony hasło FTP, obca strona na tym samym koncie hostingowym.
Co robić krok po kroku
- Zrób kopię „jak jest”. Pliki i baza w obecnej formie to zarówno dowód, jak i ubezpieczenie na wypadek nieudanej czyszczenia.
- Znajdź zmienione. Posortuj pliki według daty zmiany i porównaj rdzeń CMS i wtyczki z oficjalnymi wersjami.
- Przywróć czyste wersje. Rdzeń i rozszerzenia zainstaluj na nowo, szablon i pobierania czyść punktowo.
- Zaktualizuj CMS, motyw i wtyczki, usuń nieużywane i te, które wypadły z oficjalnego katalogu.
- Zmiana wszystkich haseł i kluczy: administratorzy, baza, FTP i SSH, panel hostingu, poczta. Sprawdź administratorów i zadania planera.
- Uruchom ponowne skanowanie — werdykt powinien się zmienić, a znaleziska z objawami infekcji znikną.
- Złóż wniosek o przegląd w usługach reputacyjnych i w panelu webmastera — oznaczenie nie znika samo.
Jak zapobiec ponownemu
Aktualizacje i minimalna liczba wtyczek dają więcej niż płatny „antywirus dla strony”. Utrzymuj surowe prawa do plików, zabroń wykonywania PHP w katalogu pobierania, włącz dwuskładnikowe zabezpieczenia dla panelu administracyjnego. Po czyszczeniu sprawdź strony przez SEO-audit, a publikacje — przez indeksację.