Zainfekowany sklep internetowy - jak rozpoznać malware i oczyścić stronę

Łukasz Palej

Łukasz Palej

Technical Implementation Expert

Zainfekowany sklep internetowy najczęściej zdradzają przekierowania na obce strony, ostrzeżenie przeglądarki o niebezpiecznej witrynie, dziwne wyniki w Google albo nieznane konta administratorów w panelu. Żeby oczyścić stronę, trzeba zabezpieczyć kopię obecnego stanu, zmienić wszystkie hasła, zastąpić pliki systemu i wtyczek czystymi wersjami z oficjalnych źródeł, usunąć złośliwy kod z bazy danych i zamknąć lukę, przez którą malware się dostał. Na końcu zgłaszasz stronę do ponownej weryfikacji w Google Search Console.

Malware w sklepie to nie tylko problem wizerunkowy. Złośliwy skrypt na stronie płatności może przechwytywać dane kart klientów, ukryte strony ze spamem psują pozycje w Google, a ostrzeżenie w przeglądarce w praktyce zatrzymuje sprzedaż. Do tego hosting może zablokować konto, gdy z serwera zaczyna wychodzić spam. Poniżej opisujemy, jak rozpoznać infekcję, jakimi narzędziami sprawdzić sklep i jak krok po kroku go oczyścić, żeby problem nie wrócił po tygodniu.

