Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: "Krzaki" w kodzie PHP
Forum PHP.pl > Forum > PHP
gargamel
Witam
Spotykałem się ostatnio z "dziwnymi" znaczkami, w plikach .php
http://www.db153095.ugu.pl/krzaki.html
Co to może byćquestionmark.gif
darko
To nie są raczej krzaki spowodowane złym kodowaniem. Wygląda jak uszkodzony plik. Miałeś ostatnio awarię dysku? Skanowałeś i naprawiałeś sektory jakimś narzędziem?
gargamel
Włamanie na serwer, i właśnie przypuszczam że to jest tego wynikiem.
Czyli jeśli sugerujesz uszkodzenie pliku, to czy mechanizm mógł być następujący:
Do plików o rozszerzeniach .htm / .html oraz .php (tylko tych gdzie html był wymieszany z php) hakerski plik dopisywał linijkę swojego kodu, za tagiem </html> i nie psuł nic więcej.
Natomiast próba dopisania tego kodu do pliku którego zawartość była w całości objęta <?php ... ?> kończyła się takim uszkodzeniem pliku

darko
Pojęcia nie mam, w każdym razie usuń wszystkie pliki zawierające podejrzane dane. Nie wiadomo, co to takiego jest i lepiej nie ryzykować narażając się na dalsze szkody.
gargamel
Usunięcie tych plików samo w sobie narobi szkód sciana.gif Jest ponad 500 plików, przy czym nie ma czegoś takiego jak kopia zapasowa...

Temat włamania na serwer opisałem tu: Temat: Zaatakowali serwer

Reasumując, wszystkie pliki index, (.php, .htm, .html) które kończyły się tagiem </html> miały po nim dopisaną linijkę
  1. <img heigth="1" width="1" border="0" src="http://imgddd.net/t.php?id=16815234">

Natomiast pliki które w całości były napisane w PHP, a więc kończyły się znakiem ?> miały dopisane po tym znaku, właśnie wspomniane krzaki a na ich końcu widniała ta sama linijka :
  1. <img heigth="1" width="1" border="0" src="http://imgddd.net/t.php?id=16815234">

Napisałem skrypt który wyszukał mi wszystkie zainfekowane pliki (ok 1400), a następnie wywalił z nich tą złośliwą linijkę. Oczyściłem tak wszystkie .htm(l) natomiast z plikami .php i .php5 które miały owe znaki chciałem poczekać.
Ostatecznie i one zostały przeczyszczone z tej linijki, ale oczywiście krzaczory pozostały. Teraz się zastanawiam czy usunięcie tych znaków faktycznie przywróci pliki do ich pierwotnego stanu... Nie wiem w sumie jeszcze jak to zrobię... ręczne siepanie tych plików będzie masakrą :/
darko
Ciężko powiedzieć czy samo usunięcie tych krzaków rozwiąże problem, zwłaszcza, że te "krzaki" przypominają kod wykonywalny, podobny to tego, jaki widzimy, kiedy otworzymy jakimś edytorem tekstowym plik wykonywalny (exe). Następnym razem rób kopie zapasowe wszystkich plików. Szykuj odwet biggrin.gif
nmts
Dobrze zrozumiałem - masz 500 plików mających w nazwie index? smile.gif Dlaczego nie możesz usunąć tych krzaczorów (usunąć wszystko po ?> i </html>) skryptem podobnie jak wspomnianej linijki z tagiem img?
gargamel
Cytat
Dobrze zrozumiałem - masz 500 plików mających w nazwie index?

Nie, plików o nazwie index było co najmniej 1400, tyle było pierwotnie zainfekowanych. Nie wiem czemu tak dużo. Robię tylko porządki na serwerze admina który dzień przed atakiem pojechał na urlop tongue.gif
Usunięcie krzaków może być trudniejsze, bo nie wpiszę ich w żadne chociażby wyrażenie regularne, które mi je powywala. Usunięcie wszystkiego po ?> też może być nie trafionym rozwiązaniem, bo plik może mieć strukturę <?php ?> ... <?php ?>
Sposób jakiś się pewnie znajdzie, tylko dłużej nad tym muszę posiedzieć.
darko
Zostawiasz tylko alfanumeryczne, wszystkie diakrytyki i znaki specjalne, wszystko inne wywalasz.
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.