Hickory智能门锁存在的多个漏洞

Track-SSG   ·   发表于 2019-08-27 10:57:12   ·   漏洞文章
                                                        

*严正声明:本文仅限于技术讨论与分享,严禁用于非法途径

https://image.3001.net/images/20190812/1565603634_5d5137325c256.jpg

近期,Rapid7安全研究团队发现了Hickory蓝牙智能系列BlueTooth Enabled Deadbolt款式门锁存在多个安全漏洞,漏洞涉及其移动端APP应用和云托管的Web服务和MQTT协议。截至漏洞披露期限前,Hickory官方还未对这些漏洞作出认可,也未发布任何补丁或漏洞修复措施。

https://image.3001.net/images/20190812/1565603300_5d5135e43b6ea.jpg

Hickory Smart Bluetooth Enabled Deadbolt智能门锁介绍

Hickory Smart Bluetooth Enabled Deadbolt,平头锁,可安装于传统门锁之上的一款智能门锁,产品型号H076388-SN,其中包含了经过FCC ID 2AEHJSRU233认证的电子元器件,是Rapid7此次重点测试的一款基础的IoT物联网设备。它可由Android、iPhone/iPad设备经其移动APP进行控制,且基于云端对其涉及到的相关Web应用和MQTT中间件代理/服务器进行托管。此次Rapid7测试的Hickory移动应用程序版本为安卓的 01.01.43    和 iOS的 01.01.07,两个移动程序都名为”Hickory Smart”,可在谷歌和苹果应用商店中进行下载安装。 此外,测试中还用到了型号为SRR533的Hickory Smart Ethernet Bridge H077646。

测试中的门锁设备都来自Hickory Hardware官方产品,涉及到的移动应用程序为Hickory Hardware上游厂商Delphian Systems公司开发,Delphian Systems还负责对Hickory相关的云服务器和MQTT服务进行托管部署。以下是Rapid7的漏洞发现。

漏洞信息

R7-2019-18.1: 安卓移动应用程序中的数据不安全存储 (CVE-2019-5632)

一些移动应用会在移动设备上存储一些诸如用户名、认证token等个人敏感信息,以便后续调用,如果这些信息未经加密或实施密码保护,系统中另外的用户就有可能获取到这些敏感信息。

当我们检查Hickory的安卓移动应用程序时,在/data/data/com.belwith.hickorysmart/databases目录下,发现了SQLite的未加密数据信息,这些都是用户远程控制门锁设备的关键信息,如下:

https://image.3001.net/images/20190812/1565603333_5d51360505173.png

关键的是,当当前用户退出应用,然后重启应用程序,之前用户存在的上述信息仍然存在,完全没有删除。

R7-2019-18.2: iOS 移动应用程序中的数据不安全存储(CVE-2019-5633)

和上述安卓应用同样的问题,在目录/private/var/mobile/Containers/Data/Application/3CAC91D1-872C-4F96-9460-A93F770AC42D/Library/Caches/com.belwith.HickorySmart之下,我们发现了用户相关的未加密远程开锁信息:

https://image.3001.net/images/20190812/1565603359_5d51361f0db58.png

R7-2019-18.3: 安卓移动应用程序中开启了日志调试记录(CVE-2019-5634)

调试日志用于开发和排除程序的错误问题,一旦程序形成产品,为了防止开发敏感信息泄露,调试功能和相关日志就应该禁用删除。

在我们的测试中,所有通过移动应用的蓝牙方式进行的联网API服务和门锁连接都被记录到了HickorySmartLog/Logs/SRDeviceLog.txt的调试日志中,该日志文件被存储在了移动设备的SD卡中,无需任何root设备操作,便可用任何文件查看工作访问到,如下:

https://image.3001.net/images/20190812/1565603412_5d5136540b335.png

R7-2019-18.4: 不恰当的API访问控制漏洞

经测试发现,任何门锁授权用户可以通过查询API的方式提取出所有门锁授权用户的id(AuthorizedUserDevice IDs),也就是说,可用其它用户身份来控制门锁。这种AuthorizedUserDevice IDs是在移动应用运行或账户配置过程中产生的,门锁设备不会对它们执行任何过期限制更改要求。以下为一个向API查询SRDeviceUpdate的post请求,门锁响应的消息中包含了所有当前门锁授权用户id – AuthorizedUserDevice IDs ,而且,这些信息来自上一个漏洞中的调试日志    “SRDeviceLog.txt “ 。

https://image.3001.net/images/20190812/1565603455_5d51367fdfee1.png

R7-2019-18.5: 注销用户还具备API访问权限

测试发现,如果某位用户账户被禁用注销后,他可以通过向云端托管API发起请求,重新获得控制门锁的的id信息,如下:

https://image.3001.net/images/20190812/1565603489_5d5136a14d904.png

R7-2019-18.6: 明文凭据信息传输 (CVE-2019-5635)

在测试期间,通过Wireshark抓包发现,Hickory Smart Ethernet Bridge 设备在与MQTT远端协议代理之间的网络通信未经加密,可导致与MQTT代理进行身份验证的用户名密码信息泄露,如下:

https://image.3001.net/images/20190812/1565603512_5d5136b86c98b.png

总结

除最后一个漏洞外,恶意攻击者可能利用其它几个漏洞对Hickory Smart Bluetooth Enabled智能门锁进行恶意操控,会对Hickory用户造成人身和财产安全风险。当这种门锁大规模采购到某些物联网系统中使用后,其产生的影响将会是广泛而危险的。

漏洞上报进程

2019.5 漏洞发现

2019.5.16 向Hickory Hardware官方上报漏洞

2019.6.25 向Hickory Hardware上游厂商Delphian Systems上报漏洞

2019.7.1 向CERT/CC报告漏洞

2019.7.2 CERT/CC分配漏洞编号

2019.8.1 60天漏洞期限已过 Rapid7披露漏洞

*参考来源:rapid7,clouds编译整理,转载来自FreeBuf


打赏我,让我更有动力~

0 条回复   |  直到 2019-8-27 | 1046 次浏览
登录后才可发表内容
返回顶部 投诉反馈

© 2016 - 2024 掌控者 All Rights Reserved.