网站地图    收藏   

主页 > 后端 > 网站安全 >

麦考林任意妹纸密码重置 - 网站安全 - 自学php

来源:自学PHP网    时间:2015-04-17 11:59 作者: 阅读:

[导读] 1)前面有两位基友发了麦考林的密码重置逻辑设计问题,我情不自禁也看了下;注册一个用户,来到密码重置功能发现可通过用户名或者邮箱找回密码;2)输入用户名点击确认,发现可...

1)前面有两位基友发了麦考林的密码重置逻辑设计问题,我情不自禁也看了下;注册一个用户,来到密码重置功能发现可通过用户名或者邮箱找回密码;


 
2)输入用户名点击确认,发现可通过两种方式找回密码:注册邮箱(直接发送)、绑定手机(需填写注册手机号码),这里我们选择通过注册邮箱方式;
 
 
3)登陆对应邮箱查收系统发送的密码重置链接;
 
 
4)我们发现密码重置链接看上去貌似“滴水不漏”,有重置密钥“p1”、与之相对应的邮件帐号“p2”;作为一个wooyun白帽子,我们都不相信所谓的滴水不漏,于是重新使用密码重置功能并抓包分析;
 
 
5)分析发现在这个密码重置过程中,系统似乎交互了一些不明数据,这些数据是干什么的呢,于是再次查看邮箱第二次收到的密码重置连接,将两次收到的密码重置链接进行对比,发现两次收到的密码重置链接是一样的;
6)抓包截获到的系统交互数据:
{"decrypt_email":"EJ_g_1_OX7w1BDNwTJ2iH3a8hULouLhlnkL4O6Mg2HBhtWShjSFrCElW6hPCLPjcuO1d","decrypt_custno":"1j8D5pO_g_2_w我是隐藏部分hpSvQ_g_3__g_3_","___cache_expire___":"Mon Jan 14 2013 23:51:43 GMT+0800 (China Standard Time)"}
7)收到系统发送的密码重置链接:
http://www.m18.com/gmkt.inc/Member/ForgotMemberPwdSearch.aspx?p1=1j8D5pO_g_2_w我是隐藏部分hpSvQ_g_3__g_3_&p2=xxxxx@sina.com
8)亲,告诉我你发现什么了?是的,截获到的数据包中"decrypt_custno"参数正是我们的密码重置密钥,而且同一用户的密码重置密钥还是固定不变的;
9)好吧,我不会告诉你,其实密码重置链接中的"p2"参数是毫无意义的,直接使用密钥即可重置密码-_-||

 
10)这里以剑心妹纸的帐号为例子,给大家演示下;
10.1)直接来到邮件发送环节;
 
 
10.2)点击发送邮件并抓包,哈哈,这里就不马赛克了;
 
 
10.3)有了密钥就直接构造链接链接重置剑心妹纸的帐号咯;
 
http://www.m18.com/gmkt.inc/Member/ForgotMemberPwdSearch.aspx?p1=T6W_g_2_vO0pyOBYOspiYmVW5w_g_3__g_3_
 
 
10.4)就这样把剑心妹纸征服 :)
 
 
11)最后,小结下:只要知道用户名(这个是公开的),即可使用邮箱重置密码功能抓包截获对应账户的密码重置密钥,进行密码重置(不需要知道邮箱帐号);且该密钥固定不变,相当于变向长期控制用户账户!!! 
 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论