我不得不在innerHTML中使用一些HTML标记。但是这会带来一些安全问题。我不能使用innerText等,因为我必须显示HTML内容而不是纯文本。$(这个).parent()[0].内部HTML =新的内部HTML;有什么解决方法?或者有没有解决漏洞的方法?我试过清理HTML,但是没有效果。请提供您的建议。谢谢你。
67up9zun1#
我知道你说你已经试过净化它了,但是也许你做错了。如果你需要把用户输入作为一个innerHTML字符串而不冒xss的风险,你可以使用像https://www.npmjs.com/package/xss-clean这样的库只净化用户输入。如果html内容是硬编码的,使用innerHTML的风险仅在用户可以向其他用户可见的服务器提交HTML字符串时才存在。
innerHTML
1条答案
按热度按时间67up9zun1#
我知道你说你已经试过净化它了,但是也许你做错了。如果你需要把用户输入作为一个
innerHTML
字符串而不冒xss的风险,你可以使用像https://www.npmjs.com/package/xss-clean这样的库只净化用户输入。如果html内容是硬编码的,使用innerHTML
的风险仅在用户可以向其他用户可见的服务器提交HTML字符串时才存在。