ZigBee 灯泡被黑客入侵的“连锁反应”是否可行?

物联网 安全 飞利浦色调
2021-06-10 06:02:25

我最近看到了这个视频,其中一些学生将“攻击工具包”连接到无人机上,并将其飞到办公大楼附近。

根据他们的论文

我们设法在标准无人机下方安装了一个完全自主的攻击套件,并进行了飞行,在距离办公楼数百米的地方飞行,迫使安装在其中的所有 Hue 灯与当前的控制器断开连接,并在其中闪烁 SOS摩尔斯电码

然后他们继续说:

我们使用渗流理论的结果来估计巴黎等典型城市的安装设备临界质量,其面积约为 105 平方公里:如果整个城市中随机放置的智能灯少于约 15,000 个,连锁反应就会失败,但当数量超过这个临界质量时(几乎可以肯定已经超过)

虽然这是一个有趣的想法,但我不确定这是否真的有可能。他们说灯泡的合理射程是 100 米,但后来注意到“与我们交谈的飞利浦工程师表示,在密集的城市环境中,有效射程可以小于 30 米”我用这个数字重新计算了他们的公式,得出需要大约 168,000 个灯泡。

另一方面,如果我们采用 400 m 的“乐观”估计,则公式预测您将需要不到 1000 个灯泡

显然,400 m 的估计非常乐观,所以我不太相信它,尤其是考虑到城市环境中可能存在的所有无线电干扰。飞利浦只承诺“高达 30 m”的范围,因此 400 m 似乎非常乐观。

“连锁反应”的想法不切实际/有点夸张吗?如果我的计算是正确的,在我看来这只是一个引人注目的标题。有没有证据表明灯泡的射程接近 100 m,因此链式反应的想法是可能的?

2个回答

“连锁反应”的想法绝对是现实的。事实上,臭名昭著的Mirai 僵尸网络就是这种连锁反应的一个例子,它像火一样蔓延开来,而无需原始创建者的努力。

然而,在灯泡的情况下可能会阻止这种连锁反应的事实是它们的分布不是随机的。“智能”设备通常是集群式的——你可能有一个家庭,屋主喜欢尝试新事物,其中有十个“智能”灯泡。那么你将有九个家庭根本没有这样的灯泡。此外,房屋并不代表一个整体块 - 例如,同一条街道上的两排房屋只会通过两个角落房屋“连接”到一条垂直的街道 - 因此攻击的传播取决于这些角落房屋中是否有任何一个电灯泡。如果他们没有,即使这条街上的任何其他房子有“智能”灯泡,攻击也会停止。

免责声明:部分内容纯属猜想

引言(第 2 页)中描述了该实验的摘要。声明以粗体显示:

我们最初的发现是Atmel 堆栈在其邻近测试中存在一个主要错误,这使得任何标准 ZigBee 发送器(可以以小型评估板的形式花几美元购买)启动出厂重置程序,该程序将分离来自他们当前控制器的灯,最大范围为 400 米。一旦实现,发射器可以发出额外的指令,这些指令将完全控制所有这些灯. 我们通过一个真实的战争驾驶实验证明了这一点,在这个实验中,我们在大学校园周围开车,并完全控制了安装在汽车路径沿线建筑物中的所有 Hue 智能灯。由于所需设备体积小、重量轻、功耗极低,而且攻击可以自动化,我们设法在标准无人机下方安装了一个完全自主的攻击套件,并进行了作战飞行。飞离办公楼数百米,迫使安装在其中的所有 Hue 灯与当前的控制器断开连接,并以莫尔斯电码闪烁 SOS。

研究人员在他们的演示中提供了这方面的经验证据,即信号可以从发射器发送到最远 400 米外的易受攻击的设备。研究人员在他们的驾驶和飞行测试中从 50、150 和 350 米外的发射器发送信号。(参见第 8.1.1 节“驾驶”和 8.1.2“飞行”)。400米的最大理论有效范围是由室外Zigbee无线范围推导出来的:

我们新颖的接管攻击利用 Atmel 实现 ZLL Touchlink 协议状态机(在飞利浦 Hue 灯中使用)中的一个错误来接管远距离(可达 ZigBee 无线范围,室内可达 70 米或室外可达 400 米)的灯。14] ),仅使用标准飞利浦 Hue 灯。

这与更耸人听闻的说法完全不同,即理论上可以通过使用通过 Zigbee 在灯之间直接自我传播的程序感染可利用的灯来控制所有此类飞利浦灯(该声明以粗体显示):

我们的新攻击在几个关键方面与之前对物联网系统的攻击不同。首先,之前的攻击使用 TCP/IP 数据包来扫描互联网以查找易受攻击的物联网设备,并迫使它们参与基于互联网的活动,例如大规模 DDOS 攻击。由于互联网通信受到严密监控并且可以受到多种安全工具的保护,因此可以在早期发现并阻止此类攻击,至少在原则上是这样。我们的攻击根本不使用任何互联网通信,感染直接从灯跳到灯,仅使用不受监控和不受保护的 ZigBee 通信。因此,在整个照明系统被禁用后,很难检测到正在发生的攻击并定位其来源。

