java 预防XSS攻击代码怎么写
时间: 2023-06-04 19:08:37 浏览: 126
对于这个问题,我可以给出以下的代码实现:
public static String encodeString(String input) {
if(input == null) {
return null;
}
StringBuilder sb = new StringBuilder();
for(int i=0; i<input.length(); i++) {
char ch = input.charAt(i);
switch(ch) {
case '<':
sb.append("<");
break;
case '>':
sb.append(">");
break;
case '&':
sb.append("&");
break;
case '"':
sb.append(""");
break;
case '\'':
sb.append("'");
break;
default:
sb.append(ch);
break;
}
}
return sb.toString();
}
这个函数的作用是将输入的字符串进行 编码,从而避免受到 XSS 攻击。具体来说,它会将输入字符串中的 <、>、&、"、' 等特殊字符进行转义,例如将 < 替换为 <,将 > 替换为 >,以此类推。这样一来,即使攻击者尝试在输入中插入恶意脚本,由于这些字符已经被转义,浏览器就不会执行这些脚本了。
阅读全文