想象一下,智能家居开发商想向您展现的现代化生活:你忙碌地工作一天后回家了。走近大门时,系统会识别您的脸部和虹膜,确认后即自动开锁。房子已经调节到温暖舒适的温度,客厅灯火通明,美妙的音乐流淌着,电水壶刚刚完成工作;在你走进住所的时候,水刚好烧开。
你享用过一顿美味的晚餐,靠在沙发上放松,用智能手机把灯稍调暗些,然后打开电视观看。住在智能住宅中,一切都非常便利 – 所有这些小的日常工作或者自动完成,或者可通过手机控制。
不过,出现另外一种情况的可能性也同样高。你走近大门的时候,结果门没有自动打开;因为系统忘记了你的脸部和虹膜。虽然,你知道这是可能发生的情况,所以你备有传统的实体大门钥匙。用钥匙打开门后,你走进一片漆黑的房间。房间里温度很低,因为加热装置并没有按照编程提前两小时打开。
几秒钟后,智能报警系统启动,发出入侵者警报。报警系统本来应该检测到您智能手机的存在而暂停报警的!至少还有一些系统似乎在正常工作:电视机已经打开 – 但屏幕上显示的是天花板上的智能摄像机传来的实时信息。随后你听到消防车接近的警笛声。这到底是什么情况?这说明你的智能家居系统被黑客入侵了。
如果有人入侵控制智能家居系统中所有设备的智能中心,就可能发生上述情况。在2018年世界移动通信大会上,卡巴斯基实验室的Vladimir Daschenko向与会者证明了入侵智能中心并不难。
什么是智能中心?
智能中心是智能家居系统的神经中枢和大脑。它的造型通常是一个小盒子,有些有触摸屏,有时没有。智能中心利用特殊的协议向家中的所有智能设备发送指令,随后设备根据这些指令向中心反馈相关信息。
如果智能中心没有触摸幕,就会有移动应用程序或基于Web的服务,也可能两者都有。您可以使用它们对智能设备进行编程。您家中各处的小工具全部需要智能中心来进行同步,并由中心对它们同时发出指令。这对用户来说太方便了,但同时也意味着要攻击智能家居系统,攻击者只需要入侵一样东西 – 智能中心。
黑客如何入侵智能中心
对于特定供应商(在此我们不会透露其名称)生产的智能中心,其代码中并没有任何重大漏洞。但是,一些逻辑错误就足以让我们的专家实施远程攻击,甚至都不用获取访问用户Wi-Fi网络的权限。
要使用Web门户来控制智能中心,用户需要通过Web界面向中心发送同步指令。智能中心的内部好似一个总体配置文件,分配给有特定序列号的中心,中心随后可下载并实施该文件。该文件通过HTTP(未加密)通道发送,而唯一用于确定接收方的是中心的序列号。
如果攻击者恰好知道要攻击的中心的序列号,则可以向中心发送一个自定义配置文件,该文件会被中心接受,无需任何额外的通信。这听起来要知道中心序列号似乎是不可能的,但用户通常并未意识到序列号是他们智能家居系统的关键,所以有些用户会兴高采烈地在YouTube上发布对智能中心的评论,结果公开了攻击中心所需要的全部信息 – 包括序列号在内。但更糟糕的是,事实证明序列号是可以被暴力破解的。
每个智能中心的登录名和密码都保存在其配置文件中。登录时可以立即从中提取,密码是经过加密的 – 这点很好。但是,加密强度很弱,可以通过公开可用的实用程序迅速破解 – 这点非常糟糕。供应商对密码没有实施复杂性要求,从而进一步削弱了防御能力,让黑客更容易得手。
通过登录名和密码,黑客可以完全控制智能中心及其相连的所有设备,这对于智能中心所有者来说,智能家居灾难性场景变成了一个严峻的现实。
如何避免智能家居灾难
智能家居诞生的时间并不长,所以进行的研究还不够充分,因此有很多薄弱环节 – 很不幸,我们的研究再次证明了这一点(我们之前也证明过,并展示了如何入侵其他几种智能家电)。
在本文中所述的特殊案例中,供应商犯了几项逻辑性错误,这些错误累加起来导致智能家居系统可以被黑客入侵。下面我们再过一遍这些错误:通过未加密的HTTP传输配置文件,使用序列号作为配置更新的唯一身份验证方法,以及易于提取的登录密码数据。
那么该做些什么来保护智能生活呢?对于本文中的这种特殊智能中心,解决方案似乎相当简单:
- 不要向任何人显示智能中心的序列号。这是保障智能生活安全的关键。
- 不要购买二手智能家电。这类家电的固件可能被之前的所有者修改过,有可能导致远程攻击者完全接管你的智能家居系统。
但请记住,黑客仍然可以使用随机序列号尝试入侵智能中心,所以很遗憾,对于这种情况,没法保证100%的安全。目前,为了保持安全,最好是等着控制智能家居系统的中心全面检查漏洞并提供相应的补丁。对于本文中这个特定智能中心,供应商一直在不断推出补丁,所以我们才决定不公开它的名称。您可以在Securelist上的这篇文章中找到更多详细信息。