实战 | 某大学注入+逻辑漏洞挖掘

  • A+
所属分类:安全文章
漏洞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注入,导致逻辑漏洞致使无条件任意用户密码重置+短信轰炸。

实战 | 某大学注入+逻辑漏洞挖掘


推荐阅读:


SRC逻辑漏洞挖掘详解以及思路和技巧


SRC漏洞挖掘经验+技巧篇


干货 | 登录点测试的Tips


漏洞挖掘 | 单点登录的网站通过Referer盗取用户授权


漏洞挖掘 | 记一次登陆绕过


实战 | 某大学注入+逻辑漏洞挖掘


点赞,转发,在看


原创投稿作者:csz

实战 | 某大学注入+逻辑漏洞挖掘

本文始发于微信公众号(HACK学习呀):实战 | 某大学注入+逻辑漏洞挖掘

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: