我有一个默认的Spring登录表单,它接受用户名和密码。
我尝试在安全XML中设置安全响应头,如下所示:
<security:http auto-config='true' use-expressions="true" authentication-manager-ref="authenticationManager">
<security:intercept-url pattern="/**" access="isAuthenticated()" />
<security:form-login default-target-url="/home.jsp" always-use-default-target='true'/>
<security:headers/>
<security:http/>标题将被添加到响应中,当我检查页面时可以看到这个响应。但是,当我在username字段中放置一个脚本标记<script>alert('1')</script>并登录表单时,脚本将被执行。理想情况下,这个脚本不应该执行,因为头是在响应中添加的。
提前感谢!
发布于 2014-06-19 09:34:10
不建议将此标头用作预防方法。我个人并不了解Security的来龙去脉,但我的建议是遵循OWASP预防备忘单。
XSS过滤器在IE8和更新,不正确防范存储的XSS。实际上,这只是微软公司设置的一个过滤器,用来保护用户免受某些网站提供的保护不足。网站本身应该通过编码输出来妥善保护他们的页面,而不是依赖像这样的过滤器。
还可以使用使XSS与自身对抗并使以前的XSS安全站点易受攻击,这也是实际上应该发送报头来禁用筛选器而不是反过来的另一个原因。
https://stackoverflow.com/questions/24278392
复制相似问题