手机号重复绑定漏洞


前言

持续更新:整理下渗透测试工作中发现过的漏洞(包含漏洞描述、漏洞等级、漏洞验证、修复建议),这里不深究漏洞产生的各种后利用或者绕过方式,漏洞验证过程不局限于文章中的方法,能够证明漏洞存在即可。

0x01 漏洞描述

- 手机号重复绑定漏洞 -

许多网站在用户注册时都会要求用户绑定手机号或者邮箱进行注册,通过绑定的手机号和邮箱常用于用户忘记密码时接收验证码来判断是否本人操作。一般一个手机号限定绑定一个用户账号,如果一个手机号可同时绑定多个账号,可能造成账户信息泄露、账号身份被盗用的风险。

0x02 漏洞等级

威胁级别 高危 中危 低危

0x03 漏洞验证

一般情况下,此漏洞出现在用户注册需要绑定手机号,但是没有对手机号进行短信验证或者短信验证可通过其他手段被绕过的地方。

以下是遇到过的一个案例,此处注册用户绑定手机号时没有对手机号进行短信验证。

先注册第一个ceshi123用户,使用手机号137******41绑定该账号。

再注册第二个ceshi456用户,使用同一个手机号137******41再次绑定该账号,仍然可以注册成功。

在使用ceshi456用户密码找回功能时,此案例中只需要填写用户名和绑定手机号,系统就会返回关于此手机号绑定的所有用户信息。由于此手机号还绑定了ceshi123用户,因此会泄露ceshi123的用户个人信息,例如:出生年月、身份证、邮箱号码、手机号码等。由于此处是测试账号数据,实际情况可能会泄露更多敏感信息。

在密码找回成功验证手机号时,例如此处短信验证码可通过爆破等手段绕过,则只需要替换账号参数bae084值,即可同时查询到ceshi123和ceshi456加密传输的密码值,如果被攻击者获取到加密规则,可以进一步猜解明文密码。

在此案例中,如果攻击者知道了别人的账户和绑定手机号,那么攻击者就可以利用该账号的手机号再去注册一个新账号,再利用新账号通过密码找回功能盗取别人的账号信息。

0x04 漏洞修复

  1. 禁止同一手机号可被多个账户绑定,限定一个手机号只能绑定一个账户。

文章作者: LuckySec
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 LuckySec !
评论
 上一篇
验证码重放漏洞 验证码重放漏洞
验证码就是每次访问页面时随机生成的图片,内容一般是数字和字母,需要访问者把图中的数字字母填到表单中提交,这样能有效地防止暴力破解、信息枚举、恶意灌水、广告帖等。例如在登陆的地方设置访问一个脚本文件,该文件生成含验证码的图片并将值写入到session里,提交的时候验证登陆的脚本就会判断提交的验证码是否与session里的一致。如果服务器端受理请求后,没有将上一次保存的session验证码及时清空,将会导致验证码可重复使用。
2022-10-29
下一篇 
Web长密码拒绝服务漏洞 Web长密码拒绝服务漏洞
Web应用程序没有对用户提交的密码长度进行合理限制,攻击者可以通过发送一个非常长的密码(1.000.000个字符)对服务器造成拒绝服务攻击,这可能导致网站无法使用或无响应。通常,此问题是由易受攻击的密码哈希实现引起的,发送长密码时,迫使系统执行密码哈希过程导致服务器CPU和内存耗尽。
2022-10-27
  目录