NeFut Logo NeFut
EN 管理员登录

[核心技术] MIT研究者开发新操作系统Fractal,揭示芯片内部的未知行为!

发布于:2026-06-11 09:00 最后更新:2026-06-12 02:58
#AI #Operating System #Microarchitecture

一个新的内核,或操作系统中的核心程序,为研究人员提供了更清晰的处理器内部运行情况的视图。这个名为Fractal的内核由MIT开发,已经在苹果的M1芯片中发现了之前未知的行为。当安全研究人员想要了解现代处理器的真实工作细节时,他们通常在一个并未为此目的构建的操作系统上进行实验。他们打开macOS或Linux,手动修补内核,并希望修改能生效。这种方法不稳定、难以重现,并且在苹果平台上即将被弃用。MIT计算机科学与人工智能实验室(CSAIL)的一组团队决定构建不同的东西。Fractal是一个从头开始编写的操作系统内核,将硬件本身作为研究对象。其首次重大应用是深入研究苹果M1处理器的分支预测器——即CPU在确定下一步将运行的代码之前,猜测代码以避免浪费时间等待。研究团队发现了之前的工作遗漏的结果,包括“幽灵”这一类称为推测攻击的首次证据影响了苹果硅。

“我们在以硬件未设计的方式使用它,”项目负责人、MIT电气工程与计算机科学(EECS)博士生Joseph Ravichandran说。“这甚至不明显是你可以用硬件做的事情。但我们找到了一种方法来提取这些不同的原语。这就像显微镜。如果你有一个手持放大镜,你可以看到一点。而如果你有一个电子显微镜,那就真的不一样了。这就是Fractal的意义,操作系统中的电子显微镜。”

Fractal解决的核心问题是研究人员多年来一直在绕过的问题。现代处理器在许多内部结构中保持状态:分支预测器、缓存、地址转换后备缓冲区等。为了研究这些结构在用户代码和内核代码之间的行为,研究人员需要在这两个边界上进行几乎相同的实验。在通用操作系统上,这非常困难。系统本身管理特权级别、地址空间和调度,并将自身活动注入到每次测量中。Fractal反转了模型。它直接在裸金属上启动,没有其他软件运行,并暴露出允许单个实验在运行时切换特权级别的原语,同时在相同地址空间中执行相同的指令。团队称这种底层技术为多特权并发,它依赖于他们引入的新结构:外核线程,该线程位于用户进程的内存中,但以内核特权执行。其结果是几乎没有背景噪声的实验设置。在macOS或Linux下进行的测量由于中断、调度器活动和地址空间管理而模糊,而Fractal则产生平坦的基线和干净的信号。

Fractal在M1上发现的内容:苹果的M1实现了一种名为CSV2的ARM规范,旨在防止一个特权级别中的代码影响另一个特权级别中的推测。使用Fractal,MIT团队确认该保护在间接分支预测的执行阶段有效:用户模式程序不能通过间接分支预测器使内核推测性地执行选择的目标。但团队也发现了一些芯片设计者可能未考虑到的事情。CPU在保护生效前仍会将目标提取到指令缓存中。该提取可以通过侧信道观察到,这意味着用户代码仍然可以影响内核跨特权边界拉入其缓存的内容。不同地址空间标识符分配的进程之间也出现了相同的模式。团队还首次提供了苹果硅表现出幽灵推测的证据,这是一类之前仅在AMD和Intel处理器上演示的错误预测。在幽灵中,普通指令(包括空操作)可能被CPU错误地解释为分支,触发程序从未请求的推测行为。在M1上,Fractal显示幽灵提取在两个特权级别和地址空间之间都成功,但执行阶段仍被阻塞。

Fractal的另一个实验推翻了早期关于M1条件分支预测器的发现,该发现报告称跨特权训练在苹果的性能核心上有效,但在其效率核心上无效。Fractal团队展示了条件分支预测器在任何核心类型上都没有特权隔离,而早期结果可能是macOS在系统调用期间悄悄迁移线程到不同核心的伪影。

“对我们来说,它是一个真正的独立变量,”Ravichandran说。“你改变特权级别,其他一切都不变。唯一能解释攻击是否成功的就是特权级别。”

Fractal支持x86_64、ARM64和RISC-V,代码超过31,000行。团队将其设计为基础设施,而不是单一实验,配备了熟悉的POSIX系统调用、C库以及标准工具(如vim、GCC和dash shell)的移植,以便研究人员可以毫不费力地迁移现有实验代码。MIT团队将其M1发现披露给了苹果的产品安全团队。在一个不寻常的反转中,苹果的工程师也检查了Fractal。长期目标比任何单一结果更大。Ravichandran希望Fractal能成为微架构研究中像QEMU和FFmpeg一样的工具:整个社区共同构建的共享基础设施。“我希望我们的结果作为一个社区会变得显著更可靠,更准确,”Ravichandran说。“通过减少噪声、提供清晰度,并确保你在正确的核心上、正确的系统上运行。”

“Fractal是一个强大的架构贡献,因为它将一个通常临时的微架构逆向工程工作流程转变为可重用的研究基础设施,”未参与该论文的南加州大学助理教授Mengyuan Li表示。“通过减少软件噪声并给予研究人员在特权边界更紧密的控制,它使得困难的硬件实验更易于解释。”Ravichandran与MIT EECS副教授、CSAIL首席研究员Mengjia Yan共同完成了该论文。他们的工作部分得到了国家科学基金会、美国空军科学研究办公室和美国国防高级研究计划局赞助的ACE项目的支持。他们在加利福尼亚旧金山的IEEE安全与隐私研讨会上展示了他们的工作。

博主点评: Fractal操作系统的推出为微架构研究提供了全新的视角和工具,特别是在对芯片内部行为的深入分析上。通过减少操作系统的干扰,Fractal为研究人员提供了更清晰的数据,这将极大提升对现代处理器安全性的理解与验证。其影响不仅限于理论研究,未来可能会促进硬件设计的改进和安全性增强。

原文链接: https://news.mit.edu/2026/to-study-how-chips-really-work-mit-researchers-built-their-own-operating-system-0610

[h] 返回首页