脚本攻击和sql语句漏洞是两大基本的安全漏洞,也是最常见的安全漏洞。
脚本攻击:
方案一:
public class XSSFilter {
public static String filter(String val) {
if (val != null) {
return val.replaceAll("\"", """);
} else {
return "";
}
}
}
controller:
String stcd=XSSFilter.filter(request.getParameter("stcd"));
方案二:
/**
* 过滤非法字符工具类
*
*/
public class EncodeFilter {
//过滤大部分html字符
public static String encode(String input) {
if (input == null) {
return input;
}
StringBuilder sb = new StringBuilder(input.length());
for (int i = 0, c = input.length(); i < c; 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;
case '/': sb.append("/");
break;
default: sb.append(ch);
}
}
return sb.toString();
}
//js端过滤
public static String encodeForJS(String input) {
if (input == null) {
return input;
}