麻省理工学院的研究人员发现,苹果的M1芯片存在一个“不可修复”的硬件漏洞,该漏洞可能允许攻击者突破其最后的安全防线。该漏洞存在于苹果M1芯片中使用的硬件级安全机制中,该机制被称为指针验证码(pointer authentication code),简称PAC。此功能使攻击者更难将恶意代码注入设备的内存,并提供了一定程度的缓冲区溢出漏洞防御,该漏洞会迫使内存数据溢出到芯片的其他部分。
然而,来自麻省理工学院计算机科学和人工智能实验室的研究人员创造了一种新颖的硬件攻击,它结合了内存损坏和推测性执行攻击来规避安全功能。这种攻击表明,指针验证机制可以被穿透而不留痕迹。更糟糕的是,因为它利用了硬件机制,所以没有软件补丁来修复它。
这种攻击被恰当地称为PacMan,这意味着它通过猜测指针认证码(PAC)来工作,这是一种加密的签名,可以确认应用程序没有被恶意更改。这是利用推测执行来完成泄露的PAC验证结果。预测执行(Predictive execution)是现代计算机处理器使用的一种技术,通过猜测各种计算行来加快性能,而硬件侧通道则用于显示猜测是否正确。
更重要的是,由于PAC的可能值只有这么多,研究人员发现有可能再次尝试所有这些值以找到正确的值。
在一次概念验证中,研究人员证明了这种攻击甚至可以处理内核,即设备操作系统的软件核心,这对所有启用指针认证的ARM系统的未来安全有很大影响,麻省理工学院CSAIL的博士生、这篇研究论文的第一作者之一Joseph Ravichandran说。
Ravichandran补充说:“指针认证背后的想法是,如果所有其他方法都失败了,你仍然可以依靠它来防止攻击者获得对你系统的控制。我们已经表明,指针认证作为最后一道防线,并不像我们曾经认为的那样绝对。”
到目前为止,苹果已经在其所有基于ARM的定制芯片上实现了指针认证,包括M1、M1 Pro和M1 Max。包括高通和三星在内的其他一些芯片制造商已经宣布或预计将推出支持硬件级安全功能的新处理器。麻省理工学院表示,他们尚未在苹果未发布的M2芯片上测试攻击,该芯片也支持指针认证。
麻省理工学院在一份研究报告中表示:“如果不缓解,我们的攻击将影响大多数移动设备,甚至可能在未来几年影响桌面设备。”
研究人员向苹果公司提交了他们的研究结果,并提到Pac-Man攻击并不是M1芯片上所有安全的“魔法旁路”,只能采取指针认证保护的现有错误。苹果公司未予置评。
去年5月,一名开发人员在苹果M1芯片中发现了一个不可修复的缺陷,该缺陷创建了一个隐藏的通道,两个或更多安装的恶意应用程序可以用来相互传输信息。然而,这个缺陷最终被认为是“无害的”,因为恶意软件无法利用它来窃取或干扰Mac上的数据。