base32

  看到编码内容,只有大写和数字,根据Base64和Base32 区别:
  base64中包含大写字母(A-Z)、小写字母(a-z)、数字0——9以及+/;
  base32中只有大写字母(A-Z)和数字234567

  联合查询创建虚拟表

  查询数据不存在时,联合查询会构造一个虚拟的数据在数据库中。

  新建一张user表

[GXYCTF2019]BabySQli  Base32+联合查询

 

  当前没有任何数据,当执行select * from user where username = 0 union select 1,'admin',md5('abc');

 [GXYCTF2019]BabySQli  Base32+联合查询

 

   发现列表里就多了条记录,但实际上,这是在虚拟表上的记录

解题

  访问题目,一个登陆框,F12一下,啥也没有,常规套路 admin' or 1=1 #,发现被WAF,同时看到开发者工具有提示

[GXYCTF2019]BabySQli  Base32+联合查询

  目测是个base32的,解码一下发现又是一个base64,再解码

[GXYCTF2019]BabySQli  Base32+联合查询

 

[GXYCTF2019]BabySQli  Base32+联合查询

 

   是SQL查询语句

  再fuzz一下,这题是先验证用户名再验证密码的,用大小写绕过WAF,admin' Order BY 4 #的时候出现错误

[GXYCTF2019]BabySQli  Base32+联合查询

 

 

   说明有3个字段,然后利用刚刚的思路创建虚拟数据,用MD5绕过假设密码为123,其md5值为202cb962ac59075b964b07152d234b70
  构造

1' union select 1,'admin','202cb962ac59075b964b07152d234b70'#

  passwd输入123,登陆得到flag

[GXYCTF2019]BabySQli  Base32+联合查询

 

参考链接

 https://blog.csdn.net/SopRomeo/article/details/104682814?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase

相关文章:

  • 2021-12-09
  • 2022-12-23
  • 2021-11-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-11-23
  • 2021-06-22
  • 2021-05-08
  • 2021-09-26
  • 2021-08-02
相关资源
相似解决方案