Konfigurator ceny
Blog Webmistrz · poradnik

Strona WordPress zhakowana: co zrobić w pierwszej godzinie i jak nie dopuścić do powtórki

Przekierowania na obce strony, spam w wynikach Google, ostrzeżenie w przeglądarce, mail od hostingu o złośliwym kodzie. Włamanie na WordPress wygląda różnie, ale naprawa ma stałą kolejność. Opisujemy ją krok po kroku.

Strona WordPress po włamaniu, ekran z ostrzeżeniem przeglądarki i narzędziami do usuwania złośliwego kodu

Jak rozpoznać włamanie

  • Strona przekierowuje na obce witryny (kasyna, farmacja, "wygrałeś telefon"), często tylko z telefonu albo tylko z wyników Google, więc właściciel wchodzący z zakładki nic nie widzi.
  • W Google pojawiają się wyniki z Twojej domeny po japońsku, z tabletkami albo z markami obuwia, na podstronach, których nie tworzyłeś.
  • Przeglądarka pokazuje czerwony ekran "Ta witryna może być niebezpieczna", a Search Console wysyła powiadomienie w raporcie "Problemy z bezpieczeństwem".
  • Hosting zawiesił konto albo przysłał listę plików z złośliwym kodem.
  • W panelu WordPress jest administrator, którego nikt nie dodawał, albo wtyczka o nazwie przypominającej systemową.
  • Strona wysyła spam: nagle setki wiadomości z Twojej domeny, a Twoje normalne maile zaczynają trafiać do spamu.
  • Strona nagle zwolniła albo serwer zgłasza wysokie użycie procesora: skrypt kopie kryptowaluty albo rozsyła ataki na inne strony.

Pierwsza godzina: osiem kroków

  1. Nie usuwaj niczego na ślepo. Najpierw pełna kopia plików i bazy danych w obecnym stanie. Kopia potrzebna jest do analizy, skąd weszli, i na wypadek, gdyby czyszczenie coś zepsuło.
  2. Zmień hasła: do panelu WordPress (wszyscy administratorzy), do FTP/SFTP, do bazy danych (z aktualizacją wp-config.php), do panelu hostingu. Jeśli to samo hasło było gdzie indziej, tam też.
  3. Sprawdź listę użytkowników. Usuń nieznanych administratorów. Sprawdź adresy e-mail znanych kont, bo włamywacz często podmienia e-mail, żeby móc zresetować hasło.
  4. Porównaj pliki z czystą wersją. Rdzeń WordPressa, motywy i wtyczki z oficjalnego repozytorium da się porównać plik po pliku z oryginałem. Każda różnica to podejrzany. Narzędzia: WP-CLI (wp core verify-checksums, wp plugin verify-checksums --all) albo wtyczka skanująca.
  5. Znajdź pliki, których nie powinno być: pliki PHP w katalogu uploads, pliki o losowych nazwach w katalogu głównym, zmodyfikowany .htaccess z przekierowaniami, kod w wp-config.php poza konfiguracją. Szukaj po dacie modyfikacji z ostatnich dni i po typowych funkcjach (base64_decode, eval) w plikach, gdzie nie powinno ich być.
  6. Sprawdź bazę danych: tabela opcji (adres strony, aktywne wtyczki), treści wpisów ze skryptami, tabela użytkowników.
  7. Zaktualizuj wszystko: WordPress, motyw, wtyczki, PHP na hostingu. Usuń wtyczki i motywy, których nie używasz, także nieaktywne; nieaktywna wtyczka z luką nadal jest plikiem na serwerze.
  8. Zweryfikuj z zewnątrz: otwórz stronę w trybie prywatnym z telefonu i z wyniku Google, sprawdź raport bezpieczeństwa w Search Console, przeskanuj zewnętrznym skanerem.

Jak zdjąć ostrzeżenie Google

Gdy Google wykryje na stronie złośliwy kod lub spam, w Search Console w raporcie "Problemy z bezpieczeństwem" pojawia się opis problemu i przykładowe adresy. Po oczyszczeniu strony składa się tam prośbę o sprawdzenie, z krótkim opisem, co zostało zrobione. Google rozpatruje ją zwykle w ciągu kilku dni. Ostrzeżenie w przeglądarce znika po pozytywnej weryfikacji. Jeśli włamanie dodało tysiące spamowych podstron, po czyszczeniu powinny zwracać kod 404 lub 410; Google usunie je z indeksu z czasem, a usuwanie ręczne w Search Console przyspiesza to dla najważniejszych adresów.

Skąd zwykle wchodzą

Z danych, które widzimy przy czyszczeniu, w zdecydowanej większości przypadków to jedna z czterech dróg:

  • Nieaktualna wtyczka lub motyw z publicznie znaną luką. Boty skanują internet pod kątem konkretnych wersji i wchodzą automatycznie, bez udziału człowieka. Najczęstsza przyczyna.
  • Słabe hasło administratora albo login "admin" z hasłem z wycieku.
  • Motyw lub wtyczka "premium za darmo" pobrana z nieoficjalnego źródła, z wbudowaną furtką.
  • Inna strona na tym samym koncie hostingowym, zainfekowana wcześniej. Na współdzielonym koncie pliki jednej strony mają dostęp do drugiej.

Zabezpieczenia po czyszczeniu

