use*_*069 2 php security xss escaping
我已经读过它足够甚至建议在输出上转义字符,而不是输入.
它可以很容易地应用于所有get变量,因为它们不会从表单级别注入数据库.
但是,我不确定如何处理所有后期变量.如果它不是来自数据库,那么如果它是原始输入数据,则完全需要转义.但我正在使用PDO prepare/execute来逃避所有变量.现在问题:
最重要的是 - 所有这些,PDO准备/执行,以及htmlspecialchars(),足以防止所有XSS攻击?或者我也应该做更多?如果是这样,那应该是什么?从输入中删除所有html标签?使用BB-Code代替?
我已经读过它足够甚至建议在输出上转义字符,而不是输入.
通常,您希望:
关于来自另一个问题的htmlspecialchars函数的注意事项:
即使您在HTML标记之外使用htmlspecialchars($ string),您仍然容易受到多字节字符集攻击向量的攻击.
最有效的方法是使用mb_convert_encoding和htmlentities的组合, 如下所示.
$str = mb_convert_encoding($str, ‘UTF-8?, ‘UTF-8?);
$str = htmlentities($str, ENT_QUOTES, ‘UTF-8?);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14159 次 |
| 最近记录: |