
🔍 16 Oznak, że wordpress został zhakowany: od oczywistych do ukrytych
Strona niby działa. Ale ruch spadł o połowę, w panelu administracyjnym pojawiły się obce konta, a hosting wysyła e-maile z niepokojącymi tytułami. Włamanie na WordPressa rzadko wygląda jak rozbita witryna sklepowa. Częściej są to ciche, niezauważalne zmiany, które miesiącami pozostają bez uwagi.
Według danych Wordfence w 2025 roku odnotowano ponad 11 tysięcy podatności we wtyczkach i motywach, a boty skanują świeże luki średnio w ciągu pięciu godzin od publikacji łatki. Dobra wiadomość: jeśli wiedzą Państwo, gdzie patrzeć, infekcję można wychwycić na wczesnym etapie.
Poniżej 16 konkretnych oznak, od rzucających się w oczy po ledwo wyczuwalne, oraz plan odzyskiwania krok po kroku.
💡 Szybki przegląd:
- Proszę sprawdzić pocztę hostingową, listę użytkowników i folder główny strony przez FTP, to trzy punkty, w których włamanie widać od razu.
- Proszę obejrzeć frontend: zmienioną treść, przekierowania na obce strony, ostrzeżenia Google Safe Browsing i spam wychodzący.
- Proszę zajrzeć do ruchu, wyników wyszukiwania i skanera bezpieczeństwa: spadek odwiedzin, obce meta tagi w Google i alerty Wordfence.
- Objawy pośrednie: spowolnienie, przeciążenie serwera, podejrzane zadania crona i niewyjaśnione błędy, to powód do natychmiastowego sprawdzenia.
Dlaczego WordPress to cel numer jeden
WordPress obsługuje 41% wszystkich stron, według danych W3Techs na lipiec 2026 roku. Dziesiątki tysięcy wtyczek i motywów tworzą ogromną powierzchnię ataku. Bot znajduje podatność w popularnej wtyczce i w ciągu nocy przeczesuje setki tysięcy instalacji: dziewięć na dziesięć infekcji odbywa się bez udziału człowieka.
1-4. Dostęp i serwer: pierwsze sygnały alarmowe
Powiadomienia hostingu o złośliwym kodzie
Większość hostingodawców skanuje strony w poszukiwaniu wirusów i phishingu. Na e-mail z tematem „Malware detected" lub „Podejrzana aktywność" proszę reagować natychmiast: hosting ma prawo objąć stronę kwarantanną.

