Jak usunąć wirusa z WordPressa? Instrukcja krok po kroku

Przekierowania na obce strony, spam w wynikach Google, alerty przeglądarki - tak wygląda zainfekowany WordPress. Pokazujemy, jak usunąć infekcję naprawdę do końca, a nie tylko objawy.

Po czym poznać infekcję

  • strona przekierowuje na obce serwisy (często tylko z Google albo tylko na telefonie),
  • w wynikach Google przy Twojej domenie pojawiają się obce treści (tabletki, kasyna, języki azjatyckie),
  • przeglądarka straszy „Ta strona może być niebezpieczna", a Search Console przysyła ostrzeżenie,
  • w katalogach pojawiają się pliki, których nikt nie wgrywał, a functions.php ma dziwne dopiski,
  • z serwera wychodzi spam - hosting blokuje wysyłkę.

Ważna zasada na start: samo usunięcie objawów nic nie daje. Jeśli nie znajdziesz furtki (backdoora), infekcja wróci w kilka dni - to najczęstszy błąd samodzielnych napraw.

Krok 1: zabezpiecz teren

  1. Zrób pełną kopię plików i bazy - nawet zainfekowaną. To materiał do analizy i polisa na wypadek pomyłki.
  2. Zmień hasła: panel WP (wszyscy administratorzy), FTP/SSH, panel hostingu, baza danych.
  3. Sprawdź listę użytkowników WordPressa - napastnicy dopisują własnych administratorów o niewinnych nazwach.

Krok 2: znajdź zainfekowane pliki

Trzy najskuteczniejsze tropy:

  • Data modyfikacji - posortuj pliki po dacie; wszystko zmodyfikowane w dniu ataku jest podejrzane,
  • Porównanie z oryginałem - rdzeń WordPressa i wtyczki z repozytorium można pobrać czyste i porównać plik po pliku; różnice = doklejony kod,
  • Sygnatury - skan antywirusem plikowym po stronie serwera; typowe znaleziska to wstawki eval(base64_decode(...)), pliki .php w katalogu uploads (tam nie ma prawa ich być) i „niewinne" nazwy typu wp-cache.php w złych miejscach.

Krok 3: wyczyść na czysto, nie „po łebkach"

  1. Rdzeń WordPressa wymień w całości - katalogi wp-admin i wp-includes skasuj i wgraj świeże z wordpress.org; to eliminuje wszystkie modyfikacje rdzenia za jednym razem.
  2. Wtyczki i motyw przeinstaluj z oficjalnych źródeł. Wtyczki spoza repozytorium („nulled", z torrentów) usuń bezpowrotnie - to najczęstsze źródło infekcji.
  3. wp-content/uploads przeskanuj pod kątem .php i usuń każdy taki plik.
  4. Przejrzyj bazę: tabela użytkowników (obcy admini), wp_options (podmienione adresy siteurl/home, doklejone skrypty), treści wpisów (ukryte linki - infekcje SEO potrafią doklejać tysiące spamowych wpisów).
  5. Sprawdź .htaccess i wp-config.php linia po linii - to ulubione miejsca na przekierowania i backdoory.

Krok 4: zamknij drogę powrotu

Infekcja skądś przyszła. Zanim ogłosisz sukces: zaktualizuj WordPressa, wszystkie wtyczki i motyw, usuń nieużywane, wymień wszystkie hasła jeszcze raz (po czyszczeniu!), włącz uwierzytelnianie dwuskładnikowe i przejdź nasz 12-punktowy hardening WordPressa. Sprawdź też, czy inne strony na tym samym koncie hostingowym nie są zainfekowane - infekcje chętnie przeskakują między sąsiadami.

Krok 5: posprzątaj reputację

  • W Search Console zgłoś stronę do ponownej oceny (sekcja „Problemy dotyczące bezpieczeństwa"),
  • sprawdź domenę na czarnych listach - po wysyłce spamu mogła tam trafić,
  • obserwuj indeks: spamowe podstrony powinny wypadać z Google w ciągu tygodni; pomóż im, zwracając 410 dla usuniętych śmieci.

Kiedy oddać to specjalistom

Jeśli nie masz wprawy w czytaniu PHP, znalezienie wszystkich backdoorów jest loterią - a każda nieusunięta furtka to powrót infekcji. Robimy to na co dzień: ręczna analiza plików i bazy, czysty rdzeń, domknięcie drogi ataku i zgłoszenie do Google - odwirusowanie WordPressa od 400 zł netto, analiza i wycena bezpłatnie. Strony naszych klientów hostingowych dodatkowo chronimy skanerami po stronie serwera - zobacz jak dbamy o bezpieczeństwo.

Powiązane poradniki

Wszystkie poradniki z kategorii: WordPress

Powiązane usługi McProdukt

Zobacz również