我正在尝试使用 jsoup 来清理从我的客户端中的所见即所得发布的 html(碰巧很小)
宽松模式似乎不够宽松,因为默认情况下它会剥离 span 元素和任何样式属性。
例如
String text = "<p style="color: #ff0000;">foobar</p>";
Jsoup.clean(text, Whitelist.relaxed());
会输出
<p>foobar</p>
和
<span>foobar</span>
将被完全删除。
有没有人有使用 Jsoup 消除 XSS 攻击的可能性并且仍然允许上述元素和属性通过的经验?
编辑:我已经完成了以下操作。谁能建议这有多脆弱?
Jsoup.clean(pitch, Whitelist.relaxed().addTags("span").addAttributes(":all","style"));
编辑 2:有人在生产中使用过 owasp 库吗?它看起来可以正确消毒,同时保持正确的样式。OWASP