事关数据安全,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产品,需抓紧替换和升级,切不可将安全之门的钥匙寄于不可靠的技术之手。


作者:安全君

声明:本文来源于网络,仅代表作者个人观点,不代表"技术领导力"立场

相关推荐
AndyHeee16 天前
【SVC、PendSV(系统异常) 与 外设 IRQ 、NVIC笔记】
arm开发
暮云星影16 天前
瑞芯微rk3588利用Rockchip NPU运行大语言模型(LLM)
arm开发·人工智能·语言模型·自然语言处理
techdashen16 天前
绕过系统 ICMP:用 rawsock、Npcap 和 WMI 找到默认网卡
开发语言·arm开发·rust
振南的单片机世界16 天前
ARM中断比51快在哪?硬件压栈+NVIC集中管理
arm开发·stm32·单片机·嵌入式硬件
墨绿色的摆渡人16 天前
论文笔记(一百三十七)Learning Dual-Arm Push and Grasp Synergy in Dense Clutter
arm开发·论文阅读
暮云星影16 天前
全志linux开发屏幕适配(一)屏幕参数设置说明
linux·arm开发
m0_5474866617 天前
《ARM Cortex-M4嵌入式应用技术——基于STM32F407、STM32CubeMX与Proteus》全套PPT课件
arm开发·stm32·proteus
Lanceli_van17 天前
SQLite 3.45.2(sqlite-autoconf-3450200)ARM 交叉编译完整步骤
arm开发·sqlite
暮云星影17 天前
全志linux开发屏幕适配(二)`HDMI`驱动适配说明
linux·arm开发·驱动开发
暮云星影17 天前
瑞芯微rk3566开发FIT Secure Boot
linux·arm开发·驱动开发·安全