当前位置:首页 > 黑客业务 > 正文内容

JSP运用过滤器避免SQL注入

访客3年前 (2021-04-15)黑客业务650

 什么是SQL注入进犯?引证百度百科的解说:

sql注入_百度百科:
所谓SQL注入,便是通过把SQL指令刺进到Web表单提交或输入域名或页面恳求的查询字符串,终究抵达诈骗服务器履行歹意的SQL指令。详细来说,它是使用现有应用程序,将(歹意)的SQL指令注入到后台数据库引擎履行的才能,它能够通过在Web表单中输入(歹意)SQL句子得到一个存在安全漏洞的网站上的数据库,而不是依照设计者目的去履行SQL句子。[1]  比方从前的许多影视网站走漏VIP会员暗码大多便是通过WEB表单递送查询字符暴出的,这类表单特别简单遭到SQL注入式进犯.
SQL注入进犯指的是通过构建特别的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过履行SQL句子从而履行进犯者所要的操作,其主要原因是程序没有详尽地过滤用户输入的数据,致使不合法数据侵入体系。
filter功用:
它使用户能够改动一个 request和修正一个response. Filter 不是一个servlet,它不能发生一个response,它能够
 
在一个request抵达servlet之前预处理request,也能够在脱离 servlet时处理response.
 
换种说法,filter其实是一个”servlet chaining”(servlet 链). 所以用户宣布的任何request都必定通过filter处理,咱们就在filter处理用户request包括的灵敏关键字,然后replace掉或是让页面转到过错页来提示用户,这样就能够很好的防sql注入了。
 
详细完成代码:
/YourProject/src/com/SqlFilter.java
 
仿制代码
 1 package com;
 2 import java.io.IOException;  
 3 import java.util.Enumeration;  
 4 import javax.servlet.Filter;  
 5 import javax.servlet.FilterChain;  
 6 import javax.servlet.FilterConfig;  
 7 import javax.servlet.ServletException;  
 8 import javax.servlet.ServletRequest;  
 9 import javax.servlet.ServletResponse;  
10 import javax.servlet.http.HttpServletRequest;  
11 import javax.servlet.http.HttpServletResponse;  
12   
13 //过滤sql关键字的Filter 
14 public class SqlFilter implements Filter {  
15   
16     public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {  
17   
18         HttpServletRequest req = (HttpServletRequest) request;  
19         HttpServletResponse res = (HttpServletResponse) response;  
20         //取得一切恳求参数名  
21         Enumeration params = req.getParameterNames();  
22   
23         String sql = "";  
24         while (params.hasMoreElements()) {  
25             //得到参数名  
26             String name = params.nextElement().toString();  
27             //System.out.println("name===========================" + name + "--");  
28             //得到参数对应值  
29             String[] value = req.getParameterValues(name);  
30             for (int i = 0; i < value.length; i++) {  
31                 sql = sql + value[i];  
32             }  
33         }  
34         System.out.println("被匹配字符串:"+sql);  
35         if (sqlValidate(sql)) {  
36             res.sendRedirect("error.jsp");   
37         } else {  
38             chain.doFilter(req, res);  
39         }  
40     }  
41   
42     //校验
43     protected static boolean sqlValidate(String str) {  
44         str = str.toLowerCase();//一致转为小写

[1] [2]  黑客接单网

扫描二维码推送至手机访问。

版权声明:本文由黑客接单发布,如需转载请注明出处。

本文链接:http://therlest.com/105863.html

分享给朋友:

“JSP运用过滤器避免SQL注入” 的相关文章

字节承认商业化团队撤城裁员

据晋江新闻网2021年10月19日21:00:43的最新发布,微博网友@ 爆料。 平安夜来临之际,事件,在网上炒得沸沸扬扬,引发全网热议! 据悉,黑客追款后来被报道了几次。猜测第六百八十八章逃港者第六百八十九章调侃第六百。相对这个账号是他的。 1.专业网赌追回律师 首先确保整个真正的黑客追款方案是最...

猪肉怎么选?颜色有区别吗?今天做饭的时候发现上次买的猪肉颜色跟这

猪肉怎么选?颜色有区别吗?今天做饭的时候发现上次买的猪肉颜色跟这 买猪肉时,根据肉的颜色、外观、气味等可以判断出肉的质量是好还是坏。优质的猪肉,脂肪白而硬,且带有香味。肉的外面往往有一层稍带干燥的膜,肉质紧密,富有弹性,手指压后凹陷处立即复原。 次鲜肉肉色较鲜肉暗,缺乏光泽,脂肪呈灰白色;表面带...

intense靶场-获取User权限

出品|MS08067实验室(www.ms08067.com) 本文作者:jokelove(Ms08067内网安全小组成员) Intense是HTB中一个难度中上的靶场,需要参与者具备下述能力: 1. Python源码审计 2. SQL注入原理 3. SNMP远程命令执行 4. 栈溢出...

西湖论剑 Flagshop 分析复现

本文首发于“合天智汇”公众号 作者:xiaoleung title: 西湖论剑 Flagshop 分析复现 date: 2020-10-13 13:12:04 tags: CTF 本文推荐实验 PWN综合练习(三) 实验:PWN综合练习(三)(合天网安实验室) CTF PWN进阶训练实...

全球最大黑客组织匿名者「公司被黑客攻击要求汇比特币怎么办」

⒈匿名者黑客组织匿名者黑客组织是世界最大的黑客组织,也是世界最大的政治意识黑客组织。其关键遍布于美国,次之为欧洲国家,非州、南美洲、亚洲地区等地都是有其各分部。“匿。 ⒉世界上最大黑客组织匿名者向IS开战 匿名者是啥机构 - 百度搜索。是一个黑客组织,你能了解为一群很牛逼的计算机网大神。 ⒊匿名...

宝宝适合什么样的袜子 如何选购幼儿袜子

有的母亲不习惯帮小宝宝加上棉袜,特别是在在夏季更是如此。可是在秋冬季的情况下,小宝宝的脚部防寒保暖是务必的,小宝宝的脚部的防寒保暖才不容易发烧感冒,那麼怎样购买小宝宝棉袜呢?下边的我为大伙儿共享小宝宝合适哪些的棉袜,在选择小宝宝棉袜的全过程中什么技巧呢?针对选购儿童但是我提议新手妈妈要帮小宝宝穿双棉...

评论列表

鸠骨嗫嚅
2年前 (2022-05-30)

rvlet之前预处理request,也能够在脱离 servlet时处理response. 换种说法,filter其实是一个”servlet chaining”(servlet 链). 所以用户宣布的任何request都必定通过filte

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。