记一次任意用户密码重置漏洞

admin 2025-12-25 02:45:28 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文记录了某小额贷款网站存在的任意用户密码重置与账号接管漏洞。作者利用登录接口枚举用户并泄露敏感信息,随后通过修改找回密码请求参数,将验证码接收方篡改为攻击者手机,成功绕过验证重置密码。此外,在登录阶段利用短信验证接口参数篡改漏洞,最终实现任意用户登录。文章深入分析了业务逻辑缺陷导致的组合认证失效问题。 综合评分: 88 文章分类: WEB安全,渗透测试,漏洞分析


cover_image

记一次任意用户密码重置漏洞

听风安全

2025年12月24日 10:33 北京

以下文章来源于Seraph安全实验室 ,作者Seraph安全实验室

Seraph安全实验室 .

Seraph安全实验室旗下公众号,专注于:渗透测试、代码审计、漏洞挖掘方向。会定期发布安全文章及干货,感谢希望大家多多关注!

免责声明

由于传播、利用本公众号听风安全所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号听风安全及作者不为承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!

公众号现在只对常读和星标的公众号才展示大图推送,

建议大家把听风安全设为星标,否则可能就看不到啦!


0x01 前言叙述

目标系统是一个小额贷款网站,通过对资产进行打点,发现目标系统的安全方法做的还是很到位的,防火墙、哇夫(WAF)统统都架上了,但是网站看起来确实有点老旧,最后尝试从逻辑漏洞下手。

注:本文涉及到相关漏洞已报送厂商并修复,本文仅限技术讨论和研究,严禁用于非法用途,否则产生后果自行承担。

0x02漏洞复现

开局一个登录框,通过登录框我们可以看到认证强度还是比较高的,身份证号+密码+静态验证码+手机短信验证码。

尝试先注册一个账号,发现第一步校验信息就过不了,提示没有在线下开户,猜测他们这里应该是需要先线下开户再线上注册才行,而且注册需要同时提供身份证号+姓名,放弃注册,去登录口看看

随便输入一个信息登录一下抓包看看,发现登录的时候会先校验当前登录用户绑定的手机号码是不是在系统中存在,这里系统只通过身份证号来校验的,那我们就可以通过这个接口来进行用户枚举

上字典,梭哈,这里成功枚举出来的几个用户,意外收获,发现在成功枚举到用户的返回包中泄露了用户的手机号和姓名

这里我们就有了身份证号、姓名、手机号,但是登录还是需要密码和手机短信验证码,还是没法登录,再次去注册接口看看能不能覆盖注册。没有意外还是不行。提示已注册了GG

返回登录页面,还有一个“忘记密码”接口,接着测试

进去之后,跟注册页面很像,这里我们已经枚举出来了身份证号、姓名、手机号,我们填入信息进行验证

成功跳转到下一步

点击获取验证码,拦截数据包,发现没有可以修改的参数,注意这里我们可以发现返回包中返回了很多的参数,其中就有一个grkey和sjhm

这里我们尝试将grkey和sjhm 两个参数手动添加到请求包中,再次发包,返回包提示短信生成成功

奇迹出现了,这里我们也成功接收到了验证码

我们填入验证码点击“短信验证” 发现还是失败

查看历史数据包发现,这一步短信验证时带入的手机号码还是用户的,而获取验证码的是我们的手机号的,所以会提示报错,输入验证码 点下一步 增加一个sjhm字段 值选自己手机号

提示验证成功,然后就是直接改密码就完事儿了,到这里我们就有了用户的姓名、身份证号、手机号、登录密码了,现在登录条件就差登录时候的手机验证码了

回到登录页面 填入账号信息,拦截数据包,一个一个放,发现再发送短信是请求包中携带了用户的手机号码,我们直接把数据中的手机号码替换成自己的,然后放包

成功获取到验证码

然后我们输入验证码、点登录、拦截数据包,把手机号修改成自己的,然后放包

成功登录系统

这个系统的身份认证采用了组合认证方式,身份证号+密码+静态验证码+手机短信验证码,但是每一种认证方式又是单独认证,1、身份证号+密码 2、手机号码+短信验证码,这就导致了攻击者有机可趁,随意重置用户的密码、登录用户的账号。

不可错过的往期推荐哦

![](https://mmbiz.qpic.cn/mmbiz_gif/AFgdiaw95AaNY572lpficoa3l1cVE17VfZ4WDWhcMYWJbibW3UvQP4H2Izrsic6ZSlqnw3DtMzjzJHvuhGJ2V6CF2A/640?wx_fmt=gif&wxfrom=5&wx_lazy=1&retryload=1&randomid=tfibc7o0&tp=webp#imgIndex=24)

微信小程序动态密钥实现自动加解密

实战攻防之黑盒挖掘Java反序列化漏洞

实战中Java反序列化漏洞黑盒挖掘思路

[话题]聊一聊如何更优雅的实现自动化加解密?

一次对某涩涩APP的分析之旅

层层防护下的突破之道:帆软漏洞利用深度解析

开发者别大意!Node.js 未授权安全漏洞,你的服务器可能正在被攻击者远程操控。

点击下方名片,关注我们

觉得内容不错,就点下“”和“在看


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:听风安全 《记一次任意用户密码重置漏洞》

评论:0   参与:  4