Po tym jak już udało Ci się określić charakter ataku należy przejść do kolejnego etapu:
Oceń szkody (spam)
Etap ten dzieli się na pięć części:
- Przygotowania
- Wstępne badanie treści spamu (ten punkt wykonasz przed zalogowaniem się na swój serwer)
- Szerzej zakrojone badania w internecie
- Ogólna ocena szkód w systemie plików
- Ustalenie zamiarów hakera
Przygotowania
- Utwórz dokument, w którym będziesz zapisywać informacje uzyskane na tym etapie. Te informacje to (przynajmniej) nazwa i lokalizacja każdego naruszonego pliku oraz opis, jak został on zainfekowany. Dokument ten będzie potrzebny w następnej części.
- Zapoznaj się z jedną z trzech metod, które nie wymagają logowania się na serwer internetowy.
- Wyszukiwanie z operatorem cache: w Google
- Użycie Pobierz jako Google
- Użycie cURL lub Wget
Te metody, które opisujemy poniżej, pomagają bezpiecznie zbadać strony zaatakowane przez hakerów. Nie otwieraj takich stron w przeglądarce, bo haker mógł umieścić na nich złośliwe oprogramowanie (otwarcie takiej strony w przeglądarce może spowodować szkody na Twoim komputerze).
Wyszukiwanie z operatorem cache: w Google
Pierwsza metoda polega na przeprowadzeniu wyszukiwania z operatorem cache: w Google. Pozwala ona zobaczyć treść strony zaindeksowaną wcześniej w Google. Aby przeprowadzić takie wyszukiwanie, wykonaj te czynności:
- W polu wyszukiwania Google wpisz „cache:” i URL: [cache:http://www.example.com/strona.html].
- Niepożądane zmiany wprowadzone przez hakera mogą być wyraźnie widoczne w kopii strony z pamięci podręcznej. W przeciwnym razie kliknij Wersja tekstowa.
- Zrób szczegółowy opis wszystkich szkód, które zauważysz.
Ta metoda nie zawsze sprawdza się przy witrynach, w których haker umieścił spamerskie treści (tzn. nie pomaga w badaniu spamu). Wynika to z tego, że w przypadku niektórych zaatakowanych stron wyszukiwarka Google może przywrócić ostatnią wersję, która została zapisana przed wprowadzeniem szkodliwych zmian przez hakera. W takich sytuacjach wyszukiwanie z operatorem cache: nie dostarcza przydatnych informacji o ataku.
Użycie Pobierz jako Google
Kolejna metoda to użycie funkcji Pobierz jako Google w Search Console, która pozwala zobaczyć w czasie rzeczywistym treści przesyłane do Google. Aby użyć Pobierz jako Google, wykonaj te czynności:
- Upewnij się, że witryna jest z powrotem online.
- Zaloguj się do Google Search Console.
- Wybierz witrynę zweryfikowaną w kroku 4.
- Kliknij Indeksowanie, a potem Pobierz jako Google.
- Wpisz URL strony, którą chcesz pobrać (np. strona.html). W menu możesz na ogół zostawić opcję Sieć. Następnie kliknij Pobierz.
- Jeśli pojawi się link Sukces, kliknij go, by zobaczyć treść strony w takiej postaci, jaką pobiera robot Google – Googlebot.
Podczas przeglądania treści poszukaj tych elementów:
- Spamerskie teksty i linki. Być może od razu je zauważysz. W przeciwnym razie wyszukaj typowe spamerskie słowa kluczowe, takie jak nazwy produktów farmaceutycznych czy słowa „tanie”, „darmowe”, „kasyno” i „amatorskie”.
- Zamaskowane spamerskie teksty, linki i polecenia metaodświeżania (które trudniej wykryć). Wyszukaj w kodzie strony takie słowa, jak base_64. Na przykład tekst
eval(base_64_decode("aisiYSlbYlaws..."))
może być używany do maskowania.
Jeśli metodą Pobierz jako Google nie wykryjesz szkód, haker mógł tak skonfigurować witrynę, by spamerska strona wyświetlała się o określonych porach dnia lub tylko tym użytkownikom, którzy przechodzą z konkretnej strony odsyłającej (np. strony wyników wyszukiwania) bądź korzystają z wybranej przeglądarki. Aby zasymulować taką sytuację, możesz użyć cURL lub Wget.
Użycie cURL lub Wget
Te bezpłatne narzędzia pozwalają wysyłać żądania HTTP z informacjami o stronie odsyłającej i przeglądarce. Na przykład:
$ curl -v --referer “http://www.google.com” --user-agent "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.30 (KHTML, na przykład Gecko) Chrome/12.0.742.112 Safari/534.30" http://www.example.com/strona.html
Wstępne badanie treści spamu
Skontroluj wymienione w Search Console przykładowe adresy URL zaatakowane przez hakerów. Ten punkt trzeba wykonać przed zalogowaniem się na serwer.
Wyłudzanie informacji
Jeśli witryna wyłudza informacje
- Otwórz Centrum wiadomości w Search Console.
- Skopiuj przykładowe adresy URL podane w wiadomości z powiadomieniem o wyłudzaniu informacji do swojego dokumentu z wynikami kontroli (utworzonego wcześniej).
- Użyj dowolnej z metod opisanych w sekcji Przygotowania powyżej (tzn. wyszukiwania z operatorem cache: w Google, Pobierz jako Google, cURL lub Wget), by przekonać się, jakie zmiany wprowadził haker na tych stronach. Wszystkie wykryte szkody opisz w dokumencie z wynikami kontroli.
Spamerskie treści
Jeśli witryna zawiera spamerskie treści (bez stron wyłudzających informacje)
- Otwórz Problemy z bezpieczeństwem w Search Console.
- Na stronie Problemy z bezpieczeństwem, w sekcji poświęconej atakom hakerów skontroluj wszystkie kategorie ataków na witrynę (np. Wstrzyknięta zawartość czy Wstrzyknięty kod). Aby uzyskać dodatkowe informacje o zaatakowanych adresach URL z wybranej kategorii, kliknij Pokaż szczegóły. (Szczegóły mogą zawierać przykładowe fragmenty treści wstrzykniętej przez hakera).
- Z każdej kategorii skopiuj te dane do dokumentu z wynikami kontroli:
- wszystkie przykładowe zaatakowane adresy URL, które znajdziesz na stronie Problemy z bezpieczeństwem, w sekcji poświęconej atakom hakerów;
- adresy wszystkich pozostałych stron, na których podczas kontroli wykryjesz szkody;
- szczegółowe informacje o adresach URL zaatakowanych przez hakera, np. rodzaj wyrządzonych szkód.
Poniżej znajdziesz informacje, które ułatwią Ci kontrolę każdej kategorii ataków:
Szerzej zakrojone badania w internecie
Przeprowadź wyszukiwanie z operatorem site: w Google, by znaleźć pozostałe strony, na których haker wyrządził szkody. Wyszukiwanie z operatorem site:
, na przykład [site:example.com], zwraca wyniki ograniczone do stron ze wskazanej witryny.
- Sprawdź, czy na znalezionych stronach są spamerskie treści. Jeśli strony w wynikach wyglądają na nienaruszone, uzupełnij zapytanie z operatorem site: o dodatkowe terminy, np. [site:example.com (tanie|darmowe|viagra|cialis|kasyno|amatorskie)].
- Zapisz informacje o wszystkich zaatakowanych stronach, które znajdziesz w wynikach zapytania z operatorem site:.
Ocena szkód w systemie plików
Teraz musisz zalogować się do systemu plików witryny, by przeprowadzić dokładniejszą kontrolę. Pamiętaj, że oprócz innych rzeczy haker mógł zmienić istniejące strony lub rekordy w bazie danych, utworzyć zupełnie nowe strony ze spamem, dopisać funkcje wyświetlania spamu na nienaruszonych stronach oraz zostawić sobie „furtki”, które (jeśli nie zostaną usunięte) pozwolą mu znowu dostać się do systemu witryny i dalej prowadzić złośliwe działania.
Jeśli witryna jest online, przed wykonaniem tego punktu możesz przełączyć ją w tryb offline.
- Jeśli uważasz, że masz nienaruszoną kopię zapasową witryny, ustal, które pliki zostały utworzone lub zmienione od czasu wykonania tej kopii:
$ diff -qr <bieżący_katalog> <katalog_kopii_zapasowej>
Na przykład:
$ diff -qr www/ kopie-zapasowe/pelna-kopia-zapasowa-20120124/
Możesz też użyć polecenia
$md5sum <bieżąca_strona> <strona_w_kopii_zapasowej>
Na przykład:
$ md5sum www/strona.html kopie-zapasowe/pelna-kopia-zapasowa-20120124/strona.html
- Wszystkie znalezione pozycje dodaj do listy zaatakowanych plików.
- Zaloguj się do systemu plików i skontroluj adresy URL wymienione w wynikach zapytania z operatorem site: oraz w wiadomości w Search Console.
- Szkody mogą wykraczać poza zaatakowaną stronę HTML, plik konfiguracyjny czy rekord w bazie danych. Może powodować je funkcja JavaScript lub PHP zapisana w osobnym skrypcie lub pliku systemowym. Także w tym przypadku zanotuj adres strony i opisz zmiany wprowadzone przez hakera.
- Przeprowadź szerszą kontrolę systemu plików, by wykryć i opisać wszystkie szkody powstałe w witrynie.
- W dziennikach serwera, dostępu i błędów poszukaj podejrzanej aktywności, np. nieudanych prób zalogowania się, nietypowych poleceń w historii (szczególnie na koncie root), tworzenia nieznanych kont użytkowników itd. Pamiętaj, że haker mógł zmienić te dzienniki, by zatrzeć po sobie ślady.
- Poszukaj przekierowań w plikach konfiguracyjnych, takich jak .htaccess i httpd.conf. Hakerzy często tworzą warunkowe przekierowania uzależnione od klienta użytkownika, pory dnia lub strony odsyłającej.
- Poszukaj zbyt szerokich uprawnień do zapisu folderów i plików, np. 777 (co oznacza zapis dozwolony dla wszystkich użytkowników). Hakerzy często manipulują uprawnieniami, mając nadzieję, że jeśli zmiany pozostaną niewykryte, będą mogli znowu dostać się do systemu witryny.
- Sprawdź foldery z uprawnieniami wyższymi niż 755 (rwxr-xr-x). Upewnij się, że takie uprawnienia faktycznie są potrzebne. W systemie typu Unix użyj polecenia:
find <wybrany_katalog> -type d -not -perm 755 -exec ls -ld {} \;
- Sprawdź pliki z uprawnieniami wyższymi niż 644 (rw-r–r–). Także w tym przypadku upewnij się, że takie uprawnienia faktycznie są potrzebne.
find <wybrany_katalog> -type f -not -perm 644 -exec ls -la {} \;
- Sprawdź foldery z uprawnieniami wyższymi niż 755 (rwxr-xr-x). Upewnij się, że takie uprawnienia faktycznie są potrzebne. W systemie typu Unix użyj polecenia:
- Jeśli korzystasz z bazy danych, jak najdokładniej skontroluj jej rekordy. Aby mieć lepszy wgląd w ich zawartość, użyj takich narzędzi jak phpMyAdmin.
Ustalenie zamiarów hakera
- Haker mógł chcieć wykraść informacje poufne lub wrażliwe o Tobie bądź użytkownikach witryny – np. korzystając ze stron wyłudzających informacje. W takim przypadku przeczytaj dostępne materiały na stronie antiphishing.org.
- Być może haker próbował wykorzystać wiarygodną witrynę, by poprawić pozycję swojej mało rzetelnej firmy online w rankingach bądź zwiększyć ruch na jej stronach, dodając spamerskie teksty lub prowadzące do niej linki. W takiej sytuacji wykonanie pozostałych kroków może rozwiązać problem.