任意用户密码重置的10种姿势

以前安全测试最爱挖的就是任意用户密码重置,今天看了carry_your师傅在ichunqiu上的视频文字总结一下任意用户密码重置的10种姿势:

1,短信验证码可爆破;

视频案例中输入手机号码、图片验证码就可以获取短信验证码,并且新密码也是在一个页面中,但是输入短信验证码之后,后端有个请求会判断短信验证码是否正确,错误的话页面会有提醒。攻击者可以用这个请求来爆破验证码,获取到正确的短信验证码之后就可以重置任意用户密码了。

缺陷主要是两个方面,第一,未对短信验证码的失效时间进行限制;第二,功能设计存在缺陷,如果设计成整个功能只用最后一个请求,包含注册手机号码、图片验证码、短信 验证码、新密码,对这个请求中手机号码、短信验证码的匹配以及短信验证码的正确性进行验证,攻击者就没办法进行爆破。当然前提是有正确运用图片验证码。

2,短信验证码显示在获取验证码请求的回显中;

攻击者知道被攻击用户的手机号码,获取短信验证码,抓包就可以在回显中看到用户收到的重置用的短信验证码。

3,注册手机号及短信验证码未进行匹配性验证;

攻击者用自己手机号码收到的重置用短信验证码可以重置其它用户的密码。

4,用户名、手机号码、短信验证码三者没有进行匹配性验证;

只验证码了手机号码、短信验证码是否匹配,最终重置密码是根据用户名来重置的。攻击者重置用户a的密码,获取短信验证码的时候将手机号码修改成自己账号对应的,获取到对应的正确短信验证码,然后输入短信验证码,由于只验证了手机号码以及短息验证码是否匹配,从而可以成功绕过短信验证码限制来重置用户a的密码。

5,短信验证码的验证在本地客户端进行验证;

通过修改请求回显来绕过,常见重置姿势之一,也可以用于绕过一些其它的前端验证,比如存储xss,参数的合法性验证如果通过前端来完成,也是可以用这种姿势绕过的。

6,重置步骤未进行校验;

这种一般发生在多个步骤重置的过程中,未对步骤1,2进行校验,通过修改url直接绕过短信验证码的校验步骤,直接进入重置页面进行重置。

7,重置请求未验证身份;

跟方法4差不多,最终重置请求没有验证用户身份信息。攻击者用自己的手机号码短信验证码走重置流程,最后一步重置请求抓包修改身份信息为其它用户的,从而进行其它用户密码的重置。

8,登陆成功修改密码功能平行越权;

用户登陆成功之后可修改自己的密码,修改请求只需要输入新密码,请求中未验证当前用户的cookie、session、id等身份信息,可以通过修改id等来重置其它用户的密码。

9,未校验身份信息的唯一标识cookie信息;

重置请求参数中没有用户名、手机号码、id等身份标识,唯一的身份标识是在cookie中。攻击者用自己的账号进行重置,最后重置请求中替换掉请求中的cookie进行其它用户密码的重置。

10,MVC数据对象自动绑定漏洞;

邮箱重置密码或者手机号码重置密码的时候,请求中没有明显的身份标识,可以尝试增加参数值来测试是否存在MVC数据对应自动绑定漏洞。比如增加email参数及对应的自用邮箱作为参数值,看看是否能收到密码重置链接。有关这个漏洞可以看看carry_your师傅视频中的案例,以及CF_HB发过的案例,也可以看看CplusHua有关模糊测试的ppt。

carry_your课程链接:

https://www.ichunqiu.com/course/59045

(图文版)任意用户密码重置的10种常见姿势:

https://www.lovesec.com/penetration-test/233.html

原文地址:https://www.cnblogs.com/hanxiaobei/p/9436661.html

时间: 2024-07-30 19:26:12

任意用户密码重置的10种姿势的相关文章

安全测试===任意用户密码重置的10种常见姿势

https://www.ichunqiu.com/course/59045 http://www.freebuf.com/articles/web/164510.html http://www.freebuf.com/articles/web/160883.html http://www.freebuf.com/articles/database/161495.html http://www.freebuf.com/articles/web/162152.html http://www.free

任意用户密码重置(五):重置凭证可暴破

