Wykryj malware we wczesnym stadium i usuń je zanim zniszczy Twoją stronę lub zaszkodzi odwiedzającym.
Skanowanie malware i bezpieczeństwo WordPress idą w parze — regularne skanowanie pozwala wykryć infekcję zanim wyrządzi poważne szkody. Problem w tym, że złośliwe oprogramowanie często działa w ukryciu przez tygodnie lub miesiące, nie dając oczywistych oznak swojej obecności. Warto jednak znać sygnały, które powinny wzbudzić Twój niepokój.
Wizualne znaki infekcji: Na stronie pojawiają się nieznane treści — spam, linki do podejrzanych serwisów, reklamy kasyn lub farmaceutyków. Użytkownicy są przekierowywani na inne strony. Na stronie wyświetla się komunikat Google o zagrożeniu bezpieczeństwa ("Ta strona może zaszkodzić Twojemu komputerowi"). Wygląd strony zmienia się bez Twojej ingerencji — pojawia się nowy pasek lub elementy, których nie dodawałeś.
Techniczne sygnały zagrożenia: Zauważasz nowe konta administratorów, których nie tworzyłeś. W logach serwera widać dziwne żądania — dostęp do nieistniejących plików, próby wykonania poleceń. Strona działa znacznie wolniej niż zazwyczaj (złośliwy kod może wysyłać spam lub kopać kryptowalutę). Pliki w katalogu WordPress zostały zmodyfikowane — data ostatniej modyfikacji jest niezgodna z Twoją ostatnią aktualizacją. Dostawca hostingu lub Google Search Console wysyła alert o wykryciu złośliwego oprogramowania.
Nawet jeśli nie widzisz żadnych z powyższych objawów, nie oznacza to, że WordPress jest bezpieczny — najgroźniejszy malware jest ten, który nie daje o sobie znać. Dlatego regularne skanowanie jest kluczowym elementem bezpieczeństwa WordPress, niezależnie od tego, czy zauważasz coś podejrzanego.
Do dyspozycji masz kilka kategorii narzędzi do skanowania WordPress — każde działa na innym poziomie i wykrywa inne typy zagrożeń. Dla kompleksowej ochrony warto używać przynajmniej dwóch narzędzi z różnych kategorii.
Wtyczki skanujące (działają od wewnątrz WordPress): Wordfence Security — skaner plików rdzenia, wtyczek, motywów i bazy danych z bazą sygnatur złośliwego oprogramowania aktualizowaną przez Defiant. MalCare — zaawansowany skaner chmurowy, który nie obciąża serwera. Sucuri Security — prosta wtyczka z monitorem integralności plików i skanerem zdalnym.
Skanery online (działają z zewnątrz, bez dostępu do plików): Sucuri SiteCheck (sitecheck.sucuri.net) — bezpłatny skaner, który sprawdza stronę z zewnątrz, szuka złośliwego kodu w HTML i JavaScript oraz weryfikuje, czy domena figuruje na czarnych listach Google, McAfee, Yandex i innych. VirusTotal (virustotal.com) — możliwość skanowania URL strony przez ponad 70 różnych silników antywirusowych.
Narzędzia serwerowe: Imunify360 — zaawansowany system ochrony dostępny w panelu Plesk na hostingu WordPress w smartxhosting.pl. Skanuje pliki na poziomie serwera, niezależnie od WordPressa. ClamAV — darmowy skaner antywirusowy działający z wiersza poleceń, dostępny na wielu hostingach.
Zaloguj się do panelu WordPress. W menu bocznym znajdź i kliknij "Wordfence". Przejdź do zakładki "Scan". Kliknij duży niebieski przycisk "START NEW SCAN". Wordfence rozpocznie pełne skanowanie plików rdzenia WordPress, wtyczek, motywów, a także przeskanuje bazę danych w poszukiwaniu złośliwych linków i wstrzykniętego kodu. Pełne skanowanie trwa zazwyczaj od 2 do 20 minut, zależnie od rozmiaru instalacji i liczby plików.
Podczas skanowania Wordfence wyświetla pasek postępu i bieżące wyniki — możesz śledzić, które pliki są właśnie sprawdzane i czy pojawiają się znaleziska. Na końcu zobaczysz pełne podsumowanie wyników z podziałem na kategorie: Critical Issues (problemy krytyczne), Warnings (ostrzeżenia) i Results (inne wyniki). Każde znalezisko zawiera opis problemu, ścieżkę do pliku i sugerowane działanie.
Dla każdego krytycznego znaleziska kliknij "Details", aby zobaczyć szczegóły. Jeśli Wordfence wskazuje, że plik rdzenia WordPress różni się od oryginału, możesz kliknąć "Repair" — Wordfence pobierze oryginalny plik z repozytorium WordPress i zastąpi nim zmodyfikowany. Dla złośliwego kodu w plikach użytkownika (motywach, wtyczkach) możesz kliknąć "Delete" lub ręcznie edytować plik przez Plesk Menedżer plików. Przed usunięciem lub modyfikacją pliku zawsze zrób backup przez Plesk.
W sekcji Wordfence → All Options → Scan Options and Scheduling znajdziesz ustawienia automatycznego skanowania. W wersji darmowej Wordfence sam ustala harmonogram skanowania (zazwyczaj raz dziennie). Upewnij się, że automatyczne skanowanie jest włączone — przełącznik "Automatically scan" powinien być w pozycji ON. Możesz też dostosować poziom skanowania: Basic (szybki, mniej zasobów), Standard (zalecany) lub High Sensitivity (wolniejszy, bardziej dokładny).
Ręczna weryfikacja plików WordPress jest przydatna, gdy masz konkretne podejrzenia dotyczące infekcji lub gdy wyniki automatycznego skanowania są niejednoznaczne. Dostęp do plików możesz uzyskać przez Menedżer plików w Plesk lub przez FTP/SFTP.
Przede wszystkim zwróć uwagę na pliki z podejrzaną datą modyfikacji — jeśli widzisz, że plik functions.php aktywnego motywu był modyfikowany w dniu, kiedy nic nie robiłeś na stronie, to sygnał alarmowy. W Plesk Menedżerze plików możesz sortować pliki według daty modyfikacji — wyświetl katalog wp-content/themes/[aktywny-motyw] i check daty.
Znaki złośliwego kodu w plikach PHP to między innymi: funkcje eval(), base64_decode(), str_rot13(), gzinflate(), gzuncompress() używane razem z długimi zakodowanymi ciągami znaków — to klasyczna technika obfuskacji złośliwego kodu. Szukaj też ukrytych plików PHP w katalogach z obrazkami (/wp-content/uploads/) — tu pliki PHP nie powinny się normalnie znajdować. Jeśli widzisz pliki .php w katalogu uploads, to prawie zawsze oznacza infekcję.
Porównaj sumy kontrolne plików rdzenia WordPress z oryginalnymi. Możesz pobrać tę samą wersję WordPress z wordpress.org i porównać pliki lub skorzystać z narzędzia WP-CLI: wp core verify-checksums (jeśli masz dostęp SSH przez Plesk).