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

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

缺陷编号:wooyun-2015-0115537

漏洞标题:如家酒店某严重逻辑漏洞可登陆任意账号可导致几千万敏感信息泄露(涉及任意用户账号个人基本信息、入住记录等)

相关厂商:如家酒店集团

漏洞作者: Looke

提交时间:2015-05-22 14:54

修复时间:2015-07-08 00:30

公开时间:2015-07-08 00:30

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

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

简要描述:

对,就是这个,华住酒店的也是我发的:http://www.wooyun.org/bugs/wooyun-2015-0115276
书说上回:在华住酒店没有找到女神的X房记录,心情顿时高兴无比,但是就在刚刚看到了女神,她的膝盖是红肿的,于是我好像知道了什么,我又打开了电脑,输入女神的手机号,就从这儿再次开始这个宏伟的计划吧。

详细说明:

1、目标网址:http://www.homeinns.com/homeinn,自己先注册一个账号,后面要用;
2、使用自己的账户进行找回密码,并使用fiddler截取返回的数据包;
3、将自己收到的验证码输入进去,然后点下一步,此时将返回的数据包全都复制到空白文档中备用;
4、重新进入找回密码的页面,输入你想登录账户的姓名和手机号,点击获取验证码(这步是必须的,稍后会讲为什么是必须的),然后随意输入一个六位数字,点击下一步,拦截返回的数据包,我们此时将第3步中截获的数据替换掉现在所拦截的数据,然后放行该数据包。
5、此时可以跳到重置密码的页面,这里我们输入我们要更改的密码;
6、点击下一步,重置密码成功。
7、到这里就结束了么?显然没有,因为这次重置密码我们必须要知道用户的名字和手机号,但是搞华住的时候是不需要知道用户的名字的,但是如果我不输入用户名字或者输入错误的用户名字都会导致验证码发送无效,我们要怎么处理呢?
8、还是到找回密码的第一步的界面,我们输入错误的名字,要改密码的手机号,输入验证码(图片验证码),然后拦截发送的数据包,此时点击获取手机验证码,将发送的数据包中的名字置为空,然后放行数据包,此时可以发现服务器那端给手机发验证码了(ps:一定要保证服务器给手机发送验证码了,否则后面的步骤即使成功了,密码也不会改成功的);
9、此时不要激动,(重点)点击图片验证码重新获取图片验证码,然后输入,然后随便输入一个六位数字,然后按照第3步继续。
10、ok,我们可以只根据手机号码来获取任意账户的开房信息等敏感信息了,也可以写个脚本遍历一下所有手机号。

漏洞证明:

1、目标网址:http://www.homeinns.com/homeinn,自己先注册一个账号,后面要用;
2、使用自己的账户进行找回密码,并使用fiddler截取返回的数据包;

1.png


3、将自己收到的验证码输入进去,然后点下一步,此时将返回的数据包全都复制到空白文档中备用;
4、重新进入找回密码的页面,输入你想登录账户的姓名和手机号,点击获取验证码(这步是必须的,稍后会讲为什么是必须的),然后随意输入一个六位数字,点击下一步,拦截返回的数据包,我们此时将第3步中截获的数据替换掉现在所拦截的数据,然后放行该数据包。

2.png


5、此时可以跳到重置密码的页面,这里我们输入我们要更改的密码;

3.png


6、点击下一步,重置密码成功。

4.png


7、到这里就结束了么?显然没有,因为这次重置密码我们必须要知道用户的名字和手机号,但是搞华住的时候是不需要知道用户的名字的,但是如果我不输入用户名字或者输入错误的用户名字都会导致验证码发送无效,我们要怎么处理呢?

11.png


8、还是到找回密码的第一步的界面,我们输入错误的名字,要改密码的手机号,输入验证码(图片验证码),然后拦截发送的数据包,此时点击获取手机验证码,将发送的数据包中的名字置为空,然后放行数据包,此时可以发现服务器那端给手机发验证码了(ps:一定要保证服务器给手机发送验证码了,否则后面的步骤即使成功了,密码也不会改成功的);

12.png


9、此时不要激动,(重点)点击图片验证码重新获取图片验证码,然后输入,然后随便输入一个六位数字,然后按照第3步继续。
10、ok,我们可以只根据手机号码来获取任意账户的开房信息等敏感信息了,也可以写个脚本遍历一下所有手机号。

5.png

6.png

QQ图片20150522144100.png

修复方案:

对重要参数加入验证码同步信息或时间戳;

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:20

确认时间:2015-05-24 00:28

