Raspberry Pi 的 RP2350 微控制器在 RP2040 的基础上引入了许多新的硬件安全功能,并在 DEF CON 上发起了一项黑客挑战,鼓励研究人员发现漏洞。挑战已经被击败,芯片确实存在漏洞(至少在某种程度上)。本次演讲将介绍发现此漏洞的过程、利用该漏洞的方法以及推断相关低级硬件行为的途径。
RP2350 的安全架构涉及多个相互关联的机制,这些机制共同提供对芯片上运行代码的认证、受保护的一次性可编程存储、对调试功能的细粒度控制等。基于防熔丝的 OTP 存储器作为系统的信任根,并通知 ARM TrustZone 的配置以及其他攻击缓解措施,如故障检测器。Raspberry Pi 甚至构建了一个令人印象深刻的定制冗余协处理器(RCP),通过堆栈保护、数据验证和指令延迟随机化来加强 Cortex-M33 内核上引导 ROM 代码的执行。
由于可能会对问题所在的地方做出许多错误的猜测,因此我从芯片逻辑的最基本特性开始,包括复位过程。如果更高级别的机制完全信任看似简单的硬件操作,即使是这一层次的小疏忽也可能完全击败复杂的安全措施。我展示了对 SoC 中使用的 IP 模块设计细节的初步研究如何帮助指导攻击,并展示了充分测试基于旧 IP 构建的新功能的重要性。最终,涉及的运气(或缺乏运气)提醒我们需要仔细理解和验证复杂系统。