【SQL注入】---[极客大挑战 2019]EasySQL---day01
一、界面
进来以后就是一个登录框

二、SQL注入思路
1、判断是否存在注入点
①单引号报错
用户名输入单引号 ' 报错,密码随便输123123

服务器返回错误,没有对单引号作过滤的处理,判断存在SQL注入。
通过这个错误可以看出这里使用的是MariaDB
②1=1 1=2测试方法
- 首先正常输入
  
 正常显示:
  
- 尝试输入;and 1=1
  
 结果:
 正常显示,和上面的一样。
- 尝试输入;and 1=2
 发现还是正常显示,如过显示EOF或者BOF则可以注入,
 不可注入的表现:第一步正常,二和三会有错误提示,或提示类型转换时出错.
③结论:
判断出这里存在注入点,并且可以用单引号来闭合 ',数据库类型MariaDB。在使用双引号的时候,页面会正常显示。
2、查看有多少字段
①判断出用户名和密码都是Get传参

②查看有多少字段

但是这样有语法错误,因为后面还有一个单引号,通过#注释掉(#号是SQL中的注释符号),但是不能直接输入#号,通过URL编码才可以,#的URL编码是%23.


一直到3的时候才正常

③结论:
有3个字段
3、使用联合查询查看数据库信息

这里直接出来了flag。
三、万能密码解法

这里就根据具体的语法闭合就可以了
也可以这样:

得到flag


 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号