我想防止使用 PHP 对我的网站进行 XSS 攻击。
我知道有 3 个功能基本上可以防止这种攻击,但我不确定应该使用哪一个。我之前看过其他关于这个的问题,但我没有得到这个问题的明确答案。
我应该使用哪一个,哪个是您认为最好的,为什么?
如果在标签之间输出不受信任的数据, htmlspecialchars或htmlentities将提供保护,但如果输出在 JavaScript 事件处理程序中,则不会提供保护。
使用这个函数的方法是这样的:
echo htmlspecialchars($string, ENT_QUOTES, 'UTF-8');
看看 OWASP XSS 预防备忘单...
https://www.owasp.org/index.php/XSS_%28Cross_Site_Scripting%29_Prevention_Cheat_Sheet
他们都无法阻止攻击。你只能限制伤害!
但是使用全部或只使用一个不是问题,它是关于应用程序设计以及是否有可能以结果下降到数据库级别的方式修改请求。
看到这个- 可能这会让你对 XSS 攻击的复杂性有所了解。