机械锁也许是我们日常生活中最根本、最具象、最熟悉的安全屏障。人们锁上门,期望这些锁能把坏人关在门外,但安全行业有一句老话:“防君子不防小人”。在物联网“智能锁”时代,事情变得更加糟糕,因为开锁工具不再是钩针,而是脚本和嗅探器。
近日,渗透测试专家Craig Young披露了某品牌智能门锁漏洞背后隐藏着的安全威胁:攻击者可以物理定位并远程控制连接到智能门锁供应商云基础结构的任何锁。安全牛编辑整理如下:
虽然本文中介绍的漏洞已经被修复,但是本次渗透测试暴露了整个智能门锁行业,乃至物联网领域普遍存在的隐私和安全风险。本文的目的是让人们了解并重视物联网设备以及驱动物联网的集中式云计算的安全问题和威胁。
Craig Young选择了市场上一款热门的智能门锁——U-Tec生产的UltraLoq智能门锁,该锁连接到供应商的云基础架构。已经发现的安全漏洞,例如服务配置错误已经于2019年11月初通知了U-Tec,本次研究的焦点是集中化的云基础设施提供数据和控制所带来的风险,很多物联网应用场景,例如智慧城市和无人驾驶汽车等都可能存在类似的风险。
U-Tec UltraLoq一开始是众筹平台Indiegogo上的一款热门产品,现已通过亚马逊、家得宝和沃尔玛等主要零售商直接销售给消费者。这些锁拥有一些高级功能,包括指纹读取器、反窥视触摸屏,以及通过蓝牙和WiFi的APP端控制。这些联网功能带来极大便利的同时,也让一些用户对安全性感到不安。为了打消用户的疑虑,U-Tec的网站有一篇文章向用户保证:“云服务器具有很强的安全性,用户的数据已被MD5算法加密”。
对U–Tec智能门锁的渗透测试从Shodan开始,具体来说是Shodan的MQTT数据集。
首先,我们简要介绍一下MQTT的背景信息。
MQTT是一种轻量级的发布-订阅协议,其中的消息代理负责协调连接节点之间的局部数据交换。MQTT的应用场景很多,例如空调系统。请设想一个包含多个温度传感器(恒温器),可以通过数字方式控制风扇的HVAC系统,以及根据室温自动打开/关闭风扇的监控应用程序。这些传感器和执行器是连接到MQTT代理的低功耗IoT组件,传感器发布数据,监控应用订阅此数据,并发送命令给执行器。
传感器的数据使用描述性和分层主题名称发布,例如101室的恒温器将使用\"x号楼/温度/楼层1/房间101\"的格式发布数据。监控应用将订阅 “建筑 X/温度/#”。#充当通配符,允许应用接收来自所有房间的温度输入。
在没有适当的身份验证和授权方案的情况下部署MQTT时,会出现MQTT被滥用的风险,任何连接到代理的人都可以获取敏感数据,甚至能够控制动力学系统。获得MQTT代理访问权限的未授权用户可以轻松地猜测主题名称并使用#订阅各种主题以获取传输代理的数据。
通过公共MQTT数据泄露的个人信息
Shodan的老玩家们一直在使用这些通配符查询收集暴露在公共互联网上的MQTT代理的数据。尽管Shodan不存储扫描的个人消息,但却能检索83,000多个代理中的主题名称。Craig Young测试了各种MQTT搜索词,看看多少能够命中。有一个服务器引起了Craig Young的注意,因为它有包含MQTT主题名称的大量页面,反复出现在搜索中,关联信息包括“门锁”和免费电子邮件提供商,如“”。
图1:亚马逊托管的代理与主题名称列表
这是一个亚马逊托管的代理与主题名称列表,包括个人电子邮件地址和其他数据,看上去似乎与智能门锁有关。Craig Young使用Linux命令行工具(例如mosquitto_sub)查询该服务器,结果立刻被来自世界各地的大量个人信息淹没了。这些数据包括与智能门锁关联的用户电子邮件和IP地址,以及智能门锁锁打开和关闭的时间戳记录等。
下一步是通过购买一个ULTRALOQ智能门锁进行测试,明确问题的范围。
与大多数智能门锁类似,ULTRALOQ智能门锁也是电池供电,与连接到WiFi的网桥设备保持蓝牙配对。拿到该锁后,我将它与WiFi桥配对,并监听其通过MQTT发送的消息。
图2:确认服务器提供实时客户数据(已脱敏)
经过几个锁定/解锁周期后,我确认了解锁过程中重复的消息流。然后,我准备了一个Python脚本来重放这些消息,并确认这种方法能够打锁。
Craig Young发现:攻击者只需知道设备MAC地址就可以很容易地窃取“解锁令牌”,批量或定点解锁智能门锁。
MQTT数据关联的电子邮件地址、本地MAC地址和公共IP地址等数据可用于地理位置定位,足以精确识别个人。该设备还向无线电范围内的任何人广播MAC地址。
文章来源:《物联网技术》 网址: http://www.wlwjszz.cn/zonghexinwen/2020/0824/718.html
上一篇:利用物联网解锁下一代建筑资产追踪
下一篇:赛仕(重庆)大数据物联网创新中心启动