Masz wirusa na stronie?Zgłoś włamanie
← Blog
Bezpieczeństwo

Wirus na stronie WordPress: jak go rozpoznać i usunąć

Objawy włamania, co zrobić w pierwszej godzinie i dlaczego złośliwy kod tak często wraca kilka dni po „wyczyszczeniu” strony.

Wirus na stronie WordPress rzadko daje o sobie znać wprost. Najczęściej pierwszy sygnał przychodzi od klienta albo od Google, a nie od samej strony. Poniżej opisujemy, po czym poznać włamanie, co zrobić w pierwszej godzinie i dlaczego złośliwy kod tak często wraca. Przykłady pochodzą z włamań, które sprzątaliśmy u klientów. Nie podajemy ich nazw, bo to ich dane.

Objawy wirusa na stronie WordPress

  • Przekierowania na obce strony. Często tylko dla części odwiedzających, np. wchodzących z Google na telefonie. Ty w przeglądarce możesz niczego nie zauważyć.
  • Spam w wynikach Google. W wynikach dla Twojej domeny pojawiają się podstrony z tabletkami, kasynem albo podróbkami.
  • Nieznani administratorzy. Nowe konta z pełnymi uprawnieniami albo zwykłe konta klientów, którym ktoś nadał rolę administratora.
  • Ostrzeżenie w przeglądarce. Komunikat „Ta witryna może być niebezpieczna” albo ręczne działanie w Google Search Console.
  • Dodatkowy formularz karty w sklepie. Klienci zgłaszają, że po zakupach ktoś użył ich karty. To objaw skimmera, który przechwytuje dane płatnicze.
  • Dziwne pliki i błędy. Biała strona, błąd 403 przy logowaniu, nowe wpisy w .htaccess, pliki PHP w katalogu z obrazkami.

Masz wirusa na stronie? Usuwamy malware z WordPressa, WooCommerce i PrestaShop, szukamy źródła infekcji i zabezpieczamy stronę, żeby atakujący nie wrócił. Zaczynamy od razu po otrzymaniu dostępu. Pilne? Zadzwoń: +48 884 220 764. Zgłoś włamanie →

Co zrobić w pierwszej godzinie

  1. Nie kasuj wszystkiego od razu. Zrób kopię plików, bazy i logów serwera w obecnym stanie. Przyda się do ustalenia, którędy wszedł atakujący, i do ewentualnego zgłoszenia naruszenia.
  2. Odetnij dostęp. Zakończ wszystkie aktywne sesje, zmień hasła administratorów, bazy danych, FTP i panelu hostingu. Wygeneruj nowe klucze w wp-config.php.
  3. Przejrzyj listę użytkowników. Usuń konta, których nie znasz, i sprawdź role pozostałych.
  4. Sprawdź Google Search Console. Zakładka dotycząca bezpieczeństwa pokaże, czy Google oznaczył stronę jako niebezpieczną.
  5. Pomyśl o danych osobowych. Jeśli włamanie mogło dotknąć danych klientów, masz 72 godziny na zgłoszenie do UODO.
Hasła zmień jeszcze raz po wyczyszczeniu strony. Jeśli atakujący wciąż ma dostęp, zobaczy też nowe hasła ustawione w trakcie sprzątania.

Dlaczego wirus wraca po usunięciu?

To najczęstsza historia, z którą przychodzą do nas klienci: ktoś wyczyścił stronę wtyczką albo podmienił pliki, a po kilku dniach wszystko wraca. Powód jest prawie zawsze ten sam. Usunięto to, co widać, a źródło zostało. Kilka przykładów z naszych interwencji:

  • kod dopisany do wp-config.php odtwarzał złośliwy plik z kopii zapisanej w bazie danych (base64), więc samo kasowanie pliku nic nie dawało,
  • backdoor podszyty pod wtyczkę Akismet pozwalał wykonywać kod bez logowania i działał około 9 miesięcy,
  • po jednym włamaniu znaleźliśmy 27 webshelli, w tym pliki udające obrazki, ale zawierające kod PHP,
  • na serwerze z 41 stronami to samo ukryte konto administratora siedziało na 11 z nich,
  • w sklepie WooCommerce loader w bazie danych udawał Google Tag Manager i pobierał polecenia z blockchaina, więc klasyczne skanery go nie widziały.

Wtyczka bezpieczeństwa jest przydatna jako monitoring, ale sama rzadko wystarcza do posprzątania po włamaniu.

Jak usunąć wirusa z WordPressa krok po kroku

  1. Diagnoza. Szukamy webshelli, ukrytych administratorów, kodu w bazie danych, w wp-config.php, w zadaniach cron i w plikach udających wtyczki. To najdłuższy etap.
  2. Czysty rdzeń. Podmieniamy pliki WordPressa na oficjalne i porównujemy resztę z oryginałami. W jednym ze sklepów PrestaShop porównaliśmy w ten sposób 4269 plików rdzenia.
  3. Usunięcie wszystkich elementów infekcji. Także tych, które same się odtwarzają. Samo sprzątanie bywa krótkie: w jednym sklepie WooCommerce zajęło około 15 minut, a sklep był niedostępny przez około 2 minuty.
  4. Utwardzenie. Reguły zapory (np. WAF w Cloudflare), dwuetapowe logowanie dla administratorów, blokada wgrywania wtyczek z panelu.
  5. Monitoring. Codzienne sprawdzanie, czy pliki się nie zmieniły, z powiadomieniem e-mail. Kolejną próbę widać w godziny, a nie po miesiącach.

