1/3 安全公告 标题 关于通过 CPA 攻击绕过 ESP32-C5 上 XTS-AES 伪轮机制的安 全公告 发布日期 2026/04/07 公告编号 AR2026-001 编号 NA 版本 V1.0 问题小结 ESP32-C5 芯片中发现一项硬件漏洞,影响芯片的 Flash 加密功能。该功能采用 XTS-AES 算法,并引入伪轮防护机制,通过插入虚假的加密操作来随机化芯片的 功耗特征,从而增加侧信道分析的难度。 安全研究人员证明,相关功耗分析 (Correlation Power Analysis, CPA) 侧信道攻击 可以绕过伪轮防护机制。该攻击利用虚假加密轮与真实加密轮在切换过程中产生的 不同功耗特征,使攻击者能够从采集的功耗轨迹中分离出真实的 AES 运算过程。 基于该方法,攻击者可以恢复每 128 字节 Flash 数据块对应的加密密钥。该攻击需 要对设备进行物理权限访问,并依赖专用测量设备(通常还需控制温度环境)以及 大量算力进行密钥恢复。在启用最高等级的伪轮机制并结合时钟随机化的情况下, 恢复单个 128 字节数据块的密钥通常需要数天时间。 什么是侧信道攻击 (SCA) ? 侧信道攻击是一类通过利用系统无意泄露的信息来推测机密数据(通常为加密密钥) 的攻击方法。侧信道分析可以基于多种信息,例如执行时间变化或设备功耗特征。 本公告中涉及的 ESP32-C5 攻击属于基于相关功耗分析 (Correlation Power Analysis, CPA) 的侧信道攻击。 什么是伪轮机制? ESP32-C5 在 XTS-AES 外设中引入了伪轮机制,作为抵御侧信道攻击的一种防护 手段。芯片会使用伪密钥执行额外的虚假加密轮,这些操作不会影响最终的加密结 2/3 果。额外加密轮以随机方式插入,从而扰乱功耗特征,增加侧信道分析的复杂度。 该机制支持配置强度。 影响分析 1. 受该漏洞影响的芯片采用 XTS-AES 模式进行 Flash 数据加密,不同 Flash 数据 块使用独立的加密密钥。攻击者利用 CPA 可以提取单个 Flash 数据块的加密密 钥,但恢复每个数据块的密钥均为独立且漫长的过程。 2. 在启用最高等级的伪轮机制并结合时钟随机化的情况下,恢复单个 128 字节数 据块的密钥通常需要数天时间,并需要采集数十万条功耗轨迹以及大量算力进 行密钥穷举。此外,该攻击无法直接恢复 tweak key,只能恢复每个数据块的 tweak 值,这意味着每次攻击最多只能影响 128 字节数据。完全攻破 XTS-AES 模式,需要同时恢复 tweak 值和加密密钥,攻击复杂度显著增加。 3. 综合来看,使用该方法解密已经加密的 Flash 在时间和成本上均不可行。在最 高防护等级下,攻击 1 KB 的 Flash 数据可能需要数周时间。 4. 需要注意的是,即使攻击者成功破解了单个数据块的密钥,仍需结合系统中的 其他漏洞才能实施有效攻击。目前尚未发现针对 ESP32-C5 的此类组合攻击链。 5. 该攻击依赖物理访问以及专用设备(包括高精度模数转换器、信号放大器等)、 受控温度环境、定制的 SPI Flash 仿真环境和大量算力。由于每个设备使用唯 一的 Flash 加密密钥,该攻击具有设备特异性,难以规模化利用,因此对攻击 者的吸引力较低。 影响产品系列: 该漏洞已确认影响 ESP32-C5(芯片版本 v1.0 和 v1.2)。用于绕过伪轮机制的 CPA 技术在理论上也可能适用于其他采用相同 XTS-AES 外设架构并支持伪轮防护 机制的芯片,例如 ESP32-P4。 同一研究中对 ESP32-H2(芯片版本 v1.2)进行了测试,结果表明其不受该攻击影 响。这是由于其内部供电架构的差异,使攻击者无法获取实施 CPA 攻击所需的可 区分功耗特征。 应对方法 目前尚无完整的软件或硬件修复方案,未来产品将通过改进硬件防护机制来解决该 问题。当前建议采取以下应对方法。 硬件应对建议 3/3 通过防篡改机制对设备进行物理保护,确保设备在未经检测的情况下无法被篡改。 一旦检测到篡改行为,设备应执行预设响应,例如复位或清除敏感信息。防止物理 访问是最有效的防护手段,因为该攻击本质上依赖于对设备功耗信号的采集。 建议优先选用系统级封装 (System-in-Package, SiP) 形式的芯片,其 Flash 引脚已 经在芯片内部连接。例如,ESP32-C5HF4 等 SiP 器件可有效防止外部 Flash 仿真 或对 Flash 引脚的信号监测,从而提升防护能力。 软件应对建议 启用最高强度的伪轮机制,并同时启用时钟随机化。尽管研究表明伪轮机制可被绕 过,但在最高等级下结合时钟随机化能够显著增加攻击成本和所需时间。建议在设 备首次启动时完成上述安全配置。 应用层应对建议 避免在多个设备或同一生产批次设备中长期共享加密密钥。 此类攻击通常需要大量资源、专业技能以及昂贵的实验设备。如果每个设备均使用 唯一且与设备身份绑定的密钥,攻击者难以将攻击大规模扩展,从而显著降低攻击 价值。 此外,建议同时启用 Flash 加密和安全启动功能,以降低固件被篡改的风险。 致谢 感谢 Positive Technologies 的 Alexey Shalpegin 报告此漏洞,并协助我们跟进本 次披露。