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

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

缺陷编号:wooyun-2015-0109001

漏洞标题:万科某系统任意密码重置

相关厂商:万科

漏洞作者: 路人甲

提交时间:2015-04-24 14:35

修复时间:2015-06-08 14:36

公开时间:2015-06-08 14:36

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

危害等级:高

自评Rank:20

漏洞状态:未联系到厂商或者厂商积极忽略

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-04-24: 积极联系厂商并且等待厂商认领中,细节不对外公开
2015-06-08: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

不但可以短信轰炸,而且可以....你猜可以什么

详细说明:

测试不容易,求不查水表,不忽略,再给个合情合理的rank
测试环境:住这儿app,ios客户端
忘记密码流程中,
第一步:
http://zhuzher.vanke.com/uip/vhome/user/checkAccount.do是校验用户是否存在的请求。绕过这步点方法有两个:
(1)方法1:可以填入正确的手机号码通过验证,此处通过验证根后面实际发送短信到的号码无关系,所以无需关系
(2)方法2:随便填入个手机号,修改response的userid字段,修改成一个存在的id,比如说1
第二步:
http://zhuzher.vanke.com/uip/messagesend/smsSend.do是短信校验码的请求,
修改mobile字段即为发送短信到的号码。修改content字段即为发送短信的内容
在获得smsSend.do的请求后,可以直接通过回放第二步的包进行轰炸,duang,duang,duang
看到这,就知道不但可以短信轰炸,还可以自定义轰炸内容,duang,duang,duang
PS:自定义了个短信内容为www.wooyun.org,结果后面就再也发不出短信了,I’m so sorry,我只是测试下,不想被查水表啊 > _ <
以为到这就完了吗?各位看官,请继续
上面说了短信校验码是客户端生成并发送给服务端的,所以填写上别人的账号,看下请求的内容就知道短信校验码了,爆破都省了。
当然了,要知道万科业主的电话号,不过在这电话号码信息满天飞的时代,这个肯定不难,最简单的获取方式:公告栏里面各种管家的电话、各种保安的电话...

所以该漏洞不但可以短信轰炸,还可以自定义短信内容,更可以直接获取短信验证码而进行密码重置

漏洞证明:

POST /uip/messagesend/smsSend.do HTTP/1.1
Host: zhuzher.vanke.com
Authorization: Basic Og==
Accept: */*
Accept-Encoding: gzip, deflate
Accept-Language: zh-Hans;q=1, en;q=0.9, fr;q=0.8, de;q=0.7, ja;q=0.6, nl;q=0.5
Content-Type: application/x-www-form-urlencoded; charset=utf-8
Content-Length: 468
Connection: keep-alive
Proxy-Connection: keep-alive
User-Agent: zhù zhè ér/2041 (iPhone; iOS 8.8.8; Scale/2.00)
{"head":{"os":"ios","sessionId":"嗯嗯","sysid":"uip","password":"嗯嗯","osVersion":"8.8.8","userId":"","timestamp":"20880818188888","version":"2.6.6","functionid":"smsSend"},"parameter":{"content":"www.wooyun.org","mobile":"010-82990999","smsType":"1"}}


上面的请求被我和谐过了,只是给大家看看样子

修复方案:

服务端限制短信间隔,
服务端定义校验码

zhuzher.jpg


版权声明:转载请注明来源 路人甲@乌云


漏洞回应

厂商回应:

未能联系到厂商或者厂商积极拒绝