1、通过忘记密码的方式,拦截数据包,修改接受验证码的手机号或者邮箱帐号。

  这里需要的注意的是看系统是否做校验数据,有的只校验了用户信息但是没有校验手机号码,就算收到验证码也是没有不能够正常重置该用户名的。

2、跳过验证

  有不少网站的重置密码方式像下面这种:

    www.test.com/resetpassword.php?action=step1

  像这种尝试去绕过,修改step1。

3、验证码多次有效的

  登录的时候验证码不主动刷新多次登录有效的,可以直接尝试爆破。

4、替换cookie

  用户重置的时候将请求包中的cookie换成用户B的。

5、修改ID

  按照重置正常步骤走,但是要将ID改成别人的,这里主要是因为没有进行身份校验。当然也可以遍历所有id将密码所有人的密码改成一个。

6、验证码没有绑定用户

  首先重置自己的密码,自己的手机会收到验证码,修改密码的时候将账号换成B用户的。

7、没有对用户进行校验

  其实跟第6点很相似,这里只是最后一步修改密码的时候改为其他用户。