下面的 Java Script 代码是否容易受到 XSS 攻击?这是从登录页面调用的。如果在页面中发现错误,将再次登录页面并显示错误消息。
if(userName.length==0)
{
initialMsg="Please enter a User Name";
errorMessage+=encodeHTML(initialMsg);
document.writeln("<form name=\"errForm\" method=\"POST\" action=\"http://loginPageURLGoesHere\">");
document.writeln("<input type=\"hidden\" name=\"errorMessage\" value=\"" + errorMessage + "\">");
document.writeln("</form>");
document.errForm.submit();
return false;
}
function encodeHTML(s)
{
return s.replace(/&/g, '&').replace(/</g, '<').replace(/"/g, '"').replace(/>/g, '>');
}
在服务器端进行所有检查是修复 XSS 的解决方案。但是,我想知道上述编码是否有助于防止 XSS。