Jak rozpoznać, że strona została zhakowana
Włamanie rzadko wygląda jak w filmach. Atakujący zwykle nie chce, żebyś je zauważył — strona ma działać dalej, tylko po cichu rozsyłać spam, przekierowywać część odwiedzających albo zbierać dane. Typowe sygnały to:
- ostrzeżenie w przeglądarce lub w wynikach Google, że strona może być niebezpieczna;
- komunikat w raporcie „Problemy dotyczące bezpieczeństwa” w Google Search Console;
- przekierowania na obce strony — często tylko na telefonach albo tylko dla osób wchodzących z wyszukiwarki, więc Ty możesz ich w ogóle nie widzieć;
- podstrony w wynikach wyszukiwania, których nie tworzyłeś, np. z reklamami leków albo tekstem w obcym języku;
- nowe konta administratorów w panelu, nieznane pliki na serwerze, hasła, które nagle przestały działać;
- wiadomość od dostawcy hostingu o zablokowaniu konta albo wysyłce spamu z Twojego serwera;
- sygnały od klientów: dziwne e-maile z Twojej domeny, problemy z zamówieniem, nieznane okienka na stronie.
Jeden objaw nie przesądza jeszcze o włamaniu, ale każdy jest powodem, żeby działać od razu, zamiast czekać, czy problem minie sam.
Pierwsza godzina: plan krok po kroku
Poniższa kolejność opiera się na zaleceniach CERT Polska dotyczących przejętej strony, uzupełnionych o kroki ważne dla małej firmy. Czasy są orientacyjne — liczy się kolejność, a nie stoper.
Minuty 0–10: zapisz, co widzisz, i zawiadom opiekuna strony
Zrób zrzuty ekranu ostrzeżeń, dziwnych podstron i przekierowań. Zapisz godzinę, adresy i to, jak trafiłeś na problem. Te informacje będą potrzebne do analizy, zgłoszeń i oceny, czy doszło do naruszenia danych osobowych. Od razu zawiadom osobę, która technicznie opiekuje się stroną, i dostawcę hostingu.
Minuty 10–20: odizoluj stronę
Celem jest odcięcie atakującego i ochrona odwiedzających. Najprościej włączyć tryb serwisowy albo czasowo wyłączyć stronę w panelu hostingu, tak żeby serwer zamiast zainfekowanej treści pokazywał komunikat o przerwie technicznej. Jeśli nie masz takiej możliwości, poproś o to dostawcę hostingu. Kilka godzin przerwy kosztuje mniej niż strona, która przez kolejne dni infekuje klientów albo rozsyła spam z Twojej domeny.
Minuty 20–30: zabezpiecz logi i obecny stan strony
Zanim cokolwiek usuniesz, zabezpiecz logi serwera (dostępu i błędów) oraz zrób kopię obecnego, zainfekowanego stanu plików i bazy danych. Przechowuj ją osobno i wyraźnie oznacz, żeby nigdy nie pomylić jej z czystą kopią. Logi bywają automatycznie nadpisywane, a bez nich trudno ustalić, którędy atakujący wszedł i czy miał dostęp do danych.
Minuty 30–45: zmień hasła i odbierz dostępy
Zmień hasła — najlepiej z urządzenia, co do którego masz pewność, że nie jest zainfekowane:
- do panelu hostingu i kont FTP, SFTP lub SSH;
- wszystkich kont administratorów w panelu strony;
- do bazy danych (pamiętaj, żeby zaktualizować je w konfiguracji strony);
- do skrzynek pocztowych, zwłaszcza tych, na które przychodzą linki do resetu haseł;
- do konta u rejestratora domeny.
Włącz logowanie dwuskładnikowe wszędzie, gdzie to możliwe. Usuń konta administratorów, których nie rozpoznajesz, i wyloguj wszystkie aktywne sesje. Jeśli te same hasła były używane gdzie indziej, zmień je również tam.
Minuty 45–60: oceń, czy chodzi o dane osobowe, i zgłoś incydent
Zastanów się, jakie dane mogły być dostępne: wiadomości z formularzy, konta klientów, zamówienia, lista subskrybentów newslettera, zgłoszenia rekrutacyjne. Zapisz wstępne ustalenia i moment, w którym stwierdziłeś, że do naruszenia mogło dojść — od niego liczy się termin opisany niżej. Na koniec zgłoś incydent do CERT Polska.
Czego nie robić po włamaniu
- Nie przywracaj od razu najnowszej kopii. Jeśli nie wiesz, kiedy nastąpiło włamanie, ostatnia kopia może już zawierać złośliwy kod albo ukryte konto atakującego.
- Nie kasuj wszystkiego na ślepo. Usunięte pliki i logi to utracone ślady. Bez nich nie dowiesz się, którędy nastąpił atak, więc może się on powtórzyć.
- Nie poprzestawaj na usunięciu widocznego spamu. Atakujący często zostawia furtkę, przez którą może wrócić po kilku dniach.
- Nie wysyłaj haseł zwykłym e-mailem osobie, która ma Ci pomóc — skrzynka też mogła zostać przejęta.
- Nie zwlekaj ze wstydu. Włamania zdarzają się także zadbanym stronom. Zwłoka zwiększa szkody i może oznaczać niedotrzymanie terminów prawnych.
RODO: kiedy zgłosić naruszenie do UODO (72 godziny)
Jeśli włamanie mogło dać dostęp do danych osobowych — imion, adresów e-mail, telefonów, adresów dostawy, treści wiadomości — może to być naruszenie ochrony danych osobowych w rozumieniu RODO. Obowiązki ma administrator danych, czyli zwykle Twoja firma, a nie wykonawca strony czy dostawca hostingu.
- Zgłoszenie do Prezesa UODO — bez zbędnej zwłoki, w miarę możliwości nie później niż w ciągu 72 godzin od stwierdzenia naruszenia. Zgłoszenia nie trzeba składać, jeśli jest mało prawdopodobne, by naruszenie skutkowało ryzykiem naruszenia praw lub wolności osób.
- Zgłoszenie wstępne — jeśli nie znasz jeszcze wszystkich szczegółów, przekazujesz to, co już wiesz, i uzupełniasz zgłoszenie później. Zgłoszenie po terminie powinno zawierać wyjaśnienie przyczyn opóźnienia.
- Zawiadomienie osób — jeśli naruszenie może powodować wysokie ryzyko dla osób, których dane dotyczą, trzeba je też bez zbędnej zwłoki zawiadomić, jasnym i prostym językiem.
- Dokumentacja — każde naruszenie, także niezgłaszane do urzędu, dokumentuje się wewnętrznie: co się stało, jakie były skutki i co zrobiono.
- Podmiot przetwarzający — firma, która przetwarza dane w Twoim imieniu (np. hosting lub opieka nad stroną), musi bez zbędnej zwłoki poinformować Cię o naruszeniu. Decyzja o zgłoszeniu do urzędu należy do Ciebie jako administratora.
Zgłoszenia dokonuje się elektronicznie, m.in. formularzem na platformie biznes.gov.pl. Aktualne zasady i formularz znajdziesz na stronie Urzędu Ochrony Danych Osobowych. Ocena ryzyka bywa trudna, dlatego przy jakichkolwiek wątpliwościach skonsultuj ją z inspektorem ochrony danych albo prawnikiem — najlepiej pierwszego dnia, a nie trzeciego.
Zgłoszenie do CERT Polska i na policję
CERT Polska to zespół reagowania na incydenty bezpieczeństwa działający w NASK. Osoby i firmy, które nie mają ustawowego obowiązku zgłaszania incydentów, mogą zrobić to dobrowolnie przez formularz incydent.cert.pl. Obowiązek zgłaszania poważnych incydentów mają podmioty objęte ustawą o krajowym systemie cyberbezpieczeństwa — podmioty kluczowe i ważne. Jeśli nie wiesz, czy Twoja firma do nich należy, sprawdź to z prawnikiem.
Zgłoszenie do CERT Polska pomaga w analizie zagrożeń i ostrzeganiu innych, ale nie zastępuje sprzątania strony. Jeśli poniosłeś szkodę finansową, padłeś ofiarą wyłudzenia albo ktoś żąda pieniędzy za „oddanie” strony lub danych, złóż też zawiadomienie na policji lub w prokuraturze.
Po pierwszej godzinie: sprzątanie i powrót do działania
Gdy sytuacja jest opanowana, zaczyna się właściwa praca. Jej zakres zależy od tego, czy wiadomo, kiedy i którędy atakujący wszedł.
- Analiza — przegląd logów, zmienionych i nowych plików, kont użytkowników, zadań uruchamianych automatycznie na serwerze i wpisów w bazie danych. Daty modyfikacji plików mogą być sfałszowane, więc nie wystarczy na nie patrzeć.
- Czysta wersja — jeśli znasz moment i sposób włamania, możesz przywrócić kopię sprzed incydentu. Jeśli nie, bezpieczniej odbudować stronę: czysta instalacja systemu i wtyczek, przeniesienie wyłącznie sprawdzonych treści.
- Usunięcie przyczyny — aktualizacja systemu, wtyczek i motywu, usunięcie nieużywanych dodatków, zablokowanie wykonywania skryptów w katalogu z przesłanymi plikami.
- Ponowna zmiana haseł — po usunięciu furtek, bo zmiana zrobiona w pierwszej godzinie mogła zostać podejrzana przez atakującego.
- Google — sprawdź raport „Problemy dotyczące bezpieczeństwa” w Search Console. Gdy wszystkie wskazane problemy są usunięte na wszystkich stronach, kliknij „Poproś o sprawdzenie” i opisz, co zrobiłeś. Według Google rozpatrzenie może potrwać kilka dni lub tygodni, a prośby nie należy ponawiać przed decyzją.
- Obserwacja — przez kolejne tygodnie zwracaj uwagę na logi, nowe konta i wyniki wyszukiwania dla swojej domeny.
Jeśli z Twojego serwera był wysyłany spam, sprawdź też, czy poczta firmowa nie trafiła na listy blokowanych nadawców. Wtedy wiadomości do klientów mogą trafiać do spamu albo w ogóle nie dochodzić.
Jak zmniejszyć ryzyko kolejnego włamania
Atakujący często wykorzystują znane luki w nieaktualnym oprogramowaniu — zwraca na to uwagę także Google w poradach dla właścicieli zhakowanych stron — oraz słabe albo powtarzane hasła. Dlatego najskuteczniejsza ochrona jest mało efektowna:
- regularne aktualizacje systemu, wtyczek i motywu, zawsze z kopią przed zmianą — szczegóły opisuję w tekście o aktualizacjach WordPressa i wtyczek;
- kopie zapasowe przechowywane poza serwerem strony, w kilku wersjach wstecz, żeby zawsze było do czego wrócić (więcej w artykule o tym, jak robić kopię zapasową strony);
- logowanie dwuskładnikowe i osobne konto dla każdej osoby, bez wspólnego „admina”;
- jak najmniej wtyczek i usunięcie tych, których nie używasz;
- monitoring dostępności i zmian, żeby o problemie dowiedzieć się od narzędzia, a nie od klienta.
To w skrócie zakres opieki technicznej. U mnie kosztuje od 249 zł netto miesięcznie i obejmuje aktualizacje, monitoring, ochronę, kopie zapasowe oraz drobne zmiany — dla stron, które wykonałem lub przejąłem. Jeśli Twoja strona została zhakowana i nie ma kto się nią zająć, napisz: najpierw ocenię sytuację, a potem zaproponuję zakres pracy.
To informacja ogólna, a nie porada prawna. Obowiązki związane z naruszeniem ochrony danych zależą od okoliczności konkretnego incydentu — w razie wątpliwości skonsultuj je z prawnikiem lub inspektorem ochrony danych.