尽管苹果最近发布的 M1 芯片号称Apple 迄今为止功能最强大的芯片,并具有行业领先的能效,但业内对这款芯片的评价褒贬不一。
最近,该芯片被麻省理工学院发现有一个安全漏洞,很快被认为是无害的。
麻省理工学院计算机科学和人工智能实验室(CSAIL)的科学家发布了一项研究称,他们发现了一种可以绕过 Apple M1 CPU 上的指针验证机制的新型硬件攻击,称为 PACMAN。
根据介绍,M1 芯片使用了指针认证的功能,该功能是针对典型软件漏洞的最后一道防线。在启用指针认证后,通常会危及系统或泄漏私人信息的漏洞会被拦截在其轨道上。目前,苹果已经在其所有基于 ARM 的定制芯片上实施了指针认证。
而 MIT 新发现的这一漏洞,则可以在不留痕迹的情况下攻破这最后一道防线。此外,鉴于 PACMAN 利用的是硬件机制,因此没有任何软件补丁可以对其进行修复。MIT 方面表示,苹果的 M2 芯片也支持指针认证,但他们还没有针对其进行相关的攻击测试。
指针验证码,简称 PAC,是确认程序状态未被恶意更改的签名。进入 PACMAN 攻击。该团队表明,可以猜测 PAC 的值,并通过硬件侧通道揭示猜测是否正确。由于 PAC 只有这么多可能的值,他们发现可以尝试所有的值以找到正确的值。最重要的是,由于猜测都是在推测执行下发生的,因此攻击没有留下任何痕迹。
“指针身份验证背后的想法是,如果所有其他方法都失败了,您仍然可以依靠它来防止攻击者控制您的系统。我们已经证明,作为最后一道防线的指针身份验证并不像我们曾经认为的那样绝对,”Joseph Ravichandran 说,他是麻省理工学院电气工程和计算机科学专业的研究生,CSAIL 附属机构,也是一篇关于 PACMAN 的新论文。“当引入指针身份验证时,一整类错误突然变得更难用于攻击。随着 PACMAN 使这些漏洞更加严重,整体攻击面可能会更大。”
传统上,硬件和软件攻击在某种程度上是分开的。人们将软件错误视为软件错误,将硬件错误视为硬件错误。架构上可见的软件威胁包括恶意网络钓鱼尝试、恶意软件、拒绝服务等。在硬件方面,2018 年广受关注的 Spectre 和 Meltdown 漏洞等安全漏洞操纵微架构结构窃取计算机数据。
麻省理工学院的团队想看看将两者结合起来会取得什么成果——从软件安全世界中获取一些东西,并使用硬件攻击破坏缓解措施(旨在保护软件的功能)。“这就是 PACMAN 所代表的核心——一种思考威胁模型如何在 Spectre 时代融合的新方式,”Ravichandran 说。
PACMAN 并不是 M1 芯片上所有安全性的魔法绕过。PACMAN 只能采用指针身份验证可防止的现有漏洞,并通过找到正确的 PAC 来释放该漏洞在攻击中的真正潜力。科学家们说,没有理由立即发出警报,因为 PACMAN 无法在没有现有软件错误的情况下破坏系统。
指针身份验证主要用于保护核心操作系统内核,即系统中最高权限的部分。获得内核控制权的攻击者可以在设备上为所欲为。该团队表明,PACMAN 攻击甚至对内核有效,这“对所有启用指针身份验证的ARM系统上的未来安全工作具有重大影响,”Ravichandran 说。“未来的 CPU 设计人员在构建未来的安全系统时应该注意考虑这种攻击。开发人员应注意不要仅仅依靠指针身份验证来保护他们的软件。”
“软件漏洞已经存在了大约 30 年。研究人员已经想出了使用各种创新技术(例如我们现在正在攻击的 ARM 指针身份验证)来缓解它们的方法,”麻省理工学院电气工程与计算机系助理教授、荷马 A. Burnell 职业发展教授、Mengjia Yan 说Science (EECS),CSAIL 附属机构,以及该团队论文的高级作者。“我们的工作提供了有关如何通过硬件攻击绕过作为重要缓解方法继续存在的软件漏洞的见解。这是一种看待这种长期存在的安全威胁模型的新方法。在这种新的复合威胁模型下,还有许多其他的缓解机制没有得到很好的研究,因此我们将 PACMAN 攻击作为起点。
研究人员将于 6 月 18 日在国际计算机体系结构研讨会上展示他们的工作。Ravichandran 和 Yan 与共同第一作者、CSAIL 的 EECS 学生 Weon Taek Na 和麻省理工学院本科生 Jay Lang 一起撰写了这篇论文。
参考链接:Researchers discover a new hardware vulnerability in the Apple M1 chip;Demi Xia编译