Ali*_*ahi 2 xss jsp jstl struts2 ognl
如http://www.disasterarea.co.uk/blog/xss-vulnerabilities-in-web-frameworks-2/中所述
在struts 2中$ {}不是xss安全的,而在tapestry 5中是安全的.
我不是Tapestry的人,但我想知道上面是否正确.
据我所知,它${}是JSLT的一部分,它不依赖于任何Web框架.因此,如果上面的句子是正确的并且${}在挂毯中是安全的XSS,我们怎样才能在struts 2中使其安全.
更新:
为了测试它我运行struts2-showcase应用程序,打开modelDriven\modelDrivenResult.jsp并添加以下行:
Am I safe ${name}
Run Code Online (Sandbox Code Playgroud)
现在,当您运行展示案例并输入<script> alert('xxxx') </script>gangester名称时,您可以看到警报!
<s:property value="name" />默认自动转义;<c:out value="${name}" />默认情况下,JSTL会自动转义;${name}不会被转义.您可以使用显式转义它${fn:escapeXml(name)},或者设置默认情况下执行的转义,创建自定义ELResolver,如本文中所述:
| 归档时间: |
|
| 查看次数: |
803 次 |
| 最近记录: |