希望一场比赛

苹果M1的隐蔽频道大多是无害的,但确实很有趣

从技术上讲,这是一个漏洞,但攻击者对此无能为力。

苹果M1生产线的标志。

一名开发人员发现,苹果的新M1 CPU有一个缺陷,它可以创建一个秘密通道,让两个或两个以上已经安装的恶意应用程序可以用来相互传输信息。

这种秘密的通信可以在不使用计算机内存、套接字、文件或任何其他操作系统特性的情况下发生,开发者赫克托耳马丁说。通道可以连接以不同用户和不同特权级别运行的进程。这些特性允许应用程序以一种无法被检测到的方式交换数据——或者至少在没有专门设备的情况下。

严格来说,这是个弱点,但是…

马丁说,这个漏洞主要是无害的,因为它不能被用来感染Mac电脑,也不能被漏洞或恶意软件用来窃取或篡改存储在电脑上的数据。相反,该漏洞只能被两个或两个以上已经安装在Mac上的恶意应用程序滥用,而这些恶意应用程序的使用方式与M1漏洞无关。

尽管如此,这个Martin称之为M1racles的漏洞仍然符合漏洞的技术定义。因此,它有自己的漏洞名称:CVE-2021-30747。

“它违反了操作系统的安全模型,”Martin解释道周三发布的帖子.“你不应该能够秘密地将数据从一个进程发送到另一个进程。即使在这种情况下是无害的,你也不应该能够从用户空间写入随机CPU系统寄存器。”

其他在CPU和其他基于硅的安全方面具有专业知识的研究人员同意这一评估。

“发现的漏洞不能用来推断系统上任何应用程序的信息,”迈克尔·施瓦茨(Michael Schwartz)说,他是帮助发现更严重问题的研究人员之一危机和幽灵英特尔、AMD和ARM cpu的漏洞。“它只能作为两个串通(恶意)应用程序之间的通信通道。”

他继续详细说明:

该漏洞类似于一个匿名的“邮局信箱”,它允许两个应用程序互相发送消息。这对其他应用程序来说或多或少是不可见的,而且没有有效的方法来防止它。但是,由于没有其他应用程序使用这个“邮政信箱”,其他应用程序的数据或元数据也没有泄漏。因此,有一个限制,它只能作为运行在macOS上的两个应用程序之间的通信通道。然而,已经有很多应用程序通信的方式(文件、管道、套接字等等),所以多一个通道并不会真正对安全性产生负面影响。尽管如此,它仍然是一个漏洞,可以被滥用为一个意外的通信通道,所以我认为它是一个公平的漏洞。

马丁说,隐蔽通道可能对iphone更重要,因为它可以用来绕过内置在iOS应用程序中的沙盒。在正常情况下,恶意的键盘应用程序没有泄露按键的手段,因为这些应用程序无法访问互联网。秘密通道可以通过将按键传递给另一个恶意应用程序来绕过这一保护,而后者会通过互联网将按键发送出去。

即便如此,两款应用通过苹果的审查程序,然后安装到目标用户设备上的可能性也微乎其微。

为什么寄存器可以被EL0访问?

该缺陷源于ARM cpu中的每个集群系统寄存器,可以通过EL0,该模式为用户应用程序保留,因此具有有限的系统权限。寄存器包含两个可读或写入的位。这就创建了隐蔽通道,因为寄存器可以被集群中的所有核心同时访问。

马丁写道:

通过使用时钟和数据协议(例如,一方写1x发送数据,另一方写00请求下一个位),一对恶意的合作进程可以建立一个健壮的通道,以避免这种2位状态。这允许进程交换任意数量的数据,只受CPU开销的限制。可以使用CPU内核亲和性api来确保两个进程调度在同一个CPU核心集群上。一个PoC演示了这种方法来实现高速,健壮的数据传输是可用的在这里.这种方法无需进行太多优化,就可以实现超过1MB/s的传输速率(更少的数据冗余)。

马丁提供了一个演示视频在这里

M1RACLES:坏苹果! !关于糟糕的苹果(M1漏洞)

目前还不清楚为什么要创建这个寄存器,但Martin怀疑它对EL0的访问是一个错误,而不是有意为之。没有办法修补或修复现有芯片中的漏洞。关心这个漏洞的用户除了将整个操作系统作为一个正确配置的虚拟机运行之外,没有其他办法。因为VM将禁用对该注册的客户访问,因此将终止隐蔽通道。不幸的是,这个选项会带来严重的性能损失。

马丁在使用一种叫做m1n1作为首席经理的他朝日Linux这个项目旨在将Linux移植到基于m1的mac上。他最初认为这种行为是一种专有特性,因此,他在开发者论坛上公开讨论了它。后来他才知道,这是一个连苹果开发人员都不知道的漏洞。

同样,绝大多数Mac用户——可能超过99%——没有理由担心。如果电脑上已经安装了两个或两个以上的恶意应用程序,人们就会有更大的担忧。这个漏洞更值得注意的是,它显示了芯片缺陷(技术上称为errata)存在于几乎所有的cpu中,即使是那些从其他架构中学习了以前错误的新cpu。

苹果没有回复记者的置评请求,所以目前还不清楚该公司是否计划在未来几代CPU中修复或减轻这一缺陷。对更多技术细节感兴趣的,请点击马丁的网站提供深度潜水。

你必须置评。

通道Ars Technica