2019年12月,安全研究员LimitedResults曝光了ESP32的故障注入漏洞。
故障注入攻击是通过物理方式注入故障来破坏电子系统行为的技术。具体来说,攻击者可以向芯片的外部控制组件中引入一个小错误,以干扰其正常运行。当该错误是专门针对安全子系统时,则可能会使攻击者获得内部使用的加密密钥,或者绕过必要的安全检查,并进而使用获得的密钥进一步读取和修改加密信息,例如存储在设备 Flash 中的固件和数据。故障注入有多种物理方法,例如严格定时的电压或时钟波动,外部温度变化,激光辐照或使用强磁场。(摘自乐鑫官网)
LimitedResults 在本披露中所描述的对 ESP32 的攻击,具体会导致:
泄露安全启动密钥,从而绕过安全启动检查并运行不受信任的固件;
泄露用于加密应用程序固件和 flash 内容的 flash 加密密钥。
因此,乐鑫推出了ESP32 ECO V3,该芯片用在ESP32-WROVER-E和ESP32-WROOM-32E模块上。
我就想,ESP32-WROOM-32E能不能跑MicroPython?
于是我就开始买模块,连同底板和串口模块都买了。
没错,就是这些: