0x00 背景介绍


请注意这两篇文章:

密码找回功能可能存在的问题

密码找回功能可能存在的问题(补充)

距离上两篇文档过去近半年了,最近整理密码找回的脑图,翻开收集的案例,又出现了一些新的情况,这里一并将所有见到的案例总结并分享给大家,在测试时可根据这个框架挖掘!

0x01 密码找回逻辑测试一般流程


  • 首先尝试正常密码找回流程,选择不同找回方式,记录所有数据包
  • 分析数据包,找到敏感部分
  • 分析后台找回机制所采用的验证手段
  • 修改数据包验证推测

0x02 脑图


enter image description here

0x03 详情


用户凭证暴力破解


四位或者六位的纯数字 例子

WooYun: 当当网任意用户密码修改漏洞

WooYun: 微信任意用户密码修改漏洞

返回凭证


url返回验证码及token 例子

WooYun: 走秀网秀团任意密码修改缺陷

WooYun: 天天网任意账户密码重置(二)

密码找回凭证在页面中


通过密保问题找回密码 例子

WooYun: sohu邮箱任意用户密码重置

返回短信验证码


例子

WooYun: 新浪某站任意用户密码修改(验证码与取回逻辑设计不当)

邮箱弱token


时间戳的md5 例子

WooYun: 奇虎360任意用户密码修改漏洞

用户名 & 服务器时间


WooYun: 中兴某网站任意用户密码重置漏洞(经典设计缺陷案例)

用户凭证有效性


短信验证码 例子

WooYun: OPPO手机重置任意账户密码(3)

WooYun: 第二次重置OPPO手机官网任意账户密码(秒改)

WooYun: OPPO修改任意帐号密码

邮箱token


例子

WooYun: 身份通任意密码修改-泄漏大量公民信息

重置密码token


例子

WooYun: 魅族的账号系统内存在漏洞可导致任意账户的密码重置

重新绑定


手机绑定 例子

WooYun: 网易邮箱可直接修改其他用户密码

WooYun: 12308可修改任意用户密码

邮箱绑定


例子

WooYun: 某彩票设计缺陷可修改任意用户密码

WooYun: 中国工控网任意用户密码重置漏洞

服务器验证


最终提交步骤 例子

WooYun: 携程旅行网任意老板密码修改(庆在wooyun第100洞)

服务器验证可控内容


例子

WooYun: AA拼车网之任意密码找回2

WooYun: 四川我要去哪517旅行网重置任意账号密码漏洞

服务器验证验证逻辑为空


例子

WooYun: 某政企使用邮件系统疑似存在通用设计问题

用户身份验证


账号与手机号码的绑定

WooYun: 上海电信通行证任意密码重置

账号与邮箱账号的绑定


例子

WooYun: 魅族的账号系统内存在漏洞可导致任意账户的密码重置

WooYun: 和讯网修改任意用户密码漏洞

找回步骤


跳过验证步骤、找回方式,直接到设置新密码页面 例子

WooYun: OPPO手机同步密码随意修改,短信通讯录随意查看

WooYun: 中国电信某IDC机房信息安全管理系统设计缺陷致使系统沦陷

本地验证


在本地验证服务器的返回信息,确定是否执行重置密码,但是其返回信息是可控的内容,或者可以得到的内容 例子

WooYun: 看我如何重置乐峰网供应商管理系统任意用户密码(管理员已被重置)

WooYun: oppo重置任意用户密码漏洞(4)

发送短信等验证信息的动作在本地进行,可以通过修改返回包进行控制


例子

WooYun: OPPO修改任意帐号密码-3

WooYun: OPPO修改任意帐号密码-2

注入


在找回密码处存在注入漏洞 例子

WooYun: 用友人力资源管理软件(e-HR)另一处SQL注入漏洞(通杀所有版本)

Token生成


token生成可控 例子

WooYun: 天天网任意账号密码重置(非暴力温柔修改)

WooYun: 天天网再一次重置任意账号密码(依旧非暴力)

注册覆盖


注册重复的用户名 例子

WooYun: 中铁快运奇葩方式重置任意用户密码(admin用户演示)

session覆盖


例子

WooYun: 聚美优品任意修改用户密码(非爆破)

附脑图文件:密码找回漏洞挖掘.zip