W e-mailu zazwyczaj podana jest ścieżka do zainfekowanego pliku, to gotowy punkt wyjścia do czyszczenia.
Nieznani użytkownicy w panelu administracyjnym
Proszę otworzyć Użytkownicy → Wszyscy użytkownicy. Każde konto z uprawnieniami administratora, redaktora lub autora powinno być Państwu znane. Obce konta, to czerwona flaga, szczególnie z uprawnieniami wyższymi niż subskrybent.
Proszę usuwać nieznajomych, ale najpierw sprawdzić, czy nie tworzyli treści: WordPress zaproponuje przekazanie wpisów innemu autorowi. Po wyczyszczeniu proszę zmienić wszystkie hasła: do panelu administracyjnego, FTP, bazy danych i panelu hostingowego.
Zablokowanie dostępu do panelu administracyjnego
Hasło nagle przestało działać, a Państwo go nie zmieniali. Atakujący mógł zmienić dane logowania lub utworzyć ukrytego administratora bezpośrednio przez bazę danych.
Proszę odzyskiwać dostęp przez link Nie pamiętasz hasła? lub phpMyAdmin, resetując hash w tabeli wp_users. Natychmiast po zalogowaniu: pełny audyt kont i zmiana haseł wszędzie, WP, FTP, hosting, baza danych.
Podejrzane pliki na serwerze
Proszę zajrzeć do katalogu głównego instalacji, a także do folderów wp-admin, wp-includes i wp-content. Pliki takie jak wp-config.bak, class-mail.php lub db-cache.php, to klasyczni „obcy" służący do wgrywania złośliwego kodu. Na Stack Overflow opisano typowy przypadek: obcy plik PHP w katalogu głównym, zamaskowany jako systemowy.
Znaleźli Państwo podejrzany plik, atakujący ma dostęp do systemu plików. Proszę zmienić hasło FTP, usunąć obce pliki i rozpocząć poszukiwanie punktu wejścia.
5-8. Frontend i treść: co widzą odwiedzający
Zmieniona treść strony
Najbardziej zauważalna i najbardziej niebezpieczna dla reputacji oznaka. Trzy typowe przejawy:
- japońskie, chińskie lub arabskie znaki w tekście stron;
- wyskakujące okienka z reklamami pornograficznymi lub kasynami;
- ukryte linki do podejrzanych stron, widoczne tylko w kodzie źródłowym.
Proszę sprawdzić stronę główną i kilka podstron w różnych przeglądarkach. Ukryte linki są wstawiane przez display:none lub position:absolute; left:-9999px, bez przejrzenia kodu źródłowego nie da się ich zauważyć.
Przekierowania na obce strony
Użytkownik otwiera Państwa adres URL i trafia na stronę z reklamą, phishingiem lub sklepem z podróbkami. Przekierowanie konfiguruje się przez .htaccess, iniekcję JavaScript w header.php lub ukrytą wtyczkę.
Proszę sprawdzić .htaccess pod kątem nieznanych dyrektyw RewriteRule i Redirect. Proszę otworzyć stronę z urządzenia mobilnego: niektóre przekierowania działają tylko dla ruchu mobilnego.
Ostrzeżenie Google o niebezpiecznej stronie
Gdy odwiedzający wchodzi, widzi czerwony ekran: „Ta strona może zawierać szkodliwe oprogramowanie".

Proszę sprawdzić status przez Google Safe Browsing. Jeśli strona jest oznaczona, konieczne jest pełne czyszczenie i ponowne sprawdzenie przez Google Search Console. Bez tego pozycje w wynikach wyszukiwania wyzerują się w ciągu kilku dni.
Wychodzący spam z Państwa domeny
Znajomi skarżą się, że z Państwa adresu leci spam. Zaatakowana strona wysyła tysiące e-maili przez ukryte skrypty PHP, wykorzystując Państwa domenę. Hosting może zablokować funkcję pocztową lub całe konto.
Proszę sprawdzić logi wysyłania w panelu hostingowym i przeskanować stronę pod kątem ukrytych wywołań mail() w nieznanych plikach PHP.
9-12. Ruch, wyszukiwanie i bezpieczeństwo
Nagły spadek ruchu
Ruch organiczny z Google gwałtownie spadł bez widocznych przyczyn, wyszukiwarka mogła obniżyć pozycję lub wykluczyć stronę z wyników.
Proszę zestawić wykres w Google Search Console z datami w sekcjach Security Issues i Manual Actions. Zbieżność w czasie, to gwarancja włamania.
Zniekształcone metadane w wynikach wyszukiwania
Googlują Państwo swoją stronę i widzą w wynikach japońskie hieroglify, linki do viagry lub dziwne opisy. To japoński spam SEO: haker wstrzykuje ukryte linki i przepisuje meta tagi, aby promować swoje towary.

