Кодирование тегов PHP для безопасности? - PullRequest
2 голосов
/ 13 апреля 2009

Kohana и Codeigniter оба имеют encode_php_tags(). Я понимаю очистку XSS (для Javascript), но когда и почему вы бы использовали encode_php_tags()? В чем угроза безопасности?

Ответы [ 5 ]

4 голосов
/ 13 апреля 2009

Умный парень на форуме #kohana предположил, что он есть, потому что Expression Engine использует eval () для шаблонов. Если кто-то вставит PHP в строку, возможно, это будет eval () d и будет выполнен. Поскольку Kohana не использует eval () для шаблонов, возможно, он просто остался со дней Codeigniter.

3 голосов
/ 13 апреля 2009

Это гарантирует, что любой код PHP в пользовательском вводе не будет выполнен, если, например, приложение записывает ввод в файл или передает его eval(). Или, если вы просто хотите написать код PHP, чтобы показать браузер.

1 голос
/ 13 апреля 2009

смысл использования понятен, пользователи вашего сайта не должны писать php коды в ваших формах. если вы используете другие методы предотвращения XSS, предусмотренные для CI или kohana, нет необходимости использовать это.

1 голос
/ 13 апреля 2009

Если ваше приложение позволяет вводить данные пользователя в виде какого-либо файла. Вы должны запретить пользователю вводить PHP-код, который затем может быть выполнен на вашем сервере.

encode_php_tags() предотвращает это.

0 голосов
/ 13 апреля 2009

Почему они перечислили это как связанную с безопасностью функцию, я не могу вам сказать, но это в значительной степени просто заменяет теги <и> в тегах PHP их закодированными формами, что запрещает фактический код PHP между тегами. быть разобранным Чисто визуальная вещь, но вот она у тебя ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...