1.SQL注入
原理:正常的数据操作,插入恶意数据,变为代码执行
1.1数字型注入
特点:参数类型为数字
闭合方式:单引号 ‘ 闭合,或者使用and、or等方式闭合
例子:pikachu数字型注入
正常查询抓取数据包
对参数id进行注入探测,后接单引号测试
发现sql报错语句,发现注入点
(到此结束,案例都只介绍如何发现注入点)
1.2字符型注入
特点:参数类型为字符
闭合方式:双引号 “ 闭合,或者使用and、or等方式闭合
同样以pikachu字符型注入举例
发现sql报错语句
1.3盲注
特点:不会返回语句相关信息,可通过语句是否正确执行判断是否存在sql注入
常见判断方式:布尔盲注,时间盲注
1.3.1布尔盲注
特点:通过页面返回的不同状态判断语句是否被执行
以pikachu靶场为例
正常查询抓取数据包后,尝试单引号闭合
查询成功
去除注释符时,提示username不存在,说明存在盲注
1.3.2时间盲注
特点:通过页面加载时间判断是否存在sql注入
同样以pikachu为例
无论输入如何,返回相同页面
尝试时间盲注
先任意查询,观察响应时间
尝试单引号闭合,并利用sleep函数5s后再返回