Servlet反映了跨站点脚本漏洞

时间:2014-04-06 20:28:24

标签: css http servlets xss

我用Findbugs分析了一个代码,它报告了

的警告
  

servlet反映了跨站点脚本漏洞。

代码就是这样,第3行抛出警告:

String tickName = request.getParameter("ticko");
PrintWriter w = response.getWriter();
w.println("Unable to perform tickonem '" + tickName +"' because no tick with that name is active!"); //this line throws warning.

它的真正原因是什么以及如何解决它?

1 个答案:

答案 0 :(得分:1)

原因是将用户提供的数据附加到响应而不进行任何转义。这很容易注入将在用户浏览器中执行的javascript。为避免此类漏洞,您应该在发送回来之前html转义每个用户提供的数据。您可以使用一些现有的库来执行转义,例如StringEscapeUtils

相关问题