使用Checkmarx,這一頁有多個「request.getParameterNames()」用途,並被Checkmarx標記爲「CGI_Reflected_XSS_All_Clients」(查詢名稱)。該頁面是「error.jsp」,因此它是在我公司的多個應用程序中使用的常見頁面。發生意外錯誤時顯示此頁面。爲什麼這樣?誰知道,最好不要顯示它,而只是將其註銷。我對Checkmarx報告的易損壞代碼非常陌生。如何避免使用這一點scrip的XSS?
<h3>Request Parameters</h3>
<pre>
<%
lEnum = request.getParameterNames();
while(lEnum.hasMoreElements())
{
String key = (String)lEnum.nextElement();
String[] paramValues = request.getParameterValues(key);
for(int i = 0; i < paramValues.length; i++)
{
out.println(" " + key + " : " + paramValues[i]);
}
}
%>
</pre>