Po wyczyszczeniu strony oznaczonej przez Google trzeba zgłosić ją do ponownej weryfikacji w Search Console. Ostrzeżenie zwykle znika kilka dni po pozytywnej weryfikacji.

Jak nie dopuścić do kolejnego włamania

Większość włamań, które sprzątamy, zaczyna się od nieaktualnej wtyczki albo słabego hasła. Dlatego po sprzątaniu najważniejsze są rzeczy nudne: regularne aktualizacje, kopie zapasowe przechowywane poza serwerem, dwuetapowe logowanie i monitoring zmian w plikach. Jeśli nie masz na to czasu, możemy się tym zająć w ramach Pogotowia IT w abonamencie. Prowadzisz sklep? Zobacz też naszą opiekę nad sklepem WooCommerce.

Kiedy zlecić usunięcie wirusa specjalistom

Warto od razu, gdy strona przyjmuje płatności albo przechowuje dane klientów, gdy malware wrócił po pierwszym sprzątaniu albo gdy Google już oznaczył stronę. Każdy dzień zwłoki to utracone zamówienia i ryzyko wycieku danych. Tu opisujemy, jak wygląda nasze usuwanie malware z WordPressa.

Kamil Perzowski
Kamil Perzowski
CEO i co-founder ASAPDevs. Programuje i utrzymuje sklepy, aplikacje webowe i serwery klientów. LinkedIn · Zgłoś włamanie
Masz ten sam problem?

Masz wirusa na stronie?

Kamil Perzowski, ASAPDevs
Kamil Perzowski
CEO & Co-founder, ASAPDevs
Usuwamy malware z WordPressa, WooCommerce i PrestaShop, szukamy źródła infekcji i zabezpieczamy stronę, żeby atakujący nie wrócił. Zaczynamy od razu po otrzymaniu dostępu. Pilne? Zadzwoń: +48 884 220 764.
★★★★★
Współpraca z ASAPDevs przebiega bardzo profesjonalnie. Zleciliśmy przeniesienie naszego sklepu internetowego na nową platformę i cały proces przebiegł bardzo sprawnie. Specjaliści bez problemu wdrażają wszystkie modyfikacje.
Weronika S., opinia w Google
  1. Czytam zgłoszenie i odpisuję z pytaniami albo propozycją terminu rozmowy.
  2. Krótka rozmowa o zakresie, dostępach i terminie.
  3. Dostajesz plan i wycenę. Decydujesz, bez zobowiązań.

Wolisz od razu porozmawiać? +48 884 220 764 · [email protected]

Wysyłając formularz, przekazujesz nam dane, żebyśmy mogli odpowiedzieć. Szczegóły w polityce prywatności.

FAQ

Pytania i odpowiedzi

Jak sprawdzić, czy strona WordPress ma wirusa?

+
Sprawdź listę administratorów w panelu, zajrzyj do Google Search Console (zakładka Bezpieczeństwo i ręczne działania), wpisz w Google site:twojadomena.pl i poszukaj podstron, których nie tworzyłeś. Otwórz stronę na telefonie z wyszukiwarki, bo część przekierowań działa tylko dla ruchu z Google na urządzeniach mobilnych.

Czy wtyczka bezpieczeństwa usunie wirusa?

+
Często nie w całości. Skanery wtyczek dobrze znajdują znane pliki, ale gorzej radzą sobie z kodem w bazie danych, w pliku wp-config.php i z kontami administratorów podszytymi pod zwykłych użytkowników. Dlatego malware wraca po kilku dniach.

Dlaczego wirus wraca po usunięciu?

+
Bo usunięto objaw, a nie źródło. Zostaje ukryte konto administratora, webshell w katalogu z obrazkami albo kod, który zapisuje złośliwy plik ponownie. W jednym z naszych przypadków kod dopisany do wp-config.php odtwarzał plik zapisany w bazie danych.

Czy muszę zgłosić włamanie do UODO?

+
Jeśli atak mógł dotknąć danych osobowych, np. klientów sklepu, administrator ma 72 godziny od stwierdzenia naruszenia na zgłoszenie do UODO. Przyda się techniczny opis incydentu: co się stało, od kiedy i jakie dane mogły wyciec.

Ile trwa usunięcie wirusa z WordPressa?

+
Najdłużej trwa diagnoza, czyli znalezienie wszystkich elementów infekcji. Samo sprzątanie bywa krótkie: w jednym ze sklepów WooCommerce zajęło nam około 15 minut, a sklep był niedostępny przez około 2 minuty.

Przeczytaj też