2016-06-17 3 views
0

Я хочу защитить свой сайт CakePHP 2.6 от взлома XSS. Я узнаю об App :: uses («Sanitize», «Utility»); Sanitize :: clean();Global data sanitize utility plugin cakephp 2.6

Я не хочу писать эту функцию в моем контроллере, так как я много контроллера. Может ли кто-нибудь сказать мне способ дезинформировать данные из appcontroller.php или любой отдельной точки, где я могу написать дезинфицирующий код.

Я уверен, что должно быть место для проверки всех полей из xss.

Прошу вас, руководствоваться.

ответ

1

Форсирование кодирования HTML на контроллере не является надлежащим методом смягчения. Фактически, выполнение HTML-кодирования на каждом отдельном входе может вызвать! другие проблемы.

Например, можно сказать, что имя пользователя O'neal. Автоматизированные библиотеки смягчения изменят эту одинарную кавычку. Это означает, что вы собираетесь сохранить недействительное имя в базе данных.

Решение представляет собой выходное кодирование. Что связано с движками шаблонов рамки. Большинство современных двигателей вынуждают кодирование над опасными символами, такими как < или & и т. Д.