java防SQL注入,最简单的办法是杜绝SQL拼接,SQL注入攻击能得逞是因为在原有SQL语句中加入了新的逻辑,如果使用PreparedStatement来代替Statement来执行SQL语句,其后只是输入参数,SQL注入攻击手段将无效,这是因为PreparedStatement不允许在不同的插入时间改变查询的逻辑结构 ,大部分的SQL注入已经挡住了, 在WEB层我们可以过滤用户的输入来防止SQL注入比如用Filter来过滤全局的表单参数
01 import java.io.IOException;
02 import java.util.Iterator;
03 import javax.servlet.Filter;
04 import javax.servlet.FilterChain;
05 import javax.servlet.FilterConfig;
06 import javax.servlet.ServletException;
07 import javax.servlet.ServletRequest;
08 import javax.servlet.ServletResponse;
09 import javax.servlet.http.HttpServletRequest;
10 import javax.servlet.http.HttpServletResponse;
11 /**
12 * 通过Filter过滤器来防SQL注入攻击
13 *
14 */
15 public class SQLFilter implements Filter {
16 private String inj_str = "'|and|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare|; |or|-|+|,";
17 protected FilterConfig filterConfig = null;
18 /**
19 * Should a character encoding specified by the client be ignored?
20 */
21 protected boolean ignore = true;
22 public void init(FilterConfig config) throws ServletException {
23 this.filterConfig = config;
24 this.inj_str = filterConfig.getInitParameter("keywords");
25 }
26 public void doFilter(ServletRequest request, ServletResponse response,
27 FilterChain chain) throws IOException, ServletException {
28 HttpServletRequest req = (HttpServletRequest)request;
29 HttpServletResponse res = (HttpServletResponse)response;
30 Iterator values = req.getParameterMap().values().iterator();//获取所有的表单参数
31 while(values.hasNext()){
32 String[] value = (String[])values.next();
33 for(int i = 0;i < value.length;i++){
34 if(sql_inj(value[i])){
35 //TODO这里发现sql注入代码的业务逻辑代码
36 return;
37 }
38 }
39 }
40 chain.doFilter(request, response);
41 }
42 public boolean sql_inj(String str)
43 {
44 String[] inj_stra=inj_str.split("\\|");
45 for (int i=0 ; i < inj_stra.length ; i++ )
46 {
47 if (str.indexOf(" "+inj_stra[i]+" ")>=0)
由于目前iOS系统比较封闭的特性,苹果手机换铃声相比安卓要麻烦的不多,因为它仅支持 m4r 格式铃声,并且还需要导入到 iPhone铃声库 才能设置使用,让很多果粉朋友望而却步。之前小编带来了一篇“i...
全国酒店宾馆记录如何查询?用什么简单的方法可以查询到 专业盗取微信密码,开房查询,通话记录查询,查询微信聊天记录,非常靠谱!很多人的日常生活都离不开微信,微信也是在互联网行业当中占据重要的地位,特...
“杭州伴游hhh212126-【陈政群】” 佛山高端伴游模特资源昵称:陈振兴伴游时间:提前一天预定生肖:蛇婚否:未婚六、拍戏对演员请求异常严厉,北京商务需求有热情战敬业肉体,那正在寻常生涯中便要最先造...
本文目录一览: 1、微信解封软件 1211 绿色免费版怎么用 2、我微信封了,谁知道有解封软件 3、微信解封怎么解 4、请问有可以自己直接解封微信的软件吗? 5、微信如何解封的??...
ps合并图片只需将图层合并就可以,图层合并键盘快捷键是ctrl E。开启ps,导进素材图片,点一下右下方的加号图标,建立新的涂层,alt delete填充颜色,选定涂层,最终应用键盘快捷键ctrl E...
爱情就是尊重,爱情就是忠诚,假如男人在成家后还总是去“偷腥”,那么这样的男人就不是真的爱你。因为假如是真的爱你,他就不会舍得让你伤心。上次我们说到,社会上的形形色色的 诱惑实在是太多了,而男人则是被成...