Naprawianie ciągłego włamania do witryny WordPress

2016-08-12 10:32:04
Główny·Oprogramowanie·Naprawianie ciągłego włamania do witryny WordPress

Istnieje wiele powodów, dla których WordPress jest obecnie jednym z najczęściej używanych systemów zarządzania treścią (CMS). Jest łatwy w instalacji i utrzymaniu, bardzo przyjazny dla użytkownika i zawiera wiele darmowych motywów i wtyczek, które można zainstalować za pomocą kilku kliknięć przycisku myszy. Jednak jest również podatny na ataki hakerskie, jeśli na Twojej stronie działa nieaktualna wersja WordPressa lub wtyczki. Około rok temu odkryto lukę w popularnym skrypcie TimThumb PHP, który jest powszechnie używany do automatycznego zmieniania rozmiaru obrazów. Hakerzy uzyskali dostęp do wielu stron internetowych z WordPress z TimThumb i infekują wszystkie pliki PHP eval (kod base64_decode, aby przekierowywać wszystkich odwiedzających, którzy przychodzą z wyszukiwarki na wybrane strony).

Możesz łatwo usunąć złośliwe oprogramowanie gzinflate / eval (kody base64_decode ze wszystkich plików PHP, używając tego czystszego skryptu, aby odzyskać ruch z wyszukiwarki, ale niestety użycie samego skryptu nie wystarczy. Możesz zauważyć, że Twoja witryna została ponownie zhakowana i ponownie, nawet jeśli zaktualizowano do najnowszej wersji TimThumb, ponieważ haker umieścił już kilka backdoorów. Jedynym sposobem, aby zapobiec ciągłemu hakowaniu witryny, jest zlokalizowanie backdoora i usunięcie go z serwera. Backdoor może albo być samodzielnym plikiem lub po prostu fragmentem kodu osadzonym w legalnym pliku PHP. Wypróbowałem kilka wtyczek bezpieczeństwa do WordPressa i odkryłem, że wtyczka Wordfence dla WordPress jest jedną z najlepszych, ponieważ jest w stanie sprawdzić integralność rdzenia WordPress, wtyczek i plików motywów. Jeśli pliki wydają się różnić od oryginalnych wersji, zostaną pokazane w wynikach skanowania i można zobaczyć, jak zmieniły się pliki. Poza tym Wordfence może również stwierdzić, czy w katalogu instalacyjnym WordPress znajdują się nieznane podejrzane pliki.

Pamiętaj, że darmowa wersja Wordfence skanuje tylko podstawowe pliki WordPress. Jeśli chcesz skanować pliki motywów i wtyczek, musisz subskrybować co najmniej członkostwo Pro, które kosztuje 17, 95 USD rocznie. Chociaż członkostwo Pro daje ci tylko 1 klucz API premium, możesz go używać do skanowania wielu stron internetowych pojedynczo po zakończeniu skanowania, usuwając klucz klucza premium i odtwarzając nowy z obszaru Zarządzaj kluczami API Wordfence, aby go użyć na innej stronie internetowej.

Po usunięciu 2 plików backdoora znalezionych przez Wordfence, wszystkie witryny WordPress hostowane na moim wspólnym koncie hostingowym nadal zostały zainfekowane złośliwym kodem PHP po kilku dniach. Byłem naprawdę sfrustrowany i postanowiłem ręcznie sprawdzić dzienniki dostępu surowego znalezione w cPanel, chociaż nie jestem pewien, czego szukam. Surowe dzienniki dostępu zawierają tysiące linii, a przejście przez każdą linię dla 6 stron jest po prostu niemożliwe. Więc zrobiłem trochę filtrowania i pliki dziennika stały się znacznie mniejsze. Zobacz film instruktażowy poniżej, jak odfiltrować linie za pomocą Notepad ++.

Filtrowanie surowych dzienników dostępu

1. Odfiltruj żądania GET. Zasadniczo żądania GET służą wyłącznie do pobierania danych i nie mogą wyrządzić żadnych szkód. Ten filtr powinien zmniejszyć pliki dziennika o 80%.

2. Odfiltruj żądania POST dla wp-cron.php, które są wymagane przez twoją stronę. Wygląda to tak jak na poniższym przykładzie:

111.222.333.444 - - [25 / Jul / 2012: 01: 42: 14 +0800] „POST /wp-cron.php?doing_wp_cron=1343151734.5347619056701660156250 HTTP / 1.0” 200 - „-” „WordPress / 3.4.1; http://www.yourwebsite.com ”

3. Kontynuuj filtrowanie bezpiecznych żądań POST, aby dodatkowo zmniejszyć rozmiar pliku dziennika w celu łatwiejszej analizy.

Analizując pliki dziennika, zobaczyłem podejrzane żądanie, w którym rosyjski adres IP bez informacji o stronie odsyłającej i agencie użytkownika wysyłał żądanie POST co 10 sekund w pliku 404.php trzy razy.

Porównałem plik motywu 404.php z oryginalną wersją i zauważyłem dodatkowy wiersz kodu w górnej części pliku.

Skontaktowałem się z obsługą Wordfence i dostałem potwierdzenie od Marka Maundera, że ​​ten fragment kodu jest rzeczywiście złośliwy i zaktualizowali swój Wordfence, aby to wykryć. Po usunięciu tego backdoora wszystkie 6 witryn WordPress hostowanych na tym samym koncie hostingowym pozostawało czyste przez kilka tygodni bez zhakowania. Jak widać, brak tylko jednego backdoora może spowodować zhakowanie całej witryny WordPress na tym samym koncie hostingowym i bardzo ważne jest, aby upewnić się, że każdy backdoor został usunięty.

Chociaż Wordfence nie udało się całkowicie wyczyścić wszystkich tylnych drzwi w witrynach hostowanych pod moim kontem hostingowym, nadal uważam, że jest to jedna z najlepszych wtyczek zabezpieczających WordPress, ponieważ nie tylko sprawdza integralność plików WordPress. Wordfence jest bardzo często aktualizowany i zapewnia naprawdę świetne wsparcie.

Ważna uwaga : pamiętaj o zmianie całego hasła, które obejmuje konta użytkowników WordPress, FTP, cPanel i bazę danych po wyczyszczeniu backdoora. Pamiętaj także o aktualizowaniu wtyczek, motywów i wersji WordPress.

Wybór Redakcji