厂商回复:

十分感谢关注!

最新状态:

暂无


漏洞评价:

评论

  1. 2015-05-22 14:55 | 疯狗 认证白帽子 ( 实习白帽子 | Rank:44 漏洞数:2 | 阅尽天下漏洞,心中自然无码。)

    昨天去如家的速速来报道。

  2. 2015-05-22 15:06 | 高小厨 ( 普通白帽子 | Rank:814 漏洞数:74 | 不会吹牛的小二不是好厨子!)

    华住,如家,下一个会是谁,酒店敲响信息安全警钟吧

  3. 2015-05-22 15:07 | prolog ( 普通白帽子 | Rank:544 漏洞数:107 | 低调求发展)

    可怜的屌丝只能撸站。。。

  4. 2015-05-22 15:07 | Looke ( 普通白帽子 | Rank:619 漏洞数:93 | 可顺势而为,何必逆水行舟)

    求打雷!!!!!

  5. 2015-05-22 15:35 | L1nkS ( 路人 | Rank:4 漏洞数:1 | 我要去收拾收拾桌子。)

    路人来围观,CCTV可以看我么?

  6. 2015-05-22 15:36 | JGHOOluwa ( 普通白帽子 | Rank:206 漏洞数:32 | 就是来看看大牛们如何超神的^-^)

    @疯狗狗哥,路过如家的算不算,吊丝只能看着壕带着妹纸进去啊~

  7. 2015-05-22 15:38 | TYPCN ( 路人 | Rank:0 漏洞数:2 | TYPCN)

    CCAV 看过来

  8. 2015-05-22 15:47 | tester.wang ( 路人 | Rank:0 漏洞数:2 | 菜鸟刚上路)

    刘明,向大牛学习

  9. 2015-05-22 15:54 | Neeke ( 普通白帽子 | Rank:101 漏洞数:24 | 求传授刷Rank方法?)

    我屮艸芔茻

  10. 2015-05-22 16:00 | wefgod ( 普通白帽子 | Rank:1807 漏洞数:179 | 力不从心)

    @疯狗 狗哥,昨天和谁一块进去了?

  11. 2015-05-22 16:16 | Coody 认证白帽子 ( 核心白帽子 | Rank:1565 漏洞数:189 | 不接单、不黑产;如遇接单收徒、绝非本人所...)

    还来?

  12. 2015-05-22 16:39 | 浅蓝 ( 普通白帽子 | Rank:274 漏洞数:109 | 爱安全:www.ixsec.orgXsec社区:zone.ixse...)

    还好没去这种大酒店开过房

  13. 2015-05-22 18:08 | 小龙 ( 普通白帽子 | Rank:1208 漏洞数:316 | 乌云有着这么一群人,在乌云学技术,去某数...)

    我叫方小顿,参加过天天向上,你查下有没我的

  14. 2015-05-23 22:42 | 墨迹 ( 路人 | Rank:10 漏洞数:1 | 为安全事业奋斗)

    围观,没开过房

  15. 2015-05-24 12:59 | Wulala ( 普通白帽子 | Rank:223 漏洞数:24 | ^..^ ^..^ ^↓^ ^..^ ^..^)

    楼主堪比段子手啊

  16. 2015-05-25 09:48 | 我能拒绝么 ( 路人 | Rank:10 漏洞数:3 | 疯爆志林)

    @Wulala 这段子真的是写的一套一套的

  17. 2015-05-25 10:03 | Looke ( 普通白帽子 | Rank:619 漏洞数:93 | 可顺势而为,何必逆水行舟)

    @我能拒绝么 难道你不想知道下一个段子是怎么接的么?

  18. 2015-06-15 09:02 | Neeke ( 普通白帽子 | Rank:101 漏洞数:24 | 求传授刷Rank方法?)

    还是看不了

  19. 2015-06-15 23:50 | 小红猪 ( 普通白帽子 | Rank:194 漏洞数:30 | Wow~~~哈哈~~~)

    还是看不了

  20. 2015-07-08 09:33 | sauren ( 实习白帽子 | Rank:34 漏洞数:10 | 天天打DOTA,快乐你我他~)

    他那个名字和手机号验证应该是js 控制的吧,随便一下绕过就ok了~

  21. 2015-07-08 11:20 | 月无痕 ( 实习白帽子 | Rank:58 漏洞数:11 | 千里之行始于兴趣~)

    从漏洞上看,貌似服务端有一定的验证,当短信服务器发送了验证码以后才可以被绕过吧..