[GXYCTF2019]BabySQli 1

[GXYCTF2019]BabySQli1

看到题 为登录界面,且考察sql注入。每回对应sql登录,因尝试一下弱口令登录’or’1=1
在这里插入图片描述
发现有过滤 大致过滤 or and ()等
在报错后发现响应头有注释:
在这里插入图片描述
在这里声明一下base32与base64区别
base32 只有大写字母和数字数字组成,或者后面有三个等号。
base64 只有大写字母和数字,小写字母组成,后面一般是两个等号。
明显,那段文字是base32加密。

解密后:select * from user where username = '$name'

尝试name注入点时,一直显示wrong pass!

查看大佬wp
发现一般的密码都会md5加密进行判断,并利用联合注入特性。

if($row['password']===md5($passwd)){
}

在使用联合注入时,如果你查询的数据不存在,那么就会生成一个内容为null的虚拟数据,在联合查询并不存在的数据时,联合查询就会构造一个虚拟的数据。所以这时我们就可以在注入时添加我们需要的信息来完成我们的目的。
一般存放密码表字段 id ,username ,password

构造playload如下:

name=-1' union select 1,'admin','eccbc87e4b5ce2fe28308fd9f2a7baf3'%23&pw=3
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值