浙江移动任意用户密码修改

漏洞概要

缺陷编号:WooYun-2012-011488

漏洞标题:浙江移动任意用户密码修改

相关厂商:浙江移动

漏洞作者:seclab_zju

提交时间:2012-08-30 23:41

公开时间:2012-10-12 23:42

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

危害等级:高

自评Rank:20

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

Tags标签:

漏洞详情

披露状态:

2012-08-30: 细节已通知厂商并且等待厂商处理中
2012-09-01: 厂商已经确认,细节仅向厂商公开
2012-09-11: 细节向核心白帽子及相关领域专家公开
2012-09-21: 细节向普通白帽子公开
2012-10-01: 细节向实习白帽子公开
2012-10-12: 细节向公众公开

简要描述:

浙江移动网站存在漏洞,可以修改任意用户的服务密码。使用修改后的密码登录后可以进行包括更改套餐、查询用户个人资料、查询账单等操作。进一步的查看通话详单等操作需要二次验证,但仍然可以通过爆破方式进入。

详细说明:

进入找回密码页面,填入任意一个浙江移动号码,会进入找回流程。

系统会发送一个6位纯数字验证码到手机

由于6位数字总共只有10万种组合,写一个脚本遍历这些组合post到页面上即可。但这里的难度在于验证码的有效期只有15分钟(对有些用户是30分钟,不知道为什么),因此需要在一个网速较快的环境快速把修改密码的页面post出去。如果是30分钟时限,每秒需要post 10^6/(30*60)=555个packet。我这里教育网出去比较慢,但也可以在30分钟内遍历50%左右即5万个密码,相信公众网的速度应该会更快。

漏洞证明:

只盲测了自己和家人的手机,无法提供其他间接证明。就贴个部分代码截屏可以伐?

修复方案:

程序设计的逻辑上密码找回流程必须使用cookie,但这里并没有将cookie和某次密码找回的过程绑定,因此无法对重试的次数进行限制。

上面的攻击代码中只需要填入任意时候产生的合法WTSESSION即可,可见cookie并没有绑定到当次业务流程。目前采取的IP封禁貌似可行,但其实很容易用代理绕过。另外一个修复方法相对简单点:加验证码(顺便说下,移动的验证码设计的很好,比较难分割和OCR),不过会破坏用户体验。可能还有更好的方法吧,我暂时就想到这两条。最后我的IP貌似被浙江移动给人工封了,希望能恢复回来(就是60.191.*.*的那个),本次测试纯属白帽子行为,仅测试了自己和家人的三台手机,虽然不希望移动发个公仔给我,但好歹实验室的其他老师和同学也要上移动网站的说 :)

漏洞回应

厂商回应:

危害等级:高

漏洞Rank:15

确认时间:2012-09-01 23:36

厂商回复:

CNVD确认漏洞情况,同时已经将漏洞信息转由CNCERT交由测评组同事(现在浙江)处置。按完全影响机密性、部分影响可用性进行评分,rank=8.47*1.3*1.3=14.313

最新状态:

暂无

评价

  1. 2010-01-01 00:00 风萧萧 白帽子 | Rank:874 漏洞数:67)

    嗯。乌云确实是做了不少好事!

  2. 2010-01-01 00:00 El4pse 白帽子 | Rank:29 漏洞数:7)

    貌似这个漏洞你一晚上没睡好啊

  3. 2010-01-01 00:00 seclab_zju 白帽子 | Rank:72 漏洞数:11)

    被社工了。。。

  4. 2010-01-01 00:00 El4pse 白帽子 | Rank:29 漏洞数:7)

    - -木有社工。。昨天看了下你的微博而已。。无心的。。

  5. 2010-01-01 00:00 neal 白帽子 | Rank:125 漏洞数:12)

    大家都起来的好早。。。

  6. 2010-01-01 00:00 seclab_zju 白帽子 | Rank:72 漏洞数:11)

    @El4pse 哈哈 都忘了,原来自己在乌云留的微博链接。。。

  7. 2010-01-01 00:00 El4pse 白帽子 | Rank:29 漏洞数:7)

    @seclab_zju 嘻嘻自考浙大有什么要求吗

  8. 2010-01-01 00:00 seclab_zju 白帽子 | Rank:72 漏洞数:11)

    自考本科吗?这个不太清楚哈。硕士的话可以参考学校每年的招生简章。

  9. 2010-01-01 00:00 popok 白帽子 | Rank:82 漏洞数:19)

    我记得移动被wooyun封杀了吧?

  10. 2010-01-01 00:00 xsser 白帽子 | Rank:152 漏洞数:17)

    @popok 不直接联系了 交给cert了

  11. 2010-01-01 00:00 Vty 白帽子 | Rank:165 漏洞数:21)

    python大牛啊,球教育啊

  12. 2010-01-01 00:00 majin78 白帽子 | Rank:9 漏洞数:1)

    @seclab_zju 今年刚考,进去有什么要求?