时间:2021-05-23
基于order by内容的盲注
详细说明:
对http://active.zol.com.cn/diy/bisai.php?mont_h=2009-05&id=12&type=15&order=zj_vote+desc 做安全检测。
尝试数值型注入未果。
不过,看到zj_vote+desc,想到这里也许能利用。
用工具扫它没发现注入。因为mysql的union前不能带order by。
但是order by里的内容是不是就没法注入了?
我不死心啊。
做了一些尝试,发现order by是可以盲注的。
这种方式依赖数据库结果中必须存在一个已知存在不一样数值的列。
不过,既然程序里order by那个字段了,那么那个字段理论上肯定有多种值的。比如本例中的zj_vote字段.
漏洞证明:
看排序。236和239数值相差3,我构造一个abs(zj_vote-237-(expr)) asc.
(expr)为假时,(239-237-0)=2,(236-237-0)=1,236排前面,
(expr)为真时,(239-237-1)=1,(236-237-1)=2,239排前面,
你也许会说,你这个236和239相差是3,当然简单了。如果相差2呢?
比如236和238怎么办?
不卖关子了,直接告诉你吧,他不是相差2么,你可以用abs(zj_vote-236-(expr)*3)啊
http://active.zol.com.cn/diy/bisai.php?mont_h=2009-05&id=12&type=15&order=abs(zj_vote-237-(length(user())>20))+asc
http://active.zol.com.cn/diy/bisai.php?mont_h=2009-05&id=12&type=15&order=abs(zj_vote-237-(length(user())=20))+asc
修复方案:
做一个允许的排序方式组合的数组,排序方式传排序方式的数组下标就可以了。
想直接传字段也可以,检查一下那个排序方式是否在数组里,不是就用默认排序方式。也就安全了。
作者 小雨
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
硬盘坏道的相关知识以及检测修复方法 图1 硬盘坏道的相关知识以及检测修复方法 图2 硬盘坏道的相关知识以及检测修复方法 图3 硬盘坏道的相关知识以及检
硬盘坏道的相关知识以及检测修复方法 图1 硬盘坏道的相关知识以及检测修复方法 图2 硬盘坏道的相关知识以及检测修复方法 图3 硬盘坏道的相关知识以及检
中关村在线消息:还没入手苹果iPhone12的朋友们不妨关注一下近期拼多多的百亿补贴活动,补贴后iPhone12到手价优惠1000元,仅需5299元起即可入手,
中关村在线消息:Chrome团队在博客表示,FTP下载协议的使用率已经降至极低的水平,不需要继续进行安全维护,将于近期彻底移除支持。文件传输协议(FileTra
大家都知道,vivoX50Pro+新品线上品鉴会即将于7月8日晚19:00举行,中关村在线届时将对这场活动进行新闻报道,敬请大家届时关注,一起领略这款2020下