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

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

缺陷编号:wooyun-2015-0128695

漏洞标题:中国人民保险用户任意密码重置漏洞

相关厂商:中国人民保险

漏洞作者: 0x 80

提交时间:2015-07-23 16:45

修复时间:2015-09-11 08:36

公开时间:2015-09-11 08:36

漏洞类型:应用配置错误

危害等级:高

自评Rank:20

漏洞状态:已交由第三方合作机构(cncert国家互联网应急中心)处理

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-07-23: 细节已通知厂商并且等待厂商处理中
2015-07-28: 厂商已经确认,细节仅向厂商公开
2015-08-07: 细节向核心白帽子及相关领域专家公开
2015-08-17: 细节向普通白帽子公开
2015-08-27: 细节向实习白帽子公开
2015-09-11: 细节向公众公开

简要描述:

中国人民保险用户任意密码重置漏洞

详细说明:

http://www.epicc.com.cn/ecenter/views/ecenterClub/loginRegisterNew/login.jsp
思路我慢慢来说
我先随便重置一个,如admin
他是1个查询用户的原理,如果用户存在,那么就会显示
看看代码:

</div>
<div class="account">
<p>账号<label style="font-size:12px;color:gray;">(用户名/已验证邮箱/已验证手机号)</label></p>
<input type="text" class="name" tabindex="1" value="用户名/已验证邮箱/已验证手机号" maxlength="60" id="entryId" name="entryId" onfocus="if(this.value=='用户名/已验证邮箱/已验证手机号') this.value='';" onblur="if(this.value=='') this.value='用户名/已验证邮箱/已验证手机号';" />
<div class="loginForEmailSearch" style="background:#fff; filter:alpha(opacity=90); -moz-opacity:0.9; -khtml-opacity: 0.9; opacity: 0.9; position:absolute; z-index:999; ">
<ul class="on_changes" style="display:none">
<li emailForLogin="">请选择邮箱类型</li>
<li emailForLogin="@163.com"></li>
<li emailForLogin="@126.com"></li>
<li emailForLogin="@139.com"></li>
<li emailForLogin="@189.cn"></li>
<li emailForLogin="@qq.com"></li>
<li emailForLogin="@vip.sina.com"></li>
<li emailForLogin="@sina.cn"></li>
<li emailForLogin="@sina.com"></li>
<li emailForLogin="@sohu.com"></li>
<li emailForLogin="@hotmail.com"></li>
<li emailForLogin="@gmail.com"></li>
<li emailForLogin="@wo.com.cn"></li>
<li emailForLogin="@21cn.com" id="theLastLi"></li>
</ul>
</div>
</div>
</div>


这么多格式的账号
我先输入admin
点忘记密码
http://www.epicc.com.cn/ecenter/views/ecenterClub/loginRegisterNew/findPwdFirst.jsp

36.png


3256.png


这里也出现缺陷了
用户名和手机都泄露了

4361.png


我们要利用邮箱验证方式
开burp,代理
抓包

233.png


这时候,重新发送这,点击时截包

425.png


修改[email protected]为自己的邮箱
我就修改成我自己的~~
然后点下GO
发到repeator功能
修改下

450.png


然后GO

7.png


这时候会收到重置密码的邮件

72.png


接着,我们看看

5461.png


http://www.epicc.com.cn/ecenter/ecenterClub/loginRegisterNew/passwordFind/validLink?entryId=d4b413a70e83f19e&email=0419e7160ac6e9140e36ee91c8e906c63eabddd3a4f87073&rand=862f19a4cde963c2

324.png


这时候可以重置密码了
重置为7788250

83.png


328.png


这时候问题来了,500错误
原因是什么呢?分析下
因为不是主人,呵呵
而且一次POST请求,他的CODE都是不同的,我们思路是先找回抓包
接着,修改地址,给自己发邮件
接着,重置密码处再抓包
修改回原主人的邮件,即可
我们试试
重新来~~~·
老规矩~~

658.png


修改为自己的邮件,然后GO

254.png


然后接收激活重置的邮件

38.png


打开

3462.png


重点来了~~
我们点下重置
http://www.epicc.com.cn/ecenter/ecenterClub/loginRegisterNew/passwordFind/validLink?entryId=d4b413a70e83f19e&email=0419e7160ac6e9140e36ee91c8e906c63eabddd3a4f87073&rand=f04cdc8f7c416612

4517.png


就改为7788250吧,老规矩,这里需要在修改密码处再次抓包

333.png


240.png


我们需要把主人换回来
还记得主人的邮箱把~~
没错,就是他:[email protected]
改回主人

76.png


接着ON下

4360.png


接下来,admin 7788250
登陆看看

4356.png


成功了

5469.png


5680.png


===============================================================
再来改个
http://www.epicc.com.cn/ecenter/views/ecenterClub/loginRegisterNew/findPwdFirst.jsp
改test

43602.png


459.png


老规矩
[email protected]
记住主人的邮箱

54628.png


抓包

5470.png


修改

4509.png


接着,激活邮件来了

249.png


打开

4359.png


20.png


老规矩
更改时抓包
还是7788250吧

5467.png


修改
原主人邮箱[email protected]

6788.png


接着ON下

54690.png


test 7788250
登陆看看

359.png


OK了~~

漏洞证明:

359.png

修复方案:

二次验证做一些过滤!

版权声明:转载请注明来源 0x 80@乌云


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:15

确认时间:2015-07-28 08:35

厂商回复:

CNVD确认并复现所述情况,已经转由CNCERT向中国人保公司通报,对方已经收悉并已及时跟进处置。

最新状态:

暂无