好的,现在我进退两难了,我需要允许用户插入原始 HTML,但也要阻止所有 JS - 不仅仅是脚本标签,还有来自 href 等。目前,我所知道的是
htmlspecialchars($string, ENT_QUOTES, 'UTF-8');
但这也会将有效标签转换为编码字符。如果我使用striptags,它也不起作用,因为它会删除标签!(我知道你可以允许标签,但问题是如果我允许任何标签,比如<a></a>
人们可以向其中添加恶意 JS。
我可以做些什么来允许 html 标签但没有 XSS 注入?我已经计划了一个功能:xss()
并用它设置了我的网站模板。它返回转义的字符串。(我只需要逃跑的帮助:))
谢谢!