苹果 M 系列新漏洞可提取密钥且无法打补丁
漏洞性质
- 一种旁路攻击,名为 GoFetch,针对苹果 M 系列的数据内存相关预取器(DMP)。
- 通过推测性地预取那些“看起来像”指针的数据,破坏了定时恒定密码学的假设。
- 当攻击者能够输入精心构造的数据并监控缓存时序时,可从常见密码实现(OpenSSL DH、Go RSA、Kyber、Dilithium)中提取密钥。
- 可在 M1 和 M2 上运行;M3 的 DIT 位可在库选择启用时禁用这一有问题的行为。
- 据报道,安全隔区(Secure Enclave)中的密钥不受影响;攻击针对的是用户态/内核态密码学,而不是存放在隔区中的密钥。
实际可利用性与威胁模型
- 需要:同一台机器上的非特权攻击者代码,以及长时间反复触发私钥操作的能力。
- 讨论强调共址进程;由于时序差异极小且噪声很大,纯网络远程攻击被认为不切实际,不过也有人提到过往一般性的远程时序研究。
- 争论中的可能入口包括:浏览器中的恶意 JavaScript、共享服务器、密码管理器、TLS 会话密钥、客户端证书。端到端的现实场景仍不清晰。
对普通用户的影响
- 一方认为:对大多数人来说是“完全无关紧要”的问题;风险远小于社会工程、密码复用和未修补软件。
- 另一方认为:轻视它重演了早期对 Spectre/Meltdown 的态度;那里的 JS 证明概念后来也出现了。
身份、支付与应用的中心化
- 严厉批评手机把身份、支付和应用认证集中为单点故障。
- 倾向于使用物理上分离的令牌(银行硬件设备、智能卡),配合法律上的责任划分,以及针对高价值操作的不同“仪式”。
- 反方观点:以移动设备为中心、结合生物识别的生态(Apple Pay、passkeys)已经显著提升了安全性与便利性,并被银行和监管机构广泛接受。
推测执行、预取与 CPU 设计
- 更广泛的担忧是,推测技术和预取器对密码学而言天生存在风险。
- 建议包括:为定时恒定密码学提供硬件标志或模式、专用安全硬件(TPM、Secure Enclave、HSM、硬件密钥),甚至为“可信与不可信”代码分别配置核心/CPU。
- 其他人则认为推测对现代性能至关重要;真正缺失的是形式化的旁路攻击模型。
其他反应
- 有人指责“无法打补丁”的说法是在博眼球;也有人指出,尽管进行了协调披露,但目前并没有已知的 M1/M2 缓解措施。
- 还有人争论“安全通过隐蔽”以及更开放的架构(例如 RISC-V)是否会提升对硬件根信任的可信度。