当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2013-017937

漏洞标题:我是如何重置好大夫任意用户密码的

相关厂商:好大夫在线

漏洞作者: se55i0n

提交时间:2013-01-27 08:35

修复时间:2013-03-13 08:36

公开时间:2013-03-13 08:36

漏洞类型:设计缺陷/逻辑错误

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2013-01-27: 细节已通知厂商并且等待厂商处理中
2013-01-27: 厂商已经确认,细节仅向厂商公开
2013-02-06: 细节向核心白帽子及相关领域专家公开
2013-02-16: 细节向普通白帽子公开
2013-02-26: 细节向实习白帽子公开
2013-03-13: 细节向公众公开

简要描述:

求礼物,求给力!

详细说明:

1)注册用户一枚,绑定邮箱:xxx@sina.com,来到用户密码重置功能,输入绑定邮箱;

2.png


2)点击提交并抓包,发现在校验邮箱有效性之后,在发送密码重置邮件过程中出现了“邮箱帐号”和“用户ID”;

3.png


3)尝试将邮箱帐号改为“xxx@sina.cn”并提交,系统提示发送成功;

4.png


4)登陆xxx@sina.cn邮箱查看,果然收到了好大夫系统发送的密码重置邮件;

8.png


5)既然在重置过程中能够修改密码重置链接接收邮箱,那么能不能修改用户的ID呢;在上面的测试过程中,我们发现用户ID为一个9位数字且并非连续,于是再注册一枚用户,重复上面的测试在过程中替换用户ID为xxx@sina.com用户的ID,依然测试成功;
6)既然在这个过程中不管替换密码重置链接接送邮箱、亦或是用户ID,都能成功进行密码重置操作,那么能不能不用抓包修改这些参数,直接操作呢?在上面的测试过程中,我们发现密码重置url请求格式如下:

http://passport.haodf.com/user/sendpassword?type=email&input=密码重置链接接收邮箱&userId=9位数字用户ID


7)直接构造如下请求url请求;

http://passport.haodf.com/user/sendpassword?type=email&input=xxxxx@qq.com&userId=XX@sina.com的用户ID


8)真不敢想象,这样就直接获取到了该用户的密码重置链接;

9.png


PS:用户ID虽然不连续,但是为9位数字且貌似前3位固定不变,我们通过遍历即可获取到所有有效用户ID,这个危害你们自己评估吧!最后,求个新年礼物!!!

漏洞证明:

见详细说明~

修复方案:

版权声明:转载请注明来源 se55i0n@乌云


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:20

确认时间:2013-01-27 12:46

厂商回复:

很给力的漏洞,我们会尽快修复此漏洞。

最新状态:

暂无


漏洞评价:

评论

  1. 2013-01-27 09:24 | Passer_by ( 实习白帽子 | Rank:97 漏洞数:21 | 问题真实存在但是影响不大(腾讯微博Passer...)

    这是风萧萧麽- -!!

  2. 2013-01-27 09:28 | se55i0n ( 普通白帽子 | Rank:1567 漏洞数:173 )

    @Passer_by 嘎嘎~你猜

  3. 2013-01-27 17:41 | imlonghao ( 普通白帽子 | Rank:730 漏洞数:74 )

    @se55i0n 漏洞数快破百了。。

  4. 2013-01-27 22:30 | se55i0n ( 普通白帽子 | Rank:1567 漏洞数:173 )

    @imlonghao 哈哈,100挺喜庆的~

  5. 2013-01-30 20:30 | fox ( 普通白帽子 | Rank:159 漏洞数:16 | fox)

    @好大夫在线 厂商你修好没有, 我也找了一个这样的, 不知道重复没有, 截止目前还是有效的。。。

  6. 2013-02-01 11:38 | xfkxfk 认证白帽子 ( 核心白帽子 | Rank:2179 漏洞数:338 | 呵呵!)

    最近,好大夫,好火,好忙啊,满屏的好大夫。。。