【发布时间】:2011-03-17 09:26:23
【问题描述】:
如果我正在清理我的 DB 插入,并且还转义了我用 htmlentities($text, ENT_COMPAT, 'UTF-8') 编写的 HTML - 是否还需要使用 xss_clean 过滤输入?它还有什么其他好处?
【问题讨论】:
-
htmlentities($text, ENT_COMPAT, 'UTF-8')不是停止 xss 的好方法,没有人应该使用它。 -
htmlentities绝对可以防止 HTML 注入,但如果您曾经使用单引号属性分隔符,则需要ENT_QUOTES而不是ENT_COMPAT。htmlspecialchars通常比htmlentities更可取,因为它弄乱字符集的可能性较小。 CodeIgniter 的xss_clean是一个毫无价值的货物崇拜编程灾区,对字符串处理的构成充满了错误的误解。
标签: php html security codeigniter xss