【发布时间】:2012-06-21 04:52:55
【问题描述】:
String id = request.getParameter("id") != null ? request.getParameter("id") : "0";
aaaa doc = bbb.getdetailsById(id);
byte b[] = doc.getUploaded();
try {
response.setContentType("APPLICATION/OCTET-STREAM");
String disHeader = "Attachment;Filename=" + doc.getName();
response.setHeader("Content-Disposition", disHeader);
servletoutputstream = response.getOutputStream();
servletoutputstream.write(b, 0, b.length);
}
我有这段代码。代码审计工具说 servletoutputstream.write(b, 0, b.length);是 xss 脆弱的。但我不知道它是如何报告相同的。以及如何解决它。我正在使用 ESAPI 来验证输入并在其他 xss 易受攻击的报告问题中转义输出。我也需要对这些做同样的事情吗?请提出建议或解决方案。 在做了一些研究工作后,我发现字节 b[] 需要使用 ESAPI 为 htmlESCAPE 或 xmlESCAPE 转义。能解决问题吗?
【问题讨论】:
-
您的代码似乎正在发送一些上传的文件或什么?在这种情况下,您不想以任何方式对其进行修改。