什么是盲注
盲注的本质是猜解(所谓“盲”就是在你看不到返回数据的情况下能通过 “感觉” 来判断),那能感觉到什么?答案是 : 差异(包括运行时间的差异和页面返回结果的差异 )
原理
在页面中,如果正确执行了SQL语句,则返回一种页面,如果SQL语句执行错误则执行另一种页面。基于两种页面,来判断SQL语句正确与否,达到获取数据的目的
函数
Length ()函数 返字符串的长度
limit (a,b): 后缀两个参数的时候(/参数必须是一个整数常量*),其中a是指记录开始的偏移量,b是指从第a+1条开始,取b条记录
Substr ( ) 截取字符串
Ascii( ) 返回字符的ascii码
left(name.4):函数返回name的左边第二个字符
right( name.2):函数返回name的右边边第二个字符
流程
1.判断是否存在注入(单引号或双引号判断)
2.获取数据库长度
3.逐字猜解数据库名
4.猜解表名数量
5.猜解某个表长度
6.逐字猜解表名
7.猜解列名数量
8.猜解某个列长度
9.逐字猜解列名
10.判断数据数量
11.猜解某条数据的长度
12.逐位猜解数据
1.猜表名
left函数()
left(a,b)从左侧截取ad前b位
left(select database(),1)=‘s’ 截取数据库名称的第一位
判断数据库名可以用left/ascii函数,同理猜表面也是一样的
利用and left(select table_name from information_s