[#wazne] W skrócie: malware w sklepie internetowym to złośliwy kod dodany do plików lub bazy danych strony, który przekierowuje klientów, wyświetla spam, kradnie dane albo rozsyła wiadomości. Rozpoznasz go po nietypowym zachowaniu strony, ostrzeżeniach Google i wynikach skanerów. Czyszczenie polega na odtworzeniu plików z czystych źródeł, usunięciu kodu z bazy, zmianie haseł i aktualizacji oprogramowania. W Vinson pomagamy sklepom na WooCommerce i innych platformach znaleźć infekcję, oczyścić stronę i zabezpieczyć ją na przyszłość.

Czym jest malware w sklepie internetowym

Malware, czyli złośliwe oprogramowanie, to w przypadku strony internetowej kod dopisany przez atakującego do plików sklepu, motywu, wtyczek albo do bazy danych. Nie jest to wirus w klasycznym sensie, który instaluje się na komputerze klienta - działa na serwerze lub w przeglądarce odwiedzającego. Najczęściej spotykane rodzaje infekcji w sklepach to:

  • Złośliwe przekierowania - część odwiedzających, często tylko z telefonów lub z wyników Google, trafia na stronę z oszustwem, hazardem albo fałszywą nagrodą.

  • Spam SEO - na serwerze pojawiają się tysiące ukrytych podstron z reklamami leków, podróbek czy kasyn, które Google indeksuje pod domeną sklepu.

  • Skimmer kart płatniczych - skrypt na stronie koszyka lub zamówienia przechwytuje dane wpisywane przez klientów i wysyła je na serwer przestępców.

  • Backdoor - ukryty plik, który daje atakującemu stały dostęp do serwera, nawet po zmianie haseł.

  • Rozsyłanie spamu - skrypt wysyła masowo wiadomości z serwera, przez co domena i adres IP trafiają na czarne listy.

Atakujący zwykle nie celują w konkretny sklep. Automaty skanują internet w poszukiwaniu znanych luk w popularnych wtyczkach, słabych haseł do panelu i nieaktualnych wersji oprogramowania. Mały sklep na WordPressie z kilkoma porzuconymi wtyczkami jest dla nich równie atrakcyjny jak duży, bo przejęcie go nic nie kosztuje.

Jak rozpoznać zainfekowany sklep - objawy malware

Infekcja często długo pozostaje niewidoczna dla właściciela, bo złośliwy kod potrafi ukrywać się przed zalogowanymi administratorami i pokazywać tylko gościom albo robotom Google. Dlatego warto znać sygnały, które powinny zapalić lampkę ostrzegawczą, i wiedzieć, co zwykle za nimi stoi:

[#chart:wit47a]

Pojedynczy objaw nie przesądza o infekcji. Nagłe spowolnienie może wynikać z ruchu robotów, a spadek pozycji z aktualizacji algorytmu. Jeśli jednak widzisz dwa lub trzy sygnały naraz, na przykład ostrzeżenie w Search Console i nowe pliki na serwerze, trzeba założyć, że sklep jest zainfekowany, i działać od razu.

Sygnały od klientów i partnerów

Część objawów widzą najpierw inni. Klient pisze, że przy płatności pojawiło się dodatkowe okno z formularzem karty. Kilku kupujących zgłasza nieautoryzowane transakcje po zakupie w sklepie. Hosting przysyła wiadomość o wykryciu złośliwych plików albo o zawieszeniu konta z powodu wysyłki spamu. Operator płatności informuje o podejrzeniu wycieku danych kart. Każdą taką wiadomość traktuj poważnie, nawet jeśli w panelu sklepu wszystko wygląda normalnie.

Bezpłatna konsultacja IT
Masz problem techniczny w firmie lub sklepie?
  • Diagnoza problemu i plan naprawy
  • Bezpieczeństwo, kopie zapasowe, poczta
  • Stała opieka IT dla e-commerce
Łukasz PalejKonsultację poprowadzi Łukasz Palej, Technical Implementation Expert

Jak sprawdzić sklep pod kątem malware - narzędzia do skanowania

Żaden skaner nie znajdzie wszystkiego, dlatego najlepiej łączyć narzędzia, które patrzą na sklep z zewnątrz, z tymi, które sprawdzają pliki na serwerze. Większość podstawowych narzędzi jest dostępna bezpłatnie:

[#chart:wit47b]

Skanery zewnętrzne widzą tylko to, co strona pokazuje odwiedzającym, więc nie wykryją backdoora schowanego w katalogu, do którego nikt nie linkuje. Z kolei skaner plików na serwerze nie zawsze rozpozna złośliwy skrypt dopisany w ustawieniach sklepu w bazie danych, na przykład w polu na kod śledzący. Dlatego przy podejrzeniu infekcji warto przejrzeć ręcznie także te miejsca, w których administrator może wkleić własny kod: ustawienia motywu, menedżer tagów, pola na skrypty w nagłówku i stopce.

Gdzie szukać infekcji w zależności od platformy

Zakres czyszczenia zależy od tego, na czym działa sklep. Inaczej wygląda sprawa przy własnej instalacji na hostingu, a inaczej w platformie w abonamencie:

PlatformaGdzie najczęściej siedzi malwareKto czyści
WordPress i WooCommerceWtyczki i motywy, katalog uploads, plik wp-config.php, tabele wp_options i wp_postsWłaściciel sklepu lub jego firma IT
PrestaShop, Magento i inne instalacje własneModuły, pliki szablonu, pliki konfiguracyjne, strona zamówieniaWłaściciel sklepu lub jego firma IT
Sklep w abonamencie (np. Shoper)Własne skrypty wklejone w szablon, zewnętrzne kody śledzące, przejęte konto administratoraDostawca odpowiada za serwery, właściciel za konta i dodany kod
Każda platformaMenedżer tagów i skrypty zewnętrznych usługOsoba z dostępem do tych narzędzi

Ostatni wiersz tabeli często umyka uwadze. Menedżer tagów, wtyczki czatu, narzędzia do opinii czy skrypty analityczne ładują kod z zewnętrznych serwerów na każdej stronie sklepu, także w koszyku. Jeśli ktoś przejmie konto w takim narzędziu albo sam dostawca padnie ofiarą ataku, złośliwy skrypt pojawi się w sklepie bez żadnej zmiany w jego plikach. Dlatego warto okresowo przeglądać listę skryptów ładowanych na stronie zamówienia, usuwać te, których nikt już nie używa, i chronić konta w menedżerze tagów weryfikacją dwuetapową.

Jak oczyścić zainfekowany sklep internetowy krok po kroku

Czyszczenie sklepu to nie tylko usunięcie jednego podejrzanego pliku. Jeśli nie znajdziesz backdoora i nie zamkniesz luki, atakujący wróci w ciągu kilku dni. Bezpieczna procedura wygląda tak:

[#chart:wit47c]

W sklepie na WordPressie pomocne jest narzędzie WP-CLI. Polecenie wp core verify-checksums porównuje pliki WordPressa z oficjalnymi sumami kontrolnymi, a wp plugin verify-checksums --all robi to samo dla wtyczek pobranych z katalogu WordPress.org. Różnice wskazują pliki, które ktoś zmienił. Wtyczki płatne i motywy trzeba porównać z czystą paczką pobraną od producenta.

Poza plikami sklepu sprawdź też miejsca, które łatwo przeoczyć: zadania cykliczne (cron) w panelu hostingu, które mogą co kilka minut odtwarzać usunięty złośliwy plik, plik .htaccess z regułami przekierowań, katalog na pliki przesyłane przez użytkowników, w którym nie powinno być plików PHP, oraz konta FTP i klucze SSH dodane bez Twojej wiedzy. W bazie danych szukaj fragmentów kodu JavaScript i ukrytych odnośników w treściach stron, opisach produktów i ustawieniach motywu.

Hosting zablokował sklep - co dalej

Gdy hosting wykryje malware lub wysyłkę spamu, często blokuje konto albo ogranicza wysyłkę poczty. To nie jest kara, tylko ochrona innych klientów serwera. Poproś pomoc techniczną o listę wykrytych plików i logi - to cenna wskazówka, od czego zacząć. Po oczyszczeniu hosting zwykle odblokowuje konto po ponownym skanie. Jeśli z serwera wychodził spam, sprawdź też, czy domena i adres IP nie trafiły na czarne listy, bo wtedy maile transakcyjne ze sklepu mogą lądować w spamie u klientów jeszcze przez jakiś czas.

Czy przywrócić sklep z kopii zapasowej?

Przywrócenie kopii sprzed infekcji bywa najszybszą drogą, ale ma dwie pułapki. Po pierwsze, trzeba wiedzieć, kiedy infekcja się zaczęła - kopia sprzed tygodnia może już zawierać backdoor. Po drugie, kopia sprzed kilku dni nie ma najnowszych zamówień, kont klientów i zmian w produktach, więc trzeba je odtworzyć. Kopia przywrócona bez zmiany haseł i aktualizacji wtyczek wróci do tego samego stanu, w którym sklep został zaatakowany. Jak wykonywać i odtwarzać kopie w WooCommerce, opisujemy w poradniku

[#uwaga] Jeśli malware mógł przechwytywać dane kart lub inne dane osobowe klientów, masz do czynienia z naruszeniem ochrony danych osobowych. Zgodnie z art. 33 RODO zgłaszasz je do Prezesa UODO bez zbędnej zwłoki, w miarę możliwości w ciągu 72 godzin od jego stwierdzenia (stan na kwiecień 2026 - sprawdź aktualne wytyczne UODO). Powiadom też operatora płatności i zgłoś incydent do CERT Polska.

Usunięcie ostrzeżenia Google po oczyszczeniu strony

Jeśli Google oznaczył sklep jako niebezpieczny, ostrzeżenie nie zniknie samo zaraz po czyszczeniu. W Google Search Console, w raporcie Problemy dotyczące bezpieczeństwa, po usunięciu malware zaznaczasz, że problem został rozwiązany, i prosisz o sprawdzenie. W prośbie opisz, co zostało usunięte i jak zamknięto lukę. Spam SEO wymaga dodatkowo usunięcia ukrytych podstron, tak żeby zwracały błąd 404 lub 410, i sprawdzenia mapy witryny. Pozycje w wyszukiwarce wracają stopniowo, w miarę jak Google ponownie odwiedza stronę.

Jak zabezpieczyć sklep przed ponownym malware

Oczyszczona strona bez zmian w zabezpieczeniach to tylko przerwa przed kolejną infekcją. Po czyszczeniu warto wdrożyć kilka zasad, które zamykają najczęstsze drogi ataku:

  • Regularne aktualizacje - systemu sklepu, wtyczek, motywu i wersji PHP na serwerze, najlepiej najpierw na kopii testowej.

  • Mniej wtyczek - usuń wtyczki nieużywane i porzucone przez autorów, nawet jeśli są wyłączone.

  • Weryfikacja dwuetapowa - na koncie administratora sklepu, hostingu i poczty.

  • Zapora aplikacyjna - filtr ruchu, który blokuje znane ataki, zanim dotrą do sklepu, np. w Cloudflare albo jako wtyczka bezpieczeństwa.

  • Monitoring zmian w plikach - powiadomienie, gdy na serwerze pojawi się nowy plik PHP albo zmieni się plik systemowy.

  • Kopie zapasowe poza serwerem - przechowywane dłużej niż kilka dni, żeby było z czego wybrać wersję sprzed infekcji.

Jak dodać do sklepu ochronę na poziomie DNS i zapory, opisujemy we wpisie

Jak Vinson pomaga oczyścić zainfekowany sklep internetowy

Vinson to agencja e-commerce z Bochni działająca od 2021 r., autoryzowany partner Shoper i certyfikowany partner Base, oceniana na 4,9/5 ze 171 opinii przez klientów z ponad 500 firm. W ramach

Najczęściej zadawane pytania

Jak sprawdzić, czy mój sklep internetowy ma wirusa?

Zacznij od raportu Problemy dotyczące bezpieczeństwa w Google Search Console i sprawdzenia adresu w narzędziu Stan witryny w Google Safe Browsing. Następnie przeskanuj stronę zewnętrznym skanerem, np. Sucuri SiteCheck, a pliki na serwerze skanerem hostingu lub wtyczką bezpieczeństwa. Sprawdź też listę administratorów w panelu sklepu i otwórz stronę z telefonu w trybie prywatnym.

Czy wystarczy usunąć zainfekowany plik?

Zwykle nie. Atakujący prawie zawsze zostawia kilka backdoorów w różnych miejscach i dopisuje kod do bazy danych. Usunięcie jednego pliku bez zmiany haseł, aktualizacji wtyczek i zamknięcia luki kończy się powrotem infekcji po kilku dniach.

Ile trwa czyszczenie sklepu z malware?

Prosty przypadek, w którym infekcja dotyczy kilku plików i jest znana przyczyna, można oczyścić w ciągu jednego dnia roboczego. Rozległe infekcje ze spamem SEO, wieloma backdoorami i kodem w bazie wymagają więcej czasu. Do tego dochodzi czas, w którym Google sprawdza stronę i zdejmuje ostrzeżenie.

Czy sklep na Shoperze może zostać zainfekowany?

Za serwery i system sklepu w abonamencie odpowiada dostawca, więc klasyczna infekcja plików jest mało prawdopodobna. Ryzyko przenosi się na konta administratorów i na kod, który sam wklejasz w szablon lub menedżer tagów. Dlatego także w takim sklepie potrzebna jest weryfikacja dwuetapowa i kontrola dodanych skryptów.

Czy po infekcji muszę powiadomić klientów?

Jeśli malware mógł przechwycić dane osobowe lub dane kart i wiąże się to z wysokim ryzykiem dla klientów, RODO wymaga zawiadomienia ich bez zbędnej zwłoki. Naruszenie zgłaszasz też do UODO, w miarę możliwości w ciągu 72 godzin. W razie wątpliwości skonsultuj ocenę ryzyka z inspektorem ochrony danych lub prawnikiem.

Jeśli podejrzewasz, że Twój sklep jest zainfekowany, albo chcesz sprawdzić go, zanim zrobi to Google,

Czy ten artykuł był pomocny? Oceń go
Bądź pierwszą osobą, która oceni

Łukasz Palej

Technical Implementation Expert

Wdraża integracje i rozwiązania IT dla e-commerce: sklepy, feedy produktowe, przepływ danych między systemami.

Wdraża integracje i rozwiązania IT dla e-commerce: sklepy, feedy produktowe, przepływ danych między systemami.

★★★★★
Współpracowałeś z Vinson?
Twoja opinia pomoże innym sprzedawcom wybrać sprawdzoną agencję. Zajmie Ci to minutę.
Oceń nas na Trustpilot →
Potrzebujesz pomocy z tym tematem?

Wsparcie IT dla firm i sklepów

Łukasz i nasz zespół pomogą Ci wdrożyć to na Twoim koncie - bez zobowiązań.

  • Analiza Twojego konta i obecnych działań
  • Konkretny plan poprawek do wdrożenia
  • Bezpłatna konsultacja – bez zobowiązań
4,9/5 ze 171 opiniiWsparcie IT dla firm i sklepów
Łukasz Palej - Technical Implementation Expert
Łukasz PalejTechnical Implementation Expert

Przeczytaj także

Więcej porad z naszej bazy wiedzy - przesuń, aby zobaczyć kolejne artykuły.

1 / 1

Masz pytania? Chętnie porozmawiamy!

Masz pytania? Chętnie porozmawiamy!

Odpowiadamy w ciągu 24 godzin w dni robocze. Pierwsza rozmowa jest bezpłatna i do niczego nie zobowiązuje.

Masz pytania? Chętnie porozmawiamy!

Odpowiadamy w ciągu 24 godzin w dni robocze. Pierwsza rozmowa jest bezpłatna i do niczego nie zobowiązuje.

Bartłomiej Stokłosa, CEO Vinson Agency

Bartłomiej Stokłosa

CEO & Founder

"Jeżeli czegoś nie da się zrobić, potrzebny jest ktoś, kto o tym nie wie - przyjdzie i to zrobi."

Bartłomiej Stokłosa, CEO Vinson Agency

Bartłomiej Stokłosa

CEO & Founder

"Jeżeli czegoś nie da się zrobić, potrzebny jest ktoś, kto o tym nie wie - przyjdzie i to zrobi."

Zadzwoń

574 944 685

Adres

Kazimierza Wielkiego 7/7

32-700 Bochnia

Wybierz dogodny termin w kalendarzu - bez wymiany maili w tę i z powrotem.

Napisz do nas

Opisz krótko, czego potrzebujesz - oddzwonimy lub odpiszemy w ciągu 24 godzin w dni robocze.

Łukasz PalejNa zapytanie odpowie Łukasz Palej, Technical Implementation Expert

Napisz do nas

Opisz krótko, czego potrzebujesz - oddzwonimy lub odpiszemy w ciągu 24 godzin w dni robocze.

Łukasz PalejNa zapytanie odpowie Łukasz Palej, Technical Implementation Expert