我正在努力保护输入请求参数不受XSS攻击的影响。我偶然发现了Owasp备忘单,以防XSS攻击。我正在按照https://github.com/owasp/java-html-sanitizer上的说明进行操作。
通过使用以下代码,我设法阻止了XSS攻击(通过提供诸如onMouseOver之类的事件来完成),
PolicyFactory policy = Sanitizers.FORMATTING.and(Sanitizers.BLOCKS);
value = policy.sanitize(value); // Value is the "value" of input param
这会转换查询字符串中提供的类似 name = FIRST“ onmouseover =” alert('222') 的内容: X = Val1&Y =&Z = &A = false&name = FIRST“ onmouseover =” alert('222')&B = 456&C = 123 到
<span class="db-wrap-name" title="FIRST"" onload="alert('222s2')="">FIRST" onload="alert('2222')</span>
我的问题是,这种消毒足以保护输入参数免受XSS侵害吗?
PS:有人可以将我指向线性源,以进行OWASP HTML消毒。我设法对此有所了解,但仍有差距。如果我能获得线性信号源,那就太好了。
谢谢
答案 0 :(得分:1)