Proszę sprawdzić kod źródłowy przez Ctrl+U: szukać nieznanych <title>, <meta name="description"> i ukrytych linków. Często są one wstawiane bezpośrednio w header.php lub przez złośliwą wtyczkę.
Alarm skanera bezpieczeństwa
Wordfence, Solid Security i podobne narzędzia skanują pliki pod kątem sygnatur złośliwego kodu. E-mail z tematem „Scan Results: 3 critical problems found", to nie jest fałszywy alarm. Proszę potraktować go tak samo poważnie, jak powiadomienie od hostingu.
Skaner wskaże plik i typ zagrożenia: backdoor, phishing, wstrzyknięcie spamu.
Blokada przez program antywirusowy lub blokadę reklam
Antywirus odwiedzającego lub uBlock Origin nagle blokuje Pana/Pani stronę. To bardzo wczesny sygnał: sygnatury blokujących aktualizują się szybciej, niż Google indeksuje strony, a ostrzeżenie pojawia się na kilka dni przed czerwonym ekranem Safe Browsing.
Proszę poprosić znajomego z włączonym antywirusem, aby wszedł na stronę. Dokładny tekst ostrzeżenia podpowie, który plik lub domena spowodował reakcję.
13-16. Pośrednie objawy
Podejrzane zadania cron
WP-Cron planuje publikacje, sprawdzanie aktualizacji, wysyłanie e-maili. Hakerzy dodają własne zadania: rozsyłanie spamu, łączność z serwerem dowodzenia, pobieranie złośliwego kodu.
Proszę sprawdzić zadania cron przez wtyczkę WP Crontrol lub w tabeli wp_options po kluczu cron. Nieznane zadanie o podejrzanej nazwie i interwale 60 sekund to powód do natychmiastowego dochodzenia.
Spowolnienie strony bez widocznych przyczyn
Strona nagle ładuje się kilka razy dłużej niż zwykle. Złośliwe skrypty wydobywają kryptowalutę, rozsyłają spam, biorą udział w atakach DDoS na cudze zasoby. Proszę sprawdzić obciążenie w panelu hostingu: procesor obciążony niemal w całości przy zwykłym ruchu wskazuje na obcą aktywność.
Przeciążenie serwera przy niskim ruchu
Podobny scenariusz: odwiedzalność według Google Analytics jest w normie, a serwer się dusi. Logi serwera pokażą mnóstwo żądań POST do jednego pliku, prawdopodobny backdoor do rozsyłania spamu lub brute-force na cudze strony.
Błędy bez widocznej przyczyny
Biały ekran śmierci, 500 Internal Server Error, błędy połączenia z bazą danych, złośliwy kod mógł uszkodzić pliki systemowe. Jeśli błędy pojawiają się i znikają same, atakujący być może tymczasowo zaciera ślady.
Proszę włączyć WP_DEBUG w wp-config.php i sprawdzić debug.log w wp-content. Konkretny komunikat błędu często wskazuje na skompromitowany plik.
Co robić, gdy strona została zhakowana: pięć kroków

Krok 1. Backup wszystkiego. Proszę zapisać zainfekowaną stronę w obecnym stanie, do analizy i na wypadek awarii podczas czyszczenia. Pełna kopia plików przez FTP i zrzut bazy danych. Proszę niczego nie usuwać przed wykonaniem backupu.
Krok 2. Proszę odizolować stronę. Proszę włączyć tryb konserwacji przez .maintenance lub wtyczkę. Odwiedzający nie powinni trafiać na zainfekowane strony.
Krok 3. Proszę znaleźć punkt wejścia. Proszę uruchomić skaner bezpieczeństwa, Wordfence lub Sucuri SiteCheck, i skonfrontować wyniki z logami serwera. Punktem wejścia w dziewięciu na dziesięć przypadków jest przestarzała wtyczka, temat z luką lub skompromitowane hasło.
Krok 4. Proszę oczyścić stronę. Proszę usunąć szkodliwe pliki, zastąpić pliki systemowe WordPress świeżymi z oficjalnego archiwum, zmienić wszystkie hasła i klucze bezpieczeństwa w wp-config.php.
Krok 5. Wniosek o ponowne sprawdzenie. Proszę przesłać stronę do ponownego sprawdzenia w Google Search Console w celu zdjęcia czerwonego ekranu i poinformować hostingodawcę o zakończeniu czyszczenia.
Jak chronić WordPress przed włamaniem: podejście warstwowe

