实战 | 某大学注入+逻辑漏洞挖掘
2021-03-15 18:40:50 Author: mp.weixin.qq.com(查看原文) 阅读量:88 收藏

原创稿件征集

邮箱:[email protected]

QQ:3200599554

黑客与极客相关,互联网安全领域里

的热点话题

漏洞、技术相关的调查或分析

稿件通过并发布还能收获

200-800元不等的稿酬

漏洞url:http://xxxxxx.com/xxxxxxx/StudentResetPasswordFirst.aspx
一个找回密码界面。
用户名处存在sql注入:
有一定过滤,但是可以绕过。
当条件为真的时候会出现用户:007074。在这里,只需要将手机号替换为自己的手机号,我们在前面是直接注释掉了的,所以后面无法对身份证、手机号等进行有效效验,所以会直接通过验证。
来到重置密码界面:
由于之前注释掉了手机号的效验,所以填任意手机号都可以直接通过,在发送短信这里是没有再次对手机号进行效验的,所以这里直接发短信即可。
发送短信这里也没有限制,所以存在短信轰炸漏洞:
输入验证码,然后重置密码就成功了。
去登录,发现这个号是已经毕业的学生,无法登录。此时也不知道其他账号,只知道当条件为真的时候出现的账号是007074,猜测是因为条件为真返回数据,但是只能返回一条,而007074是数据库的第一条数据,所以返回了它。Fuzz无法爆破账号,因为条件为真的时候只会返回007074这个账号,而条件不为真的时候会显示无法匹配学生信息。
骚姿势来了,通过其他注入语句得知数据库为mssql数据库:
那我们可以通过order by 来进行排序。
Ps:MSSQL没有LIMIT
通过排序后返回的账号不同,成功获得了其他用户账号。
玄学来了,多次发包会返回不同的账号,如下:
第一次排序获得账号:yanshi
再次发包:
获得账号:cshare
看到了吗?同样的payload可以随机获得不同的账号。嘿嘿
不知道是什么原因、通过order by desc,order by 2等等不同的排序可以获得不通过的账号。
通过获得的账号修改其密码,登录进去。
成功登录。
总结:
通过有限制Sql注入,导致逻辑漏洞致使无条件任意用户密码重置+短信轰炸。
复制链接做实验:
https://www.hetianlab.com/expc.do?ec=ECIDee9320adea6e062017112114390500001&pk_campaign=weixin-wemedia#stu    
本实验介绍了SQL注入原理,解释了简单判断一个参数是否存在注入的原理,能够利用简单的SQL注入获取其他敏感数据。
向知识的海洋进军,领取39元会员卡。

文章来源: http://mp.weixin.qq.com/s?__biz=MjM5MTYxNjQxOA==&mid=2652871791&idx=2&sn=cba8900f6c4565390d5e0af781470715&chksm=bd59e0a28a2e69b481d3e110b168aaad087a27abd1bd72a3133115501753982352aef3b2b70b#rd
如有侵权请联系:admin#unsafe.sh