芯片|苹果M1芯片惊现难以修复的安全漏洞,大部分Arm处理器或都将存在

芯片|苹果M1芯片惊现难以修复的安全漏洞,大部分Arm处理器或都将存在

文章图片

芯片|苹果M1芯片惊现难以修复的安全漏洞,大部分Arm处理器或都将存在


6月11日消息 , 据Techcrunch、venturebeat等外媒报道 , 近日 , 麻省理工学院(MIT)的研究人员发现 , 苹果的M1芯片存在一个“无法修补”的硬件漏洞 , 攻击者可以利用该漏洞突破其最后一道安全防御 。
报道称 , 该漏洞存在于苹果M1芯片中使用的硬件级安全机制中 , 被称为“指针身份验证”(PAC)——这是Arm处理器当中广泛存在的一项硬件安全机制 , 它通过使用加密哈希保护指针来保护内存中的指针完整性 , 该加密哈希验证指针无法被修改 , 系统使用它来验证程序对受保护指针的使用 。 当使用错误的PAC时 , 程序会崩溃 。
根据此前Arm公布的信息显示 , PAC最小化了攻击面 , 使得面向返回编程(ROP)漏洞减少了60%以上、面向跳转编程(JOP)漏洞减少了40%以上 。 如果是同时使用PAC和分支目标标识符(BTI)这两个硬件安全机制的Arm CPU则能够进一步提升安全性 , Glibc 中攻击者可用的小工具数量减少了约 98% , 而代码大小仅增加了 2% 左右 。
不过 , 麻省理工学院计算机科学和人工智能实验室(CSAIL)的研究人员Joseph Ravichandran、Weon Taek Na、Jay Lang 和 Mengjia Yan 创造了一种新颖的硬件攻击方式 , 它结合了内存损坏和推测执行攻击来回避安全功能 。 该攻击表明 , 指针身份验证可以不留痕迹地被攻破 , 并且由于它是一种硬件安全机制 , 因此苹果将无法通过更新M1芯片的软件补丁来修复它 。

MIT CSAIL研究团队将其攻击方式称之为“Pacman” , 它通过硬件侧信道攻击来暴力破解PAC值(由于PAC值只有一定数量 , 研究人员可以尝试所有值以找到正确的值) , 并抑制崩溃 , 从而启动连锁攻击 , 最终构建控制流劫持攻击 。
“PAC的大小相对较小 , 直接的暴力攻击会导致足够多的崩溃来检测恶意行为——更不用说程序重新启动会导致 PAC 被刷新 。 但Pacman攻击的关键在于 , 使用推测执行攻击 , 通过微架构侧通道秘密泄露PAC验证结果 , 而不会导致崩溃 。 ”该论文解释道 。
在概念验证中 , 研究人员证明该攻击甚至可以针对内核(设备操作系统的软件核心)起作用 , 这“对所有启用指针身份验证的 Arm 系统的未来安全工作具有重大影响 。 ”MIT CSAIL的博士生和该研究论文的共同主要作者Joseph Ravichandran说道 。
“指针身份验证背后的想法是 , 如果所有其他防御方法都失败了 , 你仍然可以依靠它来防止攻击者控制你的系统 。 ” Joseph Ravichandran补充道:“但是 , 我们已经证明 , 作为最后一道防线的指针身份验证并不像我们曾经认为的那样的安全 。 ”
到目前为止 , 苹果已经在其所有基于Arm架构的定制芯片上内置了PAC功能 , 包括 M1、M1 Pro 和 M1 Max等 。 此外 , 包括高通和三星在内的许多其他芯片厂商已经宣布或预计将推出新处理器都将支持该硬件级安全功能 。 虽然 , MIT CSAIL的研究人员表示 , 尚未对苹果刚刚发布的 M2 芯片的进行测试攻击 , 但该芯片也支持PAC功能 。
根据此前Arm公布的信息显示 , 不仅基于Armv8.3/8.6指令集的CPU内置了PAC功能 , 最新的Armv9指令集的CPU同样也内置了PAC功能 。

MIT CSAIL的研究人员在研究论文中说:“如果不解决这个问题 , 我们发现的这项攻击方式将在未来几年影响大多数移动设备 , 甚至可能影响桌面设备 。 ”
据介绍 , 研究人员已经向苹果公司展示了他们的研究结果 。 不过 , 他们也指出 , Pacman攻击并不能绕过 M1 芯片上的所有安全机制 , 它只是针对PAC可以防止的现有的漏洞 。

相关经验推荐