HTML Purifier清除事件属性

时间:2014-10-14 21:27:29

标签: javascript php html htmlpurifier

我正在努力解决一些存储的XSS漏洞,我正在使用HTMLPurifier。我在页面上有一个输入框,如果我键入'"的onclick ="警报(1);"代码保存到数据库并在客户端上执行。即使在通过净化器运行输入和输出之后,也会发生这种情况。似乎HTMLpurifier只在html标记中包含这些attr时才会删除它们。我想知道是否有一些配置净化器,只会删除事件attr或任何其他有关如何清理它们的建议。

1 个答案:

答案 0 :(得分:1)

HTML Purifier纯粹用于在页面上用作HTML的内容。例如,它不适用于验证HTML元素属性的内容。

您可以使用HTML Purifier的一些内部API来验证此案例的内容。但是,对于评论中引用的示例,您只需要htmlspecialchars做正确的事情。正确选择验证器取决于您将内容放在哪个属性中。