我正在使用 Codeigniter 开发 CMS,目前正在为我的所有字段设置一些验证规则。
我启用了 XSS 过滤和 CSRF 保护。我也在使用活动记录。
内容字段允许 HTML 字符,但我不想执行 JS/PHP 代码(XSS 过滤会阻止这种情况?)。
有了我目前设置的保护措施,我还有什么容易受到影响的吗?我应该采取哪些预防措施?我应该采用什么验证规则?
我正在使用 Codeigniter 开发 CMS,目前正在为我的所有字段设置一些验证规则。
我启用了 XSS 过滤和 CSRF 保护。我也在使用活动记录。
内容字段允许 HTML 字符,但我不想执行 JS/PHP 代码(XSS 过滤会阻止这种情况?)。
有了我目前设置的保护措施,我还有什么容易受到影响的吗?我应该采取哪些预防措施?我应该采用什么验证规则?
您需要编写一个自定义回调函数来剥离 php/js 标记。
http://codeigniter.com/user_guide/libraries/form_validation.html#callbacks
当 Javascript 事件不在脚本标签内时,CI 的 XSS 过滤器会漏掉它们。我不建议你关闭过滤器,但另外你应该在输入之后对数据进行编码,至少使用 PHP 内置函数,并在输出之前解码。