SQL注入分类
按注入位置分类
GET注入:注入字符在URL参数中
POST注入:注入字段在POST提交的数据中,如“姓名”输入框
Cookie注入:注入字段在Cookie数据中
其他注入:HTTP请求的其他内容触发的SQL注入漏洞
按参数类型分类
数字型注入:输入参数为整型时,如id、页码等
字符型注入:输入参数为字符串时,如姓名、地址等
字符型注入一般要用单引号或双引号进行闭合
按结果反馈分类
普通SQL注入
网页会展示来自数据库服务器的错误信息,提示SQL语法不正确等
一般在页面上直接显示执行SQL语句的结果
SQL盲注
网页上一般不会直接返回具体的数据库错误或语法错误
一般在页面上不会直接显示SQL语句执行的结果
普通SQL注入思路
普通SQL注入:执行注入SQL语句将敏感信息展示出来,并进行进一步的操作。
1.判断是否存在注入点(字符型、数字型)
2.猜解SQL查询语句中的字段数
3.确定显示的字段位置
4.获取当前数据库
5.获取数据库中的表
6.获取表中的字段名
7.下载数据(脱库)
操作方法:联合查询、报错注入
SQL盲注思路
SQL盲注不会展现任何数据库报错内容,需要构造真或假的问题对数据库进行“提问”,注入方式主要有两种:基于布尔值与基于时间
1.判断是否存在注入点,数字型、字符型
2.猜解当前数据库名
3.猜解数据库中的表名
4.猜解表中的字段名
5.猜解数据
操作方法:布尔盲注、延时注入