Arm 芯片的安全性不断遭到拷问:采用一种新的 PACMAN 手法可以窃取数据

2022-06-13 11:48:46 浏览数 (1)

麻省理工学院(MIT)计算机科学与人工智能实验室(CSAIL)的科学家们近日公布了一种新的攻击方法,该方法可利用Arm 处理器(包括苹果M1系列芯片)中的硬件漏洞,采用一种新的PACMAN手法就可以窃取数据。

研究团队使用苹果M1处理器作为演示该漏洞的芯片,声称攻击甚至有可能访问核心操作系统内核,从而使攻击者可以通过结合软硬件攻击来全面控制系统。

然而,攻击的软件部分确实依赖一个现有的内存损坏漏洞才能得逞,因此它并非可以绕过所有安全措施。

硬件漏洞却无法通过软件来修补;MIT的团队认为,如果不采取补救措施,这个硬件漏洞会将影响所有的Arm移动设备,甚至可能影响台式电脑。

模拟攻击的研究人员借助对芯片的推测执行引擎发动侧信道攻击,针对Arm的指针身份验证(Pointer Authentication)功能下手。

指针身份验证通常用于使用名为指针身份验证码(PAC)的加密签名来验证软件,从而防止通过软件漏洞对内存实施恶意攻击。

这种软件攻击通常包括利用内存损坏(比如缓冲区溢出)来全面控制程序的手法。正因为如此,它依赖可以读取和写入内存的现有软件漏洞。

图片来源:MIT CSAIL

PACMAN攻击手法包括在使用推测执行攻击的同时“猜测”PAC的值,就像我们在Spectre和Meltdown中看到的那样,通过微架构侧信道泄露PAC验证结果。提醒一下,侧信道攻击让攻击者只需观察或利用某个操作对系统的次要影响,就可以窃取数据。这让研究人员得以找到正确的PAC值,从而避开针对软件漏洞的防护机制。然而,它需要软件中现有的内存损坏漏洞才能得逞。研究人员表示:“PACMAN只能利用指针身份验证防范的现有漏洞,只有找到正确的PAC,才能释放该漏洞在攻击中发挥用场的真正潜力。”

研究人员表示,PACMAN攻击可以跨特权级别实施,“暗示攻击启用指针身份验证的操作系统内核这种可行性。”

研究人员提出了三种方法来防止PACMAN攻击。一种方法是修改硬件或软件,以防止在推测执行过程中使用PAC验证结果。然而研究人员提醒,这种方法对性能可能会有重大的影响。建议的另一种方法是,将先前开发的Spectre缓解技术运用于PACMAN。最后,修补内存损坏漏洞也可以防止攻击。

图片来源:MIT CSAIL

研究论文还记录了该团队对苹果M1处理器的内存层次结构所做的逆向工程,这反过来揭示了这种芯片架构许多以前未公开的技术细节。

MIT研究团队的部分资金来自美国国家科学基金会(NSF)和空军科学研究办公室(AFOSR)。

MIT CSAIL团队将于6月18日在国际计算机体系结构研讨会上介绍其《PACMAN:利用推测执行攻击ARM指针身份验证》论文,到时会概述新的攻击方法。

到目前为止,苹果已经在其所有基于ARM的定制芯片上实施了指针身份验证,包括M1、M1 Pro和M1 Max,包括高通和三星在内的其他许多芯片厂商已经宣布或预计会交付支持这项硬件级安全功能的新处理器。

MIT表示,它尚未对苹果未发布的M2芯片测试攻击,该芯片也支持指针身份验证。

0 人点赞