WordPress.org publikuje przewodnik po zabezpieczaniu instalacji. Z niego i z praktyki wynika krótka lista, która zatrzymuje większość automatycznych ataków:

  • Automatyczne aktualizacje bezpieczeństwa rdzenia włączone; wtyczki i motyw aktualizowane co najmniej raz w tygodniu.
  • Logowanie dwuskładnikowe dla administratorów, limit prób logowania, login inny niż "admin".
  • Edycja plików z panelu wyłączona (DISALLOW_FILE_EDIT), wykonywanie PHP w katalogu uploads zablokowane.
  • Jedna strona na jedno konto hostingowe albo izolacja kont.
  • Kopie zapasowe poza serwerem, codziennie, z testem odtworzenia raz na kwartał.
  • Monitoring: ktoś lub coś sprawdza stronę regularnie, bo większość włamań właściciel zauważa po tygodniach, gdy spadł ruch z Google.

Co powiedzieć klientom i co z RODO

Jeśli strona ma formularz kontaktowy, konta użytkowników albo sklep, włamanie może oznaczać dostęp do danych osobowych: imion, adresów e-mail, telefonów, historii zamówień. RODO wymaga oceny, czy doszło do naruszenia ochrony danych, i jeśli tak, zgłoszenia do Prezesa UODO w ciągu 72 godzin od stwierdzenia naruszenia, a przy wysokim ryzyku dla osób także poinformowania ich. To nie jest porada prawna, tylko wskazanie, że czyszczenie strony nie zamyka tematu, jeśli w bazie były dane klientów.

Praktycznie: zachowaj kopię zainfekowanej strony (krok 1 z listy wyżej) jako dowód, zapisz, kiedy włamanie zauważono i co znaleziono, sprawdź w logach serwera, czy był dostęp do bazy danych lub eksport tabel. Jeśli sklep przechowywał hasła klientów (WordPress przechowuje je w postaci skrótu, nie jawnie, ale skróty da się łamać), po czyszczeniu wymuś reset haseł u wszystkich użytkowników. Komunikat do klientów powinien być krótki i rzeczowy: co się stało, jakie dane mogły być dotknięte, co zrobiliście, co klient powinien zrobić (zmienić hasło, uważać na podejrzane maile). Lepiej napisać go samemu, zanim klienci dowiedzą się z ostrzeżenia w przeglądarce.

Ile kosztuje czyszczenie

U nas czyszczenie strony WordPress po włamaniu kosztuje 199 zł netto za jedną stronę, cennik na stronie pogotowia WordPress. W cenie: kopia zapasowa przed pracą, usunięcie złośliwego kodu z plików i bazy, aktualizacja WordPressa, motywu i wtyczek, zmiana haseł i kluczy, zgłoszenie do Google, jeśli strona dostała ostrzeżenie, oraz lista zabezpieczeń do wdrożenia. Jeśli po czyszczeniu chcesz, żeby ktoś pilnował strony stale, pakiety opieki nad stroną zaczynają się od 139 zł/mies. i obejmują aktualizacje, kopie i monitoring. Sam monitoring dostępności, bez opieki, to 79 zł/mies.

Jeśli strona była czyszczona już kilka razy i za każdym razem infekcja wraca, zwykle oznacza to furtkę w motywie lub wtyczce albo inną zainfekowaną stronę na tym samym koncie. W takiej sytuacji taniej jest postawić stronę od nowa z czystych plików i przenieść tylko treści, niż czyścić po raz czwarty.

Najczęstsze pytania

Strona przekierowuje na inną stronę tylko z telefonu. Czy to włamanie?

Prawie na pewno tak. Złośliwy kod często sprawdza, czy odwiedzający wchodzi z telefonu albo z wyniku Google, i tylko wtedy przekierowuje, żeby właściciel wchodzący z zakładki na komputerze niczego nie zauważył.

Czy wystarczy przywrócić kopię zapasową?

Tylko jeśli kopia jest sprzed włamania i wiesz, którędy weszli. Przywrócenie kopii z tą samą dziurawą wtyczką kończy się ponowną infekcją w ciągu dni. Po przywróceniu trzeba zaktualizować wszystko i zmienić hasła.

Jak długo Google usuwa ostrzeżenie "Ta witryna może być niebezpieczna"?

Po oczyszczeniu strony i wysłaniu prośby o sprawdzenie w Search Console zwykle kilka dni. Jeśli Google znajdzie resztki złośliwego kodu, odrzuca prośbę i trzeba czyścić ponownie.

Czy po włamaniu stracę pozycje w Google?

Na czas ostrzeżenia ruch z Google spada prawie do zera, bo użytkownicy nie klikają w ostrzeżoną stronę. Po zdjęciu ostrzeżenia pozycje zwykle wracają w ciągu kilku tygodni, pod warunkiem że spamowe podstrony zostały usunięte.

Ile kosztuje usunięcie wirusa ze strony WordPress?

U nas 199 zł netto za jedną stronę, z kopią przed pracą, aktualizacjami, zmianą haseł i zgłoszeniem do Google. Stała opieka z aktualizacjami, kopiami i monitoringiem od 139 zł/mies.

Źródła cen i danych

Ceny rynkowe to orientacyjne dane z podanych źródeł, sprawdzone 8.10.2026. Nasze ceny pochodzą z aktualnego cennika webmistrz.pro i są cenami netto.

Czyszczenie po włamaniu za 199 zł →

Przeczytaj też