[转] 一篇 n 年前的固件安全帖

地址在 Thunderstrike at 31C3 – Trammell Hudson’s Projects。以下是 Copilot 帮助做的总结。

简要总结: 这个页面是 Trammell Hudson 在 31C3 大会上关于 Thunderstrike 漏洞的演讲内容整理。它介绍了苹果 Mac EFI 固件的逆向工程过程、Thunderstrike 漏洞的原理,以及攻击方式和可能的防御措施。

📌 内容要点

  • 背景与动机
    • Thunderstrike 是一种针对苹果 EFI 固件的攻击方法。
    • 攻击者只需几秒钟的物理访问,就能将恶意代码写入 Mac 的启动 ROM。
    • 这种固件级 rootkit 很难清除,甚至能抵抗系统重装。
  • 逆向工程过程
    • 演讲前半部分详细展示了如何逆向苹果的 EFI 启动 ROM,包括固件结构、校验机制和压缩方式。
    • 发现苹果使用 CRC32 校验而非加密签名来验证 ROM 内容,这意味着攻击者可以轻松绕过。
  • Thunderstrike 漏洞原理
    • Thunderbolt 接口允许外部设备在启动时加载 Option ROM。
    • 攻击者可通过修改 Option ROM,在固件更新流程中替换苹果的 RSA 公钥,从而让系统接受伪造的固件。
    • 一旦攻击成功,ROM 中的公钥被替换,只有攻击者签名的更新才能被接受,形成持久控制。
  • 演示与影响
    • 演讲展示了概念验证攻击:利用 Thunderbolt 设备在恢复模式下注入恶意固件。
    • 成功后,攻击者能安装不可移除的 rootkit,绕过密码、记录键盘输入等。
    • 这是典型的“evil maid attack”(恶意女仆攻击),即在用户不在场时通过外部设备入侵。
  • 防御与缓解措施
    • Hudson 提到的防御策略包括:
      • 改进固件签名机制(使用真正的加密验证)。
      • 限制 Option ROM 的加载。
      • 加强物理安全(例如封堵接口)。
    • 他批评苹果当时的防御不足,强调需要硬件级的安全检查。

🎯 总结

Thunderstrike 漏洞揭示了苹果 Mac 在固件安全上的重大缺陷:攻击者可通过 Thunderbolt 接口在启动阶段写入恶意代码,获得持久控制。 这次演讲不仅展示了攻击过程,还呼吁业界加强固件层面的安全防护。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注