您的位置:首页 > 其它

c:out标签和el表达式与跨域攻击XSS

2015-05-28 23:55 337 查看
很多时候,在JSP中我们喜欢用EL表达式输出信息,但是最近发现这个确实存在个问题:XSS即跨域攻击。

下面看个例子:

  <c:out value="${student.name}" /> 和 ${student.name}
都能输出同样的结果。


  但是有跨域攻击时[code]student.name = <script>alert("hello world!")</script>,${student.name}将会执行,而c:out则不会。


原因:c:out 有个缺省属性escapeXML="true" 将会对特色字符如 '<' '>' '&' 等进行转义,而EL表达式则不会。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: