全局数据清理实用程序插件cakephp 2.6

时间:2016-06-17 08:07:48

标签: security cakephp cakephp-2.0 xss cakephp-2.6

我想保护我的CakePHP 2.6网站免受XSS黑客攻击。我开始了解App :: uses('Sanitize','Utility'); 消毒清洁::();

我不想在我的所有控制器中写这个功能,因为我很多控制器。任何人都可以告诉我从appcontroller.php或我可以编写清理代码的任何一点清理数据的方法。

我确信必须有一个地方来验证来自xss的所有字段。

请指导我。

1 个答案:

答案 0 :(得分:1)

在控制器上强制HTML编码不是一种适当的缓解方法。事实上,对每一个输入执行HTML编码可能会导致!另一个麻烦。

例如,假设用户的名字是O'neal。自动缓解库将更改该单引号。这意味着您要将无效名称保存到数据库中。

解决方案是输出编码。这与框架的模板引擎有关。大多数现代引擎都在强制编码危险字符,例如<或者&等