恣意用户暗码重置(二):重置凭据接纳端可篡改

访客5年前黑客文章1461

在逻辑缝隙中,恣意用户暗码重置最为常见,或许呈现在新用户注册页面,也或许是用户登录后重置暗码的页面,或许用户忘掉暗码时的暗码找回页面,其间,暗码找回功用是重灾区。我把日常浸透过程中遇到的事例作了缝隙成因剖析,这次,重视因重置凭据接纳端可篡改导致的恣意用户暗码重置问题。

暗码找回逻辑含有用户标识(用户名、用户 ID、cookie)、接纳端(手机、邮箱)、凭据(验证码、token)、当时过程等四个要素,若这几个要素没有完好相关,则或许导致恣意暗码重置缝隙。

事例一:接纳端可篡改。恳求包中包括接纳端参数,可将凭据发至指定接纳端。
暗码重置页面,输入恣意一般账号,挑选手机 *** 找回暗码。在身份验证页面点击获取短信验证码:

阻拦恳求,发现接纳验证码的手机号为恳求包中的参数:

直接篡改为进犯者的手机号,成功接纳短信验证码,提交验证码后,正常履行 3、4 步即可成功重置该账号的暗码。
事例二:接纳端可篡改。恳求包中呈现接纳端直接相关参数,可将凭据发至指定接纳端。
在暗码找回页面,用进犯账号 test0141,测验重置方针账号 2803870097 的暗码(对滴,你没看错,这两个长得彻底不像的账号的确是同个网站的)。
在之一个主页中输入 test0141 和图片验证码完结“01 安全认证”:

恳求为:

输入图片验证码获取短信验证码完结“02 身份验证”:

恳求为:

后续的 03、04 步不触及用户名信息,疏忽。
全流程下来,客户端并未直接提交接纳短信验证码的手机号,屡次测验可知,02 中呈现的 user_name 用于查询下发短信的手机号,用它能够直接指定接纳端,那么,它是否仅此效果而不用于指定重置暗码的账号?如下思路验证,先将 userName 置为 2803870097 完结 01 以告知服务端重置的账号,再将 user_name 置为 test0141 完结 02 以诈骗服务端将短信验证码发至进犯者手机,次序完结 03、04 或许能完成重置 2803870097 的暗码。详细如下。
之一步,用一般账号 2803870097 进行安全认证:

第二步,对一般账号 2803870097 进行身份验证:

阻拦发送短信验证码的恳求:

将 user_name 从 2803870097 篡改为 test0141,操控服务端将验证码发至 test0141 绑定的手机号:

test0141 的手机号成功接纳到验证码 872502,将该验证码填入重置 2803870097 的身份校验页面后提交:

第三步,输入新暗码 PenTest1024 后提交,体系提示重置成功:

第四步,用 2803870097/PenTest1024 登录,验证成功:

防护办法方面,必定要将重置用户与接纳重置凭据的手机号/邮箱作一致性比较,一般直接从服务端直接生成手机号/邮箱,不从客户端获取。
 

相关文章

黑客接单app._怎么找黑客社群

sudo apt-get install build-essential automake libtool libc6-dev-i386 python-pip g++-multilib3.运用暗码办理...

为了赌博,我全身家都输下去了。。。你们猜我输了

0x02 影响范围git checkout 2.8.86、2019年5月31日为了赌博,我全身家都输下去了。。。你们猜我输了, long fileSize = 0L;要触发此漏洞,guest虚拟机必须...

一款奇葩的PHP Webshell后门剖析

  近来,360网站卫兵安全团队近期捕获一个依据PHP完成的webshell样本,其奇妙的代码动态生成方法,鄙陋的本身页面假装方法,让咱们在剖析这个样本的过程中感受到相当多的趣味。接下来就让咱们一起共...

黑客在线网络接单_网络怎么找黑客

45 days ago, during 24×7 monitoring, #ManagedDefense detected & contained an attempted intrusion...

怎么找黑客(怎么找黑客查询某人信息)

怎么找黑客(怎么找黑客查询某人信息)

我的QQ被盗了,我一定要找出幕后黑手!!哪位好心人帮帮忙,大恩永生难忘... 首先qq被盗了不要慌张,可以通过很多种方式找回自己的qq号码,首先在百度上搜索qq安全中心,进入到安全中心的首页。随后在打...