另一个主要区别是,我们的攻击仅通过物理接近进行传播,而忽略了灯和控制器的既定网络结构。因此,无法通过将各种子网彼此隔离来阻止此类攻击,就像系统管理员在受到攻击时经常做的那样。从这个意义上说,这种攻击类似于空气传播的生物感染,例如流感,几乎完全通过身体接触传播。

最后,之前报道的攻击是通过线性扫描和感染进行的,这些攻击都是在一个星形结构中进行的,攻击者位于中心位置,而我们的连锁反应攻击通过使每个受感染的灯成为所有人的新感染源来传播得更快它的相邻灯;攻击者只需要用一盏坏灯启动感染,然后就可以退休并看着整个城市自动变黑。

研究人员使用数学模型支持这一说法,其中假设灯的有效射程为 50 米:

考虑一个面积为 A 的城市,并假设它的形状大致为圆形(即,它是平坦的、凸出的、不太细长且没有孔的)。我们将 N 盏智能灯放置在城市内的随机位置,并通过一条边连接距离小于 D 的任意两盏灯来定义感染图。该图中的连接组件定义了可能的感染模式,可以通过插入单个感染光来启动。对于较小的 N,所有组件可能仅由几个顶点组成,但随着 N 的增加,图形会经历突然的相变,其中创建了一个巨大的连接组件(包含大部分顶点)。这是感染可能会在城市的任何地方传播而不是在一个小社区中保持孤立的临界质量。

处理此类问题的数学领域称为渗透理论,临界 N 称为渗透阈值。在 [15] 中可以找到对这个问题的许多变体的很好的调查,我们感兴趣的特定版本出现在 2D 连续模型的阈值部分,它通过重叠半径为 R 的二维圆盘处理远程连接,如图 1 所示。由于当且仅当两个点周围的半径为 R = D/2 的圆盘相交时,两点之间的距离为 D,因此我们可以直接使用该模型在我们的模型中找到临界质量:它是所有随机放置的圆盘的总面积(即πR2N)比城市总面积A大1.128倍时的值N。换句话说,N = 1.128A/π(D/2)2。

要了解这个 N 有多大,请考虑像巴黎这样的典型城市,它相当平坦,呈圆形,几乎没有摩天大楼可以阻挡可用的视线。总面积约105平方公里[16]。根据 ZigBee Light Link 官方网站 [14],ZigBee 通信范围在室内 70 米和室外 400 米之间1. 可能没有一个数字适用于所有情况,但为了估计 N,假设一盏灯可以感染距离 D = 100 米的其他灯是合理的,因此我们在每盏灯周围绘制的圆盘有半径 R = 50 米。通过将这些值代入公式,我们得到巴黎全市已安装灯具的临界质量仅为 N = 15, 000 左右。 由于飞利浦 Hue 智能灯在欧洲非常受欢迎,尤其是在富裕地区,如作为巴黎,很有可能实际上已经超过了这个阈值,因此该城市已经很容易通过本文中描述的 ZigBee 连锁反应受到大规模感染。

  1. 与我们交谈的飞利浦工程师表示,在密集的城市环境中,有效范围可以小于 30 米

争论

