一位安全研究员提出了一种本地访问的技术,可以完全绕过流行的ESP32物联网芯片安全措施,植入恶意软件并且永远无法移除。乐鑫公司已经通过公告确认了该漏洞。该攻击方式还能够提取设备的加密密钥,以绕过设备几乎所有安全设置。
ESP32 芯片对业界至关重要,因为它为许多设备提供了带有 WiFi 和蓝牙功能的双核芯片。2018 年 1 月,制造商乐鑫宣布实现交付1亿设备里程碑。ESP32 是许多设备的核心组件,包括LiFX灯泡等,同时也是 AWS 物联网平台AWS FreeRTOS系统支持的兼容设备,以及微软Azure物联网平台兼容设备。
安全研究员LimitedResults与乐鑫协调了有关公告,并披露了漏洞共济细节。该攻击针对 eFuse(电子保险丝),一种一次性烧写的可编程内存。ESP32官方文档描述了攻击实现原理:“每个 eFuse 都包含 1 比特位空间,可以通过变成改写成 1,同时无法被恢复成 0。”通过将负载烧写入设备的 eFuse,软件更新无法重置保险丝,只能物理替换芯片,或者丢弃设备。一个核心风险是共济不是完全替换固件,因此设备看上去可以正常工作。在供应链端和转售的情况下,该漏洞会造成攻击的持续性是大问题。在这种情况下,供应链中的一方将负载烧入 ESP32 的 eFuse 之后,会造成设备的永久损坏。类似的供应链攻击发生在2010年,思科的路由器在运输途中被烧写入定制负载。
该攻击的影响远大于简单业余爱好者设备或者低成本物联网设备。LimitedResults 告诉 InfoQ:
使用 ESP32 内建安全措施的设备不仅仅是灯泡或者联网的温控器。对于有物理访问能力的黑客来说,我们的温控器没有任何防护能力。我在非常昂贵的设备中发现过使用 ESP32 的安全机制,黑客不仅能够破化设备本身,还能使用未授权的资源以及其子系统来破坏整个环境。
CVE-2019-17391 描述了一种通过电压毛刺来攻击设备加密的方式,这是一种众所周知的攻击方式,攻击者向设备引脚发送高/低电平脉冲,导致芯片指令执行混乱。例如在安全检查过程中,向 CPU 的复位引脚发送一个高电平,可以引起指令丢弃。LimitedResults 估计,使用大约 1000 美元硬件成本,花费 1 天时间,可以重现这种攻击。
硬件针对漏洞的缓解技术非常受限。作为通用技术的可信平台模块(Trusted Platform Module,TPM)同样已经被破解,例如 2019 年发现的TPM Fail,2018 年发现的TPM Genie等。AWS IoT Core服务安全建议可以降低可以对类似共济或者任何其他本地访问攻击减小范围。特别是建议中提到的给每个设备使用一个唯一标识,可以让物联网设备提供商禁用或限制使用已知受损设备和长期未更新设备。
由于无法恢复这些设备,依赖 ESP32 的机构应该考虑进行固件升级,以检查芯片的 eFuses,同时对有问题的芯片进行召回,避免其重新流入供应链。
原文链接:
ESP32 IoT Devices Vulnerable to Forever-Hack
评论 2 条评论