漏洞概要
关注数(24)
关注此漏洞
漏洞标题:智能硬件安全之九阳豆浆机设备认证与控制设计缺陷(控制任意女神豆浆机)
提交时间:2015-09-11 14:04
修复时间:2015-12-10 16:12
公开时间:2015-12-10 16:12
漏洞类型:权限控制绕过
危害等级:高
自评Rank:20
漏洞状态:厂商已经确认
Tags标签:
无
漏洞详情
披露状态:
2015-09-11: 细节已通知厂商并且等待厂商处理中
2015-09-11: 厂商已经确认,细节仅向厂商公开
2015-09-14: 细节向第三方安全合作伙伴开放
2015-11-05: 细节向核心白帽子及相关领域专家公开
2015-11-15: 细节向普通白帽子公开
2015-11-25: 细节向实习白帽子公开
2015-12-10: 细节向公众公开
简要描述:
女神竟然喜欢喝豆浆,喝豆浆,喝豆浆。我要悄悄帮她做。
详细说明:
按照以往的路数,我把九阳豆浆机组成下图所示的网络环境,用来分析九阳豆浆机的安全性。
分析思路是:
1. 通过 burp suite 抓取 app 和九阳云端通讯的数据,用于检测接口是否存在漏洞;
2. 通过 openwrt 上 tcpdump 抓取豆浆机和云端通讯数据,用于检测豆浆机和云端是否存在漏洞;
经过枯燥而又漫长的过程之后,我们有了些许收获。
第一部分先让我们来说说豆浆机的事情,下面是部分抓包截图:
通过分析数据包我们能够知道九阳云端一共有两个对外的 IP
其中 42.121.254.96 开放 8089 端口,在 http 上搭建了WebLogic
而 121.41.20.214 开放 9000 端口和设备通信,9001 端口与手机 app 通信。后端为运行在 Play!framework 的 java程序。
用户通过app绑定设备以及之后开启app时,会通过api.joyoung.com:8089提供的接口依次获取以下信息。
mobile_id –> session_key -> dev_id
在得到设备dev_id号后,app 会发送指令到九阳控制服务器 9001 端口,其中包含要控制设备的dev_id 号。同时九阳控制服务器会通过9000端口和各个智能设备之间保持长连接,智能设备会每分钟发送心跳包保持在线状态。当服务器从9001端口收到控制命令后,会转发命令到对应控制设备所保持的长连接中,这样实现了跨网络的控制。
在观察 9001 端口的通讯数据后,经过简单的测试,其中和设备相关的数据为一个16字节长度的did。查看设备是否在线的包结构大致如下:
在测试中发现,只要获取到 dev_id 值,无需用户正常的认证过程,仍然可以通过 9001 端口直接控制智能设备。8089 端口的认证只是 dev_id 信息获取过程,而没有将验证体现后续的控制过程中。在已知 dev_id 的情况,不管用户是否更改 app 上的用户密码,只要设备在线,都可以直接通过和九阳控制服务器9001端口通讯来控制设备。
那么问题来了,我们怎么获取设备的 dev_id,方法有多种,弱水三千我只取一瓢饮 -- 云端。
这就到了第二部分,说说云端,经过前期工作后,我们收集到云端信息如下:
对其分析后能够得到云端的控制权限,过程略,只给结果
42.120.19.38(apitest.joyoung.com) 存在如下漏洞,可以获取这台服务器的控制权限
1. https://apitest.joyoung.com/jypms/www/user-login-L2p5cG1zL3d3dy8=.html 运行禅道项目管理软件,存在高危漏洞可以直接获取服务器权限,漏洞详情请参考: WooYun: 禅道项目管理软件多个漏洞
2. https://apitest.joyoung.com/phpmyadmin/ 弱口令,能够获取数据库数据,并且可以读取服务器文件等;
经过观察,这台服务器是测试服务器,但是服务器上代码和 42.121.254.96(api.joyoung.com) 大致相同,分析了下 api 接口相关代码,发现上传地方存在漏洞,通过下面数据包可以上传任意文件到 web 目录下
ps:这里走了不少弯路,但是只提一句就是,上传参数中原本有 u_msg 是校验字段,如果这个字段为空就会跳过整个校验过程
所以通过构造上面的数据包可以获取 42.121.254.96(api.joyoung.com) 服务器的权限(webshell)
进而我们可以获取数据库中所有设备的 dev_id,如果设备在线后,就可以发送控制命令了。写python脚本来验证一下:
然后呢?
然后我去给女神做爱心豆浆去。
漏洞证明:
漏洞证明
修复方案:
先总结下问题:
1. 九阳豆浆机在设计控制的地方存在缺陷,只要知道 dev_id 就能够对其进行控制;
2. 云端的安全问题会造成能够控制所有设备
再说修复建议:
1. 在对设备进行控制时,除了 dev_id 外,还需要验证用户身份;
2. 云端的问题很多,需要全部修复;
版权声明:转载请注明来源 只抽红梅@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:15
确认时间:2015-09-11 16:10
厂商回复:
感谢白帽子发现我们系统设计的不足,将尽快安排整改。
最新状态:
暂无
漏洞评价:
评论
-
2015-09-11 14:08 |
疯狗 ( 实习白帽子 | Rank:44 漏洞数:2 | 阅尽天下漏洞,心中自然无码。)
-
2015-09-11 14:27 |
心云 ( 普通白帽子 | Rank:143 漏洞数:47 | 闲的时候来一发)
-
2015-09-11 14:36 |
DNS ( 普通白帽子 | Rank:543 漏洞数:61 | 没有我,你们就去背IP吧)
女神竟然喜欢喝豆浆,喝豆浆,喝豆浆。。。。。。。。。。。。。。。。。豆浆???
-
2015-09-11 14:52 |
我是壮丁 ( 路人 | Rank:10 漏洞数:1 | 专业打酱油)
-
2015-09-11 15:00 |
xsser ( 普通白帽子 | Rank:267 漏洞数:20 | 当我又回首一切,这个世界会好吗?)
-
2015-09-11 15:36 |
PiaCa ( 普通白帽子 | Rank:137 漏洞数:11 | 简单点!啪......嚓~~)
-
2015-09-11 15:51 |
疯狗 ( 实习白帽子 | Rank:44 漏洞数:2 | 阅尽天下漏洞,心中自然无码。)
-
2015-09-11 15:52 |
M4sk ( 普通白帽子 | Rank:1218 漏洞数:322 | 国内信息安全任重而道远,还需要厂商和白帽...)
-
2015-09-11 15:53 |
boooooom ( 普通白帽子 | Rank:467 漏洞数:50 | 我有一个好想法!)
-
2015-09-11 15:56 |
hotdog ( 路人 | Rank:6 漏洞数:4 | 不好不坏,亦正亦邪!)
-
2015-09-11 16:39 |
只抽红梅 ( 普通白帽子 | Rank:209 漏洞数:18 | 红梅花儿开,我从帝都来!)
-
2015-09-11 16:39 |
浩天 ( 普通白帽子 | Rank:915 漏洞数:79 | 哈!躁起来!)
-
2015-09-11 16:40 |
PiaCa ( 普通白帽子 | Rank:137 漏洞数:11 | 简单点!啪......嚓~~)
-
2015-09-11 17:05 |
继续沉默 ( 实习白帽子 | Rank:62 漏洞数:9 | 好好学习,天天向上)
怪不得前两天女神叫我去她家,说豆浆机坏了, 然后你懂的
-
2015-09-14 17:23 |
( 路人 | Rank:17 漏洞数:4 | -->)
-
2015-09-14 17:51 |
二愣子 ( 普通白帽子 | Rank:177 漏洞数:38 | 毛毛你是个好姑娘)
-
2015-09-14 21:01 |
Mr.Black ( 路人 | 还没有发布任何漏洞 | 爱好WEB安全 爱好个人信息安全)
-
2015-09-15 08:45 |
Nelion ( 路人 | Rank:27 漏洞数:23 | 老实,腼腆,潜力股;不谈情,不说爱,只泡...)
-
2015-09-15 17:41 |
3King ( 普通白帽子 | Rank:1139 漏洞数:94 | 【study at HNUST】非常感谢大家的关注~ 大...)
-
2015-09-15 18:16 |
f4ckbaidu ( 普通白帽子 | Rank:189 漏洞数:26 | 开发真是日了狗了)
女神竟然喜欢喝豆浆,喝豆浆,喝豆浆。我要悄悄帮她攒
-
2015-09-15 22:11 |
一只猿 ( 普通白帽子 | Rank:509 漏洞数:92 | 硬件与无线通信研究方向)
-
2015-09-15 23:16 |
有妹子送上 ( 实习白帽子 | Rank:89 漏洞数:28 | 杭州最帅的男人)
-
2015-09-16 06:24 |
行侠 ( 实习白帽子 | Rank:48 漏洞数:16 )
-
2015-09-16 14:57 |
無名老人 ( 路人 | Rank:15 漏洞数:3 | 干过开发,日过渗透,江湖人称: 少女杀手)
-
2015-09-16 20:23 |
Elliott ( 实习白帽子 | Rank:44 漏洞数:10 | 绝逼不当程序员)
-
2015-09-16 23:45 |
小杰哥 ( 普通白帽子 | Rank:179 漏洞数:29 | 逆水行舟,不进则退。)
-
2015-09-17 10:11 |
whitemonty ( 路人 | Rank:7 漏洞数:4 | Secur1ty just lik3 a girl. B0th of th3m ...)
-
2015-09-17 21:48 |
SunnyDoll ( 实习白帽子 | Rank:41 漏洞数:14 | 职业搬砖工)
-
2015-09-18 10:50 |
ㄚ冷的祝福 ( 实习白帽子 | Rank:49 漏洞数:9 | 路过打酱油)
-
2015-09-18 11:19 |
wefgod ( 核心白帽子 | Rank:1817 漏洞数:180 | 力不从心)
-
2015-09-18 21:59 |
大漠長河 ( 实习白帽子 | Rank:66 漏洞数:10 | ̷̸̨̀͒̏̃ͦ̈́̾( 天龙源景区枫叶正...)
还有大叔的豆浆机,,,让我想起一个笑话 不说了.我豆浆机居然有漏洞,这家用电器是缓不过来了
-
2015-12-10 16:16 |
幻老头儿 ( 普通白帽子 | Rank:190 漏洞数:39 | 新手上路。)
你在家里,控制着车,控制着豆浆机,女神坐在车子副驾驶位上喝着豆浆。驾驶座上放着一台豆浆机。