Hotdry.
security

7000台扫地机器人视频流漏洞:协议层认证缺陷与攻击路径分析

从 DJI Romo 事件切入,分析视频流协议层面的认证缺陷,区别于 MQTT 控制通道的传统攻击方式,提供可落地的安全参数与监控清单。

2026 年 2 月,安全研究员 Sammy Azdoufal 在尝试使用 PS5 手柄控制自己新购买的 DJI Romo 扫地机器人时,意外发现一个惊人的事实:他提取的个人访问令牌不仅能控制自己的设备,还能访问全球约 7000 台 DJI Romo 的实时视频流、麦克风音频、房间地图甚至直接下发控制指令。这一事件之所以值得安全社区深入剖析,不仅在于其影响范围之广,更在于它暴露了一个长期被忽视的问题维度 ——视频流协议层面的授权缺陷,而非仅仅是 MQTT 控制通道的配置不当。

视频流暴露与 MQTT 控制通道的本质区别

在 IoT 安全研究中,MQTT 协议层面的漏洞分析已经相对成熟。典型场景包括:未加密的明文传输、主题订阅权限控制缺失(Wildcard ACL)、以及令牌复用导致的横向移动。然而,DJI Romo 事件的核心矛盾并非简单的 MQTT 配置失误,而是视频流数据的访问控制与控制指令的授权绑定出现了系统性断裂

从技术实现来看,DJI Romo 的视频流传输采用了加密通道(TLS),设备到云端、云端到应用的数据在传输层是受保护的。问题出在云端的消息代理层面:当研究人员使用自己的令牌连接 MQTT 代理后,由于后端缺乏基于设备标识的细粒度访问控制,任何经过身份验证的客户端都可以订阅其他设备的主题,甚至使用通配符(#)一次性获取全局设备数据。这种 “传输层安全、应用层裸奔” 的现象,本质上是因为视频流的会话建立与 MQTT 控制通道的授权检查没有形成闭环 —— 只要客户端能通过身份验证并连接到消息代理,系统就默认授予其访问所有设备数据的权限。

相比之下,2024 年曝光的 Ecovacs Deebot 漏洞则更直接地体现了视频流协议层面的缺陷。研究人员发现,Deebot 系列设备的视频通话 PIN 码验证仅在移动端应用层实现,云端信号建立路径并不验证 PIN 的正确性。换言之,只要攻击者能够加入到 WebRTC 信令会话,就可以绕过 PIN 保护直接获取音视频流。此外,设备的语音提示文件存储在可写分区,攻击者可以通过蓝牙 Low Energy(BLE)接口或 Wi-Fi 远程代码执行漏洞替换提示音,从而实现 “静默监控”—— 设备在拍摄时不会发出任何声音提示。

攻击向量细化:从控制指令到视频流劫持

理解视频流协议漏洞的关键在于区分两条独立的攻击路径。第一条是传统的控制通道入侵,攻击者通过逆向 MQTT 主题结构、伪造设备标识或利用令牌泄露来下发清扫指令、修改路线规划。这类攻击的目标是获取设备的控制权,视频流只是顺带暴露的附属数据。第二条路径则是视频流协议层面的直接劫持,攻击者的目标从一开始就是音视频会话本身,他们利用视频流协商过程中的认证缺陷(如 WebRTC 信令路径的 PIN 验证缺失、RTSP 端口的匿名访问、Weave SDK 的权限配置错误),在不需要获取设备控制权的情况下直接拉取实时画面。

在 RTSP 协议层面,消费级设备常使用 Live555 等开源流媒体库,而这些库历史上曾曝出多个远程代码执行漏洞(CVE-2018-4013 等),攻击者构造特制的 RTSP 请求即可触发缓冲区溢出。更为普遍的情况是,许多设备的 RTSP 服务配置为无需认证或使用默认凭证,导致攻击者只需使用 FFmpeg 或 VLC 工具即可直接拉取视频流。扫地机器人作为家庭内嵌的 “可移动摄像头”,其 RTSP 服务一旦暴露在局域网或通过 NAT 穿透被外网访问,后果不堪设想。

可落地的安全参数与监控清单

针对上述分析,安全研究人员和设备管理员可以从以下几个维度建立防御基线。首先,在消息代理层面,必须严格限制主题订阅权限:禁止通配符订阅(# 或 +),每个客户端仅能访问与其设备序列号绑定的专属主题;启用 MQTT v5.0 的用户属性(User Properties)进行租户隔离;在代理层面记录并告警异常的高频订阅行为。其次,在视频流协议层面,应强制视频会话的 PIN 码验证在信令服务器端完成,而非仅依赖客户端应用;RTSP 服务应强制要求认证,并定期轮换凭证;对于 WebRTC 场景,建议使用端到端加密(E2EE)并将会话密钥与设备硬件绑定。

对于安全审计人员,建议关注以下监控指标:单一 IP 或令牌在单位时间内的设备枚举次数(建议阈值:5 分钟内超过 20 次设备访问尝试即触发告警);非预期时段的视频流会话建立(尤其是凌晨时段);来自已知设备列表之外 IP 地址的 MQTT 连接请求;BLE 接口的异常命令注入尝试(建议记录所有 SetNetPin 调用并关联设备固件版本)。

事件演进与行业启示

DJI 在 2026 年 2 月 8 日和 10 日分两次推送了后端补丁,修复了主题级别的权限校验问题,但研究人员同时指出,至少还有一个未公开的高危漏洞可以在不输入 PIN 的情况下访问自己设备的视频流,DJI 承诺在数周内完成修复。这一事件再次证明:设备厂商在快速迭代功能的同时,往往忽视了视频流通道的授权闭环 —— 加密传输只是基础,会话层面的身份验证与权限绑定才是关键。

从更大视角来看,扫地机器人从最初的 “自动清扫工具” 演变为具备实时视频监控、双向语音对讲、激光导航建图的多功能家庭物联网终端,其攻击面已远超传统智能家电。安全研究社区需要将视频流协议漏洞作为独立的研究方向,而非仅仅将其视为 MQTT 控制通道的附属问题。只有当设备厂商在设计阶段就将视频流的身份验证、控制授权与数据隔离作为核心安全目标,这类大规模设备群组被批量接管的事件才不会再次上演。

参考资料

  • The Verge: "The DJI Romo robovac had security so poor, this man remotely accessed thousands of them" (2026-02-14)
  • Ecovacs 安全公告: WiFi Remote Code Execution Vulnerability (DSA20250113001)
  • CVE-2024-52325: Ecovacs BLE SetNetPin Command Injection
  • DEF CON 32: "Reverse engineering and hacking Ecovacs robots"
查看归档