![]() |
Возникли проблемы с magic_quotes
Загрузил на уязвимый сайт форму для загрузки шела, но вместо формы, вылетают ошибки вида:
Код:
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /usr/local/www/blocks/block-form.php on line 8PHP код:
Интересующий вопрос: Как обойти принудительное экранирование кавычек и апострофов в скрипте? |
Цитата:
PHP код:
|
Цитата:
В строках, везде где содержатся апострофы, принудительное экранирование так и не пропало. |
скрипт куда-то инклудится? если нет константы BLOCK_FILE то он и не исполнится дальше 5й строчки
+ в скрипте много лишнего кода и неуместное применение функции stripslashes на переменные среды - которые не экранируются - а именно на $_SERVER['PHP_SELF'] $_SERVER['DOCUMENT_ROOT'] $_SERVER['SERVER_NAME'] |
Цитата:
На сервере с выключенным magic_quotes, скрипт работает без ошибок. + Спасибо, за хинт |
если файл подключается через include то функцию stripslashes и вообще все input данные надо обрабатывать в конечном файле - по крайней мере так написано было в той литературе, с помощью которой я знакомился с пхп.
попробуй изменить include на require и убери ото всюду функцию stripslashes заменив кодом из #3 сообщения, а так же попробуй заменить блок <<<HTML HTML; на конструкцию echo ""; но скорее всего проблема в include |
как как, вот так:
PHP код:
|
2m0Hze если ты без иронии то (c)php.net - http://www.php.net/manual/ru/security.magicquotes.disabling.php
|
Тем не менее, как разобрались?
|
| Время: 14:31 |