sqli-labs(42-45)

Less-42

1.打开页面,似曾相识,像极了前边的二次注入,但是这里忘记密码``创建帐号都是没用的功能,好像就没法二次注入了,只有尝试登录了(像极了现实生活的注入,先登陆,再注入),自己搭建的环境知道帐号密码吧,登陆后出现了修改密码的界面
在这里插入图片描述
2.出现了这个画面,尝试在三个框里注入,尝试了很多都失败了,猜想是'这些符号被过滤了,只好logout看看在登陆界面存不存在注入点了,先测试username框,构造永真式'or 1=1)or 1=1等,尝试了这些以后发现,都是一张大连的图片,说明username不存在注入

在这里插入图片描述
既然username不存在注入,就看看password框,同样构造永真式'or 1=1)or 1=1,发现当username=adminpassword=c‘or 1=1(这里正确密码是admin),登陆成功了,再来试试password=1’,出现报错提示了,闭合
在这里插入图片描述
3.既然存在报错提示,就可以用报错注入来爆数据了,构造password=1'or updatexml(1,concat('~',database()),0)#,出现数据库名
在这里插入图片描述
同样可以爆出其他数据了,来看看可不可以堆叠注入吧(这整篇page3都是堆叠注入相关的,所以试试)
先尝试改admin的密码(因为已经知道admin的密码是admin了,可以前后作对比,看看是否注入成功),构造语句1';update security.users set password='666'where id=8#,注入后打开mysql看看是否更改成功
在这里插入图片描述
果然成功了,存在堆叠注入。
4.最后实在想搞清楚那几个没有注入成功的地方是怎样过滤的,看了看源码,原来是这样,是用mysqli_real_escape_string()函数将特殊字符都转义了(这些特殊字符包括:\x00,\r,\n,,’,",\x1a)
登陆处:
在这里插入图片描述
改密码处:
在这里插入图片描述

Less-43

同Less-42一样的操作,只是password处的闭合方式为')

Less-44

1.重复Less-42的第一步,无果,再来测试登陆处,用样测试username后,发现它又不能注入,测试password,构造永真式’or 1=1,发现当password1'or 1=1#时登陆成功,说明是'闭合,看看和Less-42一样存在报错注入,构造1',结果如下,没有报错提示
在这里插入图片描述
再来看看能不能盲注,构造1’or 1=2#, 不能进入改密码页面,说明存在布尔注入了,可以采用脚本或者sqlmap将数据跑出来了,
sqlmap语句:sqlmap -r "/root/1.txt" -p "login_password" -dbs跑数据库
结果:
在这里插入图片描述
2.测试还是存在堆叠注入

Less-45

同Less-44一样布尔型盲注,闭合方式为'),存在堆叠注入

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值