Jeden środek nie uratuje, ale pięć warstw razem czyni stronę ekonomicznie nieopłacalnym celem dla botnetów.
- Proszę aktualizować wszystko i od razu. Rdzeń WordPress, tematy, wtyczki: każdy niezaaktualizowany komponent to potencjalna dziura. Proszę włączyć autoaktualizacje dla wersji pomniejszych.
- Wtyczka bezpieczeństwa. Darmowy Wordfence zapewnia podstawę: firewall, skaner, ochronę logowania przed brute force. Dla większości stron to wystarczy.
- Jedna strona, jedno konto hostingowe. Włamanie na jedną stronę na współdzielonym koncie otwiera dostęp do wszystkich. Proszę izolować projekty.
- Regularne backupy. Codzienne, automatyczne, z przechowywaniem poza serwerem. W idealnym przypadku, wdrożenie jednym kliknięciem.
- Silne hasła i uwierzytelnianie dwuskładnikowe. Hasło o długości 16+ znaków i 2FA przez Wordfence lub Solid Security eliminują praktycznie wszystkie próby złamania.
Jeśli wideo się nie załadowało, proszę otworzyć na YouTube. Autor WPDev pokazuje pełny cykl: od wykrycia infekcji do ręcznego czyszczenia i konfiguracji ochrony.
⁉️🤔 Często zadawane pytania
Czy można wyczyścić stronę samodzielnie, bez programisty?
Tak, jeśli pracuje Pan/Pani pewnie z FTP i phpMyAdmin. Plan: backup, skaner Wordfence, usunięcie zainfekowanych plików, zastąpienie plików systemowych WordPress świeżymi, zmiana wszystkich haseł. Jeśli w raporcie skanera jest więcej niż kilkanaście plików lub są backdoory w bazie danych, proszę zwrócić się do specjalisty. Usługa Sucuri oferuje czyszczenie „pod klucz", aktualne cenniki na stronie.
Wordfence czy Solid Security: co wybrać do ochrony?
Wordfence wygrywa jakością sygnatur i darmową funkcjonalnością: firewall, skaner, ochrona logowania są w wersji free. Solid Security (dawniej iThemes Security, przemianowany w 2024 roku) jest mocny w hartowaniu (hardening), automatycznym zamykaniu typowych dziur bez ręcznej edycji konfiguracji. Dla małej strony wystarczy darmowy Wordfence. Dla projektu z płatnościami online, Wordfence Premium z aktualizacją sygnatur w czasie rzeczywistym.
Jak często należy skanować stronę w poszukiwaniu wirusów?
Codzienne automatyczne skanowanie, co najmniej. Wordfence free robi to raz na trzy dni, premium, codziennie. Ręczne sprawdzenie zewnętrznym skanerem, takim jak Sucuri SiteCheck, raz w tygodniu to dobra praktyka: minuta czasu, niezależne spojrzenie.
Co robić, jeśli hosting już zablokował stronę?
Proszę skontaktować się z pomocą techniczną i poprosić o tymczasowy dostęp w celu czyszczenia, wielu hostingodawców daje dostęp FTP nawet przy blokadzie. Proszę działać zgodnie z planem pięciu kroków, w pierwszej kolejności usuwając pliki wskazane przez hostingodawcę. Po czyszczeniu proszę przesłać hostingodawcy wynik skanowania lub raport Sucuri.
Ile czasu zajmuje przywrócenie strony po włamaniu?
Typowa infekcja, jeden do trzech plików, spam-inject, od godziny do trzech z backupem i weryfikacją. Poważne włamanie z backdoorami w bazie danych, od jednego do trzech dni roboczych. Pozycje w Google po zdjęciu czerwonego ekranu odbudowują się od kilku dni do dwóch, trzech tygodni.
Włamanie nie krzyczy, ono szepcze: co warto zapamiętać
List od hostingodawcy, obcy użytkownik w panelu administracyjnym, gwałtowny spadek ruchu, każdy sygnał z osobna można zrzucić na przypadek. Ale dwie, trzy oznaki razem to praktycznie gwarantowana infekcja.
Proszę sprawdzić teraz trzy punkty: listę użytkowników w panelu administracyjnym, folder główny strony przez FTP i status w narzędziu do sprawdzania witryn Google. Pięć minut. Jeśli jest czysto, proszę skonfigurować codzienne backupy i autoaktualizacje.
Znalazł Pan/Pani coś podejrzanego, proszę nie zwlekać. Każdego dnia zainfekowana strona traci pozycje w wynikach wyszukiwania i ryzykuje blokadą ze strony hostingodawcy. Proszę podzielić się w komentarzach: od czego zaczynali Państwo czyszczenie i jaka oznaka była pierwszym sygnałem ostrzegawczym?



