事关数据安全,ARM被爆不可修复漏洞
日前,ARM架构再次被爆出重大安全漏洞,影响波及ARMv8.3架构及以前的所有CPU。该漏洞为硬件级且无法完全修复,如被利用可能造成严重数据泄露风险。
ARM硬件级安全漏洞
来自ARM开发者官网的一项安全更新证实,存在一种名为PACMAN的新型安全攻击,恶意软件可以利用它来暴力破解指针认证码 (PAC)。一旦确定了PAC,攻击者就可以利用它来降低指针认证机制的防护能力,并绕过内存保护机制,利用CPU上的用户空间伪造内核 PAC 进行硬件攻击并窃取数据。
值得一提的是,PAC(Pointer Authentication Code)指针认证本身是ARM芯片提供的一项安全功能,通过在指针中添加加密签名来验证软件,从而防止恶意攻击者通过软件漏洞对内存实施攻击。这一功能被认为对于保护CPU免受已获得内存访问权限的攻击者的攻击具有重要意义。
PACMAN漏洞最早于2021年由麻省理工学院安全研究人员发现,利用ARM CPU的硬件缺陷,可在无需触发任何系统崩溃的情况下,直接避开针对软件漏洞的防护机制,实现对内存和数据的劫持,甚至直接接管操作系统。
该漏洞起初仅在苹果的M1芯片中被验证,但在随后的研究中,发现大量的ARM内核也容易被该漏洞攻击。包括 Neoverse V1、Neoverse N2、Cortex-A78C、Cortex-A78AE、Cortex-A710、Cortex-A715、Cortex-X1C、Cortex-X2 和 Cortex-X3,而这些内核被广泛应用于手机、电脑等设备中。
ARMV8.2架构CPU被抛弃
根据ARM官方的描述,在Armv8.3-A 架构的后续版本中,指针认证功能得到了增强,新增了故障检测功能 (FEAT_FPAC),允许在指针认证失败时触发故障检测。但也强调到,“在CPU实现了FEAT_FPAC的系统上,可以进一步缓解 PACMAN 的影响”。
言外之意表明,该漏洞影响仅能缓解,而非彻底解决。
值得关注的是,ARM官方的修补方案是针对ARMv8.3-A版本推出,这一架构主要使用者正是被验证PACMAN漏洞的苹果。而在ARMv8架构中,使用者更为广泛的ARMv8.2版本并未被提起重视,这也让使用该版本的CPU存在更大的受攻击风险。
这样的局面主要与ARM公司独特的授权机制有关。ARM的架构授权机制类似“订阅制”,ARM公司对其架构版本做出严格划分,使用者需根据版本号订阅该版本的不同层级使用权,包括指令集、IP核和成品使用。需要注意的是,授权仅单向支持新版本到旧版本兼容。
ARM公司此举其实并不意外。一方面ARMv9如今已经成为主流架构,主要厂商已经基本切换至该版本中,ARMv8.2自然成为昨日黄花了。另一方面,苹果不仅是ARM最重要的客户,更是ARM上市的基石投资者,受到特殊关照自然也无可厚非。
国内相关产品需抓紧替换
虽然ARM官方一再强调“PACMAN攻击并非可利用的漏洞”,但从其专门发布CPU安全更新的表现看,这种说辞似乎并不可信。而在其描述中,也使用了“进一步缓解”而非彻底修复的含糊表达。
目前已知ARMv8.2架构CPU不在被专门修复之列,也意味着采用此架构的CPU数据泄露和操作系统劫持风险巨大。这不免令人担忧,我国目前的国产替代CPU中,ARM技术架构的厂商,其所持授权许可皆为ARMv8.2指令集授权。而受实体清单影响,采用ARMv8.2技术架构的主要厂商,原则上无法绕开制裁购买新版本架构授权。
而PACMAN安全漏洞再次证明,即便购买了ARM新版本架构授权,也很难在安全上实现自主可控。诸如此类漏洞存在于硬件底层,不仅无法彻底修复,还存在着巨大的后门风险。一个长达四年未被重视的CPU硬件级漏洞,无异于将数据的大门长期敞开欢迎攻击者采撷。
如今,数据要素在我国经济社会发展中的作用越来越重要,其安全性也不容忽视。因此,我们需要使用安全系数更高、自主能力更强的产品,来保障数据要素安全,尤其是CPU等关键部件。对于存在PACMAN漏洞隐患的CPU产品,需抓紧替换和升级,切不可将安全之门的钥匙寄于不可靠的技术之手。
作者:安全君
声明:本文来源于网络,仅代表作者个人观点,不代表“技术领导力”立场