ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   Песочница (https://forum.antichat.xyz/forumdisplay.php?f=189)
-   -   Уязвим ли код (https://forum.antichat.xyz/showthread.php?t=319979)

Isis 20.02.2012 19:59

Ага, не хекер!

magic_quotes_gpc = off

[PHP]
[COLOR="#000000"][COLOR="#007700"]

t0ma5 20.02.2012 22:56

Надеюсь старейшины форума меня поправят если я не прав.

Вот эта проверка

if (file_exists('ololo/files/' . $_GET['d'] . '/thumb.php'))

обходится нулл байтом, но нулл байт не канает так как addslashes его предварительно валит.

Обойти можно попробовать через дополнительные ///, они выступают в качестве замены для %00.

То есть по сути запрос вида ?d=../../../../../../../../../../../etc/shells///////[2048 или 4096] должен обрубить остальной запрос, точное количество слешей сказать не могу, надо тестить.

Konqi 20.02.2012 23:04

Цитата:

Сообщение от t0ma5
То есть по сути запрос вида ?d=../../../../../../../../../../../etc/shells///////[2048 или 4096] должен обрубить остальной запрос

в этом случий не пройдешь проверку file_exists, хотя если подумать.. file_exists пропускает диры, то есть file_exists('/etc/') вернет true.. *scratch*

для обхода file_exists Нужно указать диру, так как в других папках нету thumb.php, а для инклуда нужен файл, насколько я понимаю это тупик

t0ma5 21.02.2012 00:06

Есть одна идея, может бредовая конечно, но все же.

Посмотреть реверс IP, узнать соседние сайты. Существует ведь вероятность что через один из них(хромает фильтрация) можно залить thumb.php, но нельзя выполнить(htaccess или еще что), и не корректно стоят права, и его можно заинклудить?

Полный путь конечно придется узнать, но это в некоторых случаях не проблема.

Pirotexnik 21.02.2012 01:08

я так делал. нужно было взломать 1 сайт на нем был лишь инклуд. Через 5 минут залил пхп на соседа. Путь узнал по ошибка выдающихся LFI.

Isis 21.02.2012 11:45

Такой вариант у меня был, но это геморрой

В последней версии openx 2.8.8 файл www/delivery/al.php, там такая проверка.

M_script 21.02.2012 12:46

Тебе поломать надо или наоборот?

PHP код:

[COLOR="#000000"][COLOR="#0000BB"]$_GET[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'d'[/COLOR][COLOR="#007700"]] =[/COLOR][COLOR="#0000BB"]strpos[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$_GET[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'d'[/COLOR][COLOR="#007700"]],[/COLOR][COLOR="#DD0000"]'.'[/COLOR][COLOR="#007700"]) !==[/COLOR][COLOR="#0000BB"]false[/COLOR][COLOR="#007700"]?[/COLOR][COLOR="#DD0000"]'default'[/COLOR][COLOR="#007700"]:[/COLOR][COLOR="#0000BB"]addslashes[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$_GET[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'d'[/COLOR][COLOR="#007700"]]);[/COLOR][/COLOR


Isis 21.02.2012 18:32

Цитата:

Сообщение от M_script
Тебе поломать надо или наоборот?
PHP код:

[COLOR="#000000"][COLOR="#0000BB"]$_GET[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'d'[/COLOR][COLOR="#007700"]] =[/COLOR][COLOR="#0000BB"]strpos[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$_GET[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'d'[/COLOR][COLOR="#007700"]],[/COLOR][COLOR="#DD0000"]'.'[/COLOR][COLOR="#007700"]) !==[/COLOR][COLOR="#0000BB"]false[/COLOR][COLOR="#007700"]?[/COLOR][COLOR="#DD0000"]'default'[/COLOR][COLOR="#007700"]:[/COLOR][COLOR="#0000BB"]addslashes[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$_GET[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'d'[/COLOR][COLOR="#007700"]]);[/COLOR][/COLOR


похекать, да. Дыры новые искал в openx


Время: 04:36