安全矩阵

 找回密码
 立即注册
搜索
查看: 2359|回复: 0

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

[复制链接]

855

主题

862

帖子

2940

积分

金牌会员

Rank: 6Rank: 6

积分
2940
发表于 2021-3-14 20:15:09 | 显示全部楼层 |阅读模式
原文链接:实战 | 某大学注入+逻辑漏洞挖掘

漏洞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注入,导致逻辑漏洞致使无条件任意用户密码重置+短信轰炸。


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-11-28 21:45 , Processed in 0.012722 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表