jsp 来防SQL注入,防XSS等攻击的话,首先要选择PreparedStatement来处理sql语句!同时java后台还需要对页面中接受到的参数进行字符替换!
/**
* 清除所有XSS攻击的字符串
* 学来的!分享!
*/
public static String getSafeStringXSS(String s){
if (s == null || "".equals(s)) {
return s;
}
StringBuilder sb = new StringBuilder(s.length() + 16);
for (int i = 0; i < s.length(); i++) {
char c = s.charAt(i);
switch (c) {
case '
sb.append("<");
break;
case '>':
sb.append(">");
break;
case ''':
sb.append("′");// ´");
break;
case '′':
sb.append("′");// ´");
break;
case '"':
sb.append(""");
break;
case '"':
sb.append(""");
break;
case '&':
sb.append("&");
break;
case '#':
sb.append("#");
break;
case '\':
sb.append('¥');
break;
case '=':
sb.append("=");
break;
default:
sb.append(c);
break;
}
}
return sb.toString();
}