Infekcja letsmakeparty3 / sdfsd234 – analiza przypadku

Infekcja letsmakeparty3 / sdfsd234 – analiza przypadku

Jak wygląda omawiany atak

Doklejenie szkodliwego kodu do pliku header.php w motywie
W pliku header.php doklejany jest następujący fragment kodu:

W tej formie oczywiście trudno jest zrozumieć, co ten kod dokładnie robi. Dlatego go sobie rozszyfrujmy i przeformatujmy, aby stał się bardziej czytelny i zrozumiały:

Teraz widać już, że wklejka ta ma za zadanie:

    1. Pobrać z pliku /n.txt z serwera atakującego kod PHP i umieścić go w pliku sdfsd234
    2. Plik ten ma być odświeżany co 6400 sekund.
    3. Pozwolić atakującemu na zdalne uruchamianie kodu PHP na serwerze – atakujący musi wysłać request o określonej konstrukcji, a skrypt pobierze wskazany przez niego plik, zapisze go lokalnie na serwerze, uruchomi, a następnie usunie, aby nie zostawić po sobie śladów.

Zawartość pliku sdfsd234

Skrypt ten wykonuje następujące akcje (uwaga – przypominam, że zawartość tego pliku jest odświeżana co niecałe 2 godziny, więc jego działanie może zmieniać się w czasie):

    1. Szuka wszystkich plików *.php, a następnie szuka w nich tagu head i dokleja w nim wywołanie skryptu JS.
    2. Szuka wszystkich plików index. , a następnie dokleja do nich bardzo podobny kod, jaki znajduje się w pliku header.php .
    3. Szuka wszystkich plików *.js i dokleja do nich kod, który dokleja na stronie wywołanie zdalnego pliku JS.
    4. Szuka wszystkich plików wp-config.php i wyparsowuje z nich dane połączenia do bazy danych (stałe DB_NAME , DB_HOST , DB_USER , DB_PASSWORD ). Następnie nawiązuje połączenie z bazą danych, odnajduje tabelę pasującą do zapytania %post% i do każdego wpisu dokleja kod JS, który odpowiedzialny jest za przekierowywanie osoby odwiedzające stronę.

Wszystkie powyższe poszukiwania prowadzone są w obrębie wszystkich plików, do których skrypt ma dostęp (wychodząc przy tym poza katalog danej domeny – jeśli na serwerze znajduje się wiele stron, to wszystkie zostaną zainfekowane).

Po tych operacjach, atakujący ma już pełną kontrolę nad zaatakowaną stroną. Może m. in.:

  • w dowolnym momencie wysłać do strony kod PHP i wykonać go na serwerze,
  • śledzić każdego odwiedzającego stronę,
  • zbierać wszystkie dane, które na tej stronie zostaną przez odwiedzających podane,
  • przekierować odwiedzających stronę na wskazany przez atakującego adres.

Jak dochodzi do infekcji?

Tego jednoznacznie nie da się ustalić. Wiemy już natomiast, że:

    1. Plik header.php modyfikowany jest nawet kilka tygodni wcześniej niż zaczyna się faktyczne działanie szkodliwych skryptów.
    2. Infekcja występuje także na stronach, które mają zainstalowanego Wordfence’a.
    3. Na wszystkich zainfekowanych stronach, które do nas trafiły, znajdowały się nieaktualne wtyczki i motywy z TF. Z dużym prawdopodobieństwem źródłem infekcji jest nieaktualna wersja jednej z wtyczek, z których te motywy korzystają.

Czy moja strona jest zainfekowana?

To akurat dość łatwo można sprawdzić. Zaloguj się na FTP i sprawdź, czy w folderze głównym strony znajduje się plik sdfsd234 oraz czy plik header.php Twojego motywu nie zawiera pokazanego wyżej fragmentu kodu.

Jeśli znajdziesz któryś z tych plików lub Twoja strona już przekierowuje odwiedzających na inne strony (w czyszczonych przez nas przypadkach były to strony „Wygrałeś konkurs!”), to Twoja strona jest zainfekowana i czeka Cię żmudne czyszczenie skutków infekcji i zabezpieczenie strony, aby atak się nie powtórzył.

Autor: Krzysztof Dróżdż

Źródło tekstu: https://wpmagus.pl/artykuly/infekcja-letsmakeparty3-ga-sdfsd234-analiza-przypadku/