研究人员声称,他们实验中使用的漏洞利用向量和传播技术可以感染城市环境中的所有易受攻击的设备,这可以作为一个论点,如下所示:

  1. Atmel 堆栈在其接近度测试中存在一个主要错误,它使任何标准 ZigBee 发送器(可以以几美元的价格购买一个微型评估板)启动出厂重置程序,该程序将使灯与其当前的控制器分离,最远可达 400 米。一旦实现这一点,发射器就可以发出额外的指令来完全控制所有这些灯。

    我们新颖的接管攻击利用 Atmel 实现 ZLL Touchlink 协议状态机(在飞利浦 Hue 灯中使用)中的一个错误来接管远距离(可达 ZigBee 无线范围,室内最远可达 70 米或室外 400 米)的灯。 14]),仅使用标准飞利浦 Hue 灯。

    前提 1:飞利浦 Hue 灯存在一个漏洞,可以通过 ZigBee 对其进行利用。

  2. 我们的攻击根本不使用任何互联网通信,感染直接从灯跳到灯,仅使用不受监控和不受保护的 ZigBee 通信。

    根据 ZigBee Light Link 官方网站 [14],ZigBee 通信范围在室内 70 米和室外 400 米之间1

    可能没有一个数字适用于所有情况,但为了估计 N,假设一盏灯可以感染距离 D = 100 米的其他灯是合理的,因此我们在每盏灯周围绘制的圆盘有半径 R = 50 米。

    前提2:在城市环境中,飞利浦Hue灯的有效射程平均为50米。

  3. 考虑一个面积为 A 的城市,并假设它的形状大致为圆形(即,它是平坦的、凸出的、不太细长且没有孔洞)。我们将 N 盏智能灯放置在城市内的随机位置,并通过一条边连接距离小于 D 的任意两盏灯来定义感染图。该图中的连接组件定义了可能的感染模式,可以通过插入单个感染光来启动。对于较小的 N,所有组件可能仅由几个顶点组成,但随着 N 的增加,图会经历突然的相变,其中创建了一个巨大的连接组件(包含大部分顶点)。这是感染可能会在城市的任何地方传播而不是在一个小社区中保持孤立的临界质量。

    临界 N 称为渗透阈值

    因为当且仅当两个点在它们周围的半径为 R = D/2 的圆盘相交时,两点彼此之间的距离为 D,所以我们可以直接使用该模型来找到我们模型中的临界质量:它是 N 的值其中所有随机放置的圆盘的总面积(即πR2N)大约是城市总面积A的1.128倍。换句话说,N = 1.128A/π(D/2)2。

    要了解这个 N 有多大,请考虑像巴黎这样的典型城市,它相当平坦,呈圆形,几乎没有摩天大楼可以阻挡可用的视线。总面积约105平方公里[16]。

    为了估计 N,假设一个灯可以感染距离 D = 100 米的其他灯是合理的,因此我们围绕每个灯绘制的圆盘的半径为 R = 50 米。(前提2)

    前提3:

    通过将这些值代入公式,我们得到整个巴黎市已安装灯具的临界质量仅为 N = 15, 000 左右。

  4. 飞利浦 Hue 智能灯在欧洲非常受欢迎,尤其是在巴黎等富裕地区

    前提4:飞利浦Hue灯的流行预示着它在巴黎的流行

结论:

很有可能实际上已经超过了这个阈值,因此该城市已经很容易通过本文中描述的 ZigBee 链式反应遭受大规模感染

分析(有猜想)

这是一个弱论点,因为只有前提 1 得到了可重复实验的经验证据的支持。

对论点的挑战

虽然在实验中已经证明可以通过 ZigBee 在 50、150 和 300 米的距离上利用灯中的漏洞,并且利用该漏洞的程序成功地通过 ZigBee 将自身传播到范围内的其他灯,但从未证明这种传播会在实验中以研究人员声称的规模(即全市传播)的受控环境之外发生

在研究人员用来模拟“典型”城市环境的基于渗流理论的数学模型中,灯之间的平均有效距离为 50 米。使用该值作为平均有效范围很容易受到制造商提供的信息的质疑。

该模型还依赖于在整个城市中随机分布的灯具,但这似乎不太可能,因为该产品的消费者通常具有较高的可支配收入,而这种类型的消费者可能不是随机分布在使用的城市巴黎市对于模型。

以下是他们对典型城市的描述:

要了解这个 N 有多大,请考虑像巴黎这样的典型城市,它相当平坦,呈圆形,几乎没有摩天大楼可以阻挡可用的视线。总面积约105平方公里[16]。

选择使用巴黎作为典型代表的典范也很容易受到挑战。我不是专家,但摩天大楼很少的城市似乎并不典型。

当根据通过 ZigBee 感染飞利浦 Hue 灯的程序在全市范围内传播所需的条件来检查声明时,更容易识别声明中的问题。

鉴于

  1. 这座城市大约是圆形的,并且
  2. 城市是平坦的,并且
  3. 这座城市几乎没有摩天大楼,并且
  4. 飞利浦Hue灯在全市的分布是随机的

那么灯的分布可以使用渗透理论建模,如果除此之外,

  1. 城市中有足够的飞利浦 Hue 灯达到渗透阈值,并且
  2. 该环境下灯具的平均有效射程为50米

然后,根据模型, 每个人都会死

通过使每个受感染的灯成为其所有相邻灯的新感染源,我们的连锁反应攻击传播得更快;攻击者只需要用一盏坏灯启动感染,然后就可以退休并看着整个城市自动变黑。

这座城市已经很容易通过本文中描述的 ZigBee 链式反应遭受大规模感染

除非满足这些条件,否则该模型不起作用。这可能是选择巴黎作为本文范例的部分原因,尽管该研究是在加拿大哈利法克斯的达尔豪斯大学校园内进行的。

直接回答问题

ZigBee 灯泡被黑客入侵的“连锁反应”是否可行?

在理想情况下,即符合模型中有利参数的假设城市,根据渗透理论,全市范围的“连锁反应”是可行的

研究人员证明,他们的程序会在 ZigBee 上自动自我传播,并感染任何先前被感染的灯的范围内的易受攻击的灯。除此之外的一切都是假设。

当研究人员说,这将使他们能够“自动观看整个城市去黑暗”,这可能仅仅是如果上述条件得到满足的情况下,再加上飞利浦色调灯,这似乎是大多数在城市的灯火。 ..不切实际。