在逻辑漏洞中,任意用户密码重置最为常见,可能出现在新用户注册页面,也可能是用户登录后重置密码的页面,或者用户忘记密码时的密码找回页面,其中,密码找回功能是重灾区.我把日常渗透过程中遇到的案例作了漏洞成因分析,这次,关注因重置凭证可暴破导致的任意用户密码重置问题. 传送门: 任意用户密码重置(一):重置凭证泄漏 任意用户密码重置(二):重置凭证接收端可篡改 任意用户密码重置(三):用户混淆 任意用户密码重置(四):重置凭证未校验 密码找回需要鉴别用户的合法身份,证明你就是你,通常有两种做法,一是网

任意用户密码重置(四):重置凭证未校验

在逻辑漏洞中,任意用户密码重置最为常见,可能出现在新用户注册页面,也可能是用户登录后重置密码的页面,或者用户忘记密码时的密码找回页面,其中,密码找回功能是重灾区.我把日常渗透过程中遇到的案例作了漏洞成因分析,这次,关注因重置凭证未校验导致的任意用户密码重置问题. 传送门: 任意用户密码重置(一):重置凭证泄漏 任意用户密码重置(二):重置凭证接收端可篡改 任意用户密码重置(三):用户混淆 密码找回需要鉴别用户的合法身份,证明你就是你,通常有两种做法,一是网站将重置验证码发至用户绑定的邮箱或手机号

zzcms8.2#任意用户密码重置#del.php时间盲注#复现

00x0 引言 早上起来,发现seebug更新了一批新的洞, 发现zzcms8.2这个洞好多人在挖,于是我就默默的踏上了复现之路(要不是点进去要买详情,我何必这么折腾~) 环境:zzcms8.2(产品招商型) php-5.4.45 . mysql-5.5.53 01x0 任意用户密码重置 01x1 任意用户密码重置方式一 话说,这个洞的标题应该是任意前台用户密码重置,后台管理员重置不了的,或许是我复现的问题.~~ 先注册个账号,然后首页点击找回密码. 地址:http://localhost/on

任意用户密码重置(二):重置凭证接收端可篡改

在逻辑漏洞中,任意用户密码重置最为常见,可能出现在新用户注册页面,也可能是用户登录后重置密码的页面,或者用户忘记密码时的密码找回页面,其中,密码找回功能是重灾区.我把日常渗透过程中遇到的案例作了漏洞成因分析,这次,关注因重置凭证接收端可篡改导致的任意用户密码重置问题. 密码找回逻辑含有用户标识(用户名.用户 ID.cookie).接收端(手机.邮箱).凭证(验证码.token).当前步骤等四个要素,若这几个要素没有完整关联,则可能导致任意密码重置漏洞. 前情提要:[传送门] 案例一:接收端可篡改

某站的任意用户密码重置

首先开burp抓包,点击发送验证码,看到底下那串数字,我开始以为随便改,然后告诉我没有这个用户??然后我想这是不是我自己的ID,于是联系我的小同伴借我他的手机号注册并尝试了一下,将他的重置页面底下的ID改为上图,也就是我的,然后成功...发送到了我的手机.. 原文地址:https://www.cnblogs.com/pwn2web/p/10661246.html

centos 7 救援模式,解决忘记root用户密码重置

centos 7 救援模式解决忘记root用户密码重置 1. 进入BIOS模式,选择启动方式,保存重启2. 进入启动界面,选择"troubleshooting"3. 进入如下界面,选择救援模式4. 进入如下界面,选择继续5. 进入如下界面,选择输入命令切换目录6. 进入如下界面,修改输入新密码,重启机器7. 重启机器之前,记得将BIOS修改过来 原文地址:https://blog.51cto.com/1969518/2485099

PHPCMS v9.5.8-设计缺陷可重置前台任意用户密码

验证.参考漏洞:http://wooyun.jozxing.cc/static/bugs/wooyun-2015-0152291.html 漏洞出现在/phpcms/modules/member/index.php   第1687-1756行 public_forget_password_username()函数 public function public_forget_password_username() { $step = intval($_POST['step']); $step =

centos 7 单用户模式,解决忘记root用户密码重置

解决忘记root用户密码之单用户模式 1. 重启服务器,出现如下界面时按下"e"键. 2.进入编辑界面.原界面.3.修改完成后界面.现界面.4.按下ctrl-x后出现如下界面.5.切换目录.6.输入新密码.7.重启服务器. 原文地址:https://blog.51cto.com/1969518/2485001