找回密码漏洞概述
找回密码是逻辑漏洞中密码重置的一种场景,经常出现在用户找回密码页面等涉及到网站密码重置的页面。攻击者在用户登录页面,没有获取到用户的账号和密码,无法查看该用户的账户信息,想通过找回密码的位置尝试绕过安全验证,从而重置用户密码,再进行登录,查看相关的账户信息。
找回密码的步骤
1、确认用户:输入用户的账号、手机号或者邮箱等;
2、安全验证:触发服务端下发验证码到接收的手机或邮箱,安全验证用户身份;
3、密码重置:输入新密码和确认新密码;
4、登录账号:重置密码成功,利用重置的新密码登录。
密码重置的常见问题
在找回密码的过程中,可以利用密码重置过程中常见的一些问题来尝试绕过安全验证,从而实现重置密码。常见密码重置问题:
1、用户名枚举:网站反馈多余信息,可猜测用户信息
2、验码返回前端处理:可截获、修改
3、修改Request:用户名、手机号、邮箱、Cookie等信息可修改
4、修改Response:操作结果成功/失败可修改
5、暴力破解验证码:验证码长度有限,或验证码未设置可靠的失效时间
6、拼凑密码重置链接:重置密码链接有规可循
找回密码复现
找回密码的逻辑漏洞存在形式比较多,目前找回密码的方式比较常见的有邮箱验证码、手机验证码以及密码问题。本文主要介绍几种常见的找回密码的攻击方法。
第一种:修改Response