
一款全新操作系统内核,能够帮助研究人员更清晰地观测处理器内部的运行状态。这款名为Fractal的内核由麻省理工学院(MIT)研发,借助它,研究人员已在苹果M1芯片中发现了此前从未被观测到的运行行为。
安全研究人员想要深入剖析现代处理器的底层运作逻辑,研判幽灵漏洞(Spectre)、熔断漏洞(Meltdown)等攻击方式的实现条件时,通常只能在并非为这类底层研究设计的通用操作系统上开展实验。研究人员需要运行macOS或Linux,手动修改内核并保证改动稳定生效。这种研究方式不仅稳定性差、实验结果难以复现,在苹果平台上,相关调试方式也已逐步被淘汰。
为此,麻省理工学院计算机科学与人工智能实验室(CSAIL)团队另辟蹊径,从零开发了全新操作系统内核Fractal。该内核将硬件本身作为核心研究对象。团队率先利用它深入分析CPU分支预测器——分支预测器会在尚未确定下一步指令时提前预判并加载代码,避免处理器空等、浪费算力。在针对苹果M1芯片的研究中,Fractal挖掘出多项过往研究遗漏的现象,同时首次证实,一类名为Phantom的推测执行漏洞同样会对苹果自研芯片造成影响。
主导该项目的麻省理工学院电子工程与计算机科学(EECS)专业博士生Joseph Ravichandran表示:“我们在以硬件原本并未设计的方式使用它。这种操作方式甚至超出了硬件的常规应用范畴,但我们找到了调用各类底层基础单元的方法。Fractal就像一台显微镜:普通放大镜只能观察表层细节,而电子显微镜才能窥探本质,Fractal就是操作系统领域的‘电子显微镜’。”
长期以来,处理器内部的各类硬件单元一直是行业研究的难点,Fractal恰好解决了这一痛点。现代处理器包含大量内部状态单元,例如分支预测器、高速缓存、地址转换后备缓冲区等。芯片本应隔离用户代码与内核代码两大运行域,而研究人员要观测这些硬件单元在两个域之间的行为差异,就必须在两种环境下执行高度一致的对照实验。
在通用操作系统中,这一操作难度极大。系统会自主管控权限级别、地址空间与任务调度,所有测量数据都会被系统自身的后台行为干扰。
Fractal彻底颠覆了传统模式。它可直接裸机启动、不加载任何额外软件,并提供底层调用接口,支持同一套指令、在同一地址空间内动态切换运行权限。团队将这项核心技术命名为多权限并发,并创新设计出外层内核线程:该线程驻留在用户进程内存空间内,却拥有内核级运行权限。
依托这套架构,实验环境几乎不存在后台干扰。在macOS、Linux系统中,中断、调度任务、地址空间管理等行为会让测量数据失真,而Fractal能够输出稳定基准值与纯净的监测信号。
苹果M1芯片采用了ARM的CSV2安全规范,该规范旨在阻止某一权限域的代码操控另一权限域的推测执行流程。借助Fractal,麻省理工团队证实,在间接分支预测的执行阶段,这套防护机制能够正常生效:用户态程序无法通过间接分支预测器,诱导内核去推测执行指定目标代码。
但团队也发现了芯片设计中意料之外的漏洞:安全机制生效前,CPU仍会将目标指令预取至指令缓存。这一预取行为可通过侧信道被监测,意味着跨权限域场景下,用户代码依旧能够影响内核的缓存加载内容。不同地址空间标识符对应的进程之间,也存在相同问题。
研究还首次证实,苹果自研芯片存在Phantom推测执行漏洞。此前该漏洞仅在AMD与英特尔处理器上被发现,它会让普通指令(甚至空指令)被CPU误判为分支指令,进而触发程序并未定义的推测执行行为。测试显示,M1芯片上的Phantom指令预取行为可跨越权限域与地址空间,不过指令执行阶段仍会被安全机制拦截。
此外,Fractal的相关实验推翻了以往关于M1条件分支预测器的研究结论。此前观点认为,跨权限分支训练可在M1性能核心上生效,但能效核心不受影响。而该团队验证得出,M1两款核心的条件分支预测器均完全没有权限隔离能力;过往结论之所以出现偏差,是因为macOS会在系统调用过程中悄悄将线程在不同核心间迁移,干扰了实验结果。
Joseph Ravichandran表示:“在我们的实验环境中,变量完全可控。仅切换权限级别,其余实验条件保持不变。实验结果的差异,就只能归因于权限级别本身。”
Fractal支持x86_64、ARM64、RISC-V主流架构,代码量超3.1万行。团队将其定位为通用研究基础设施,而非单次实验工具。它兼容标准POSIX系统调用与C语言库,并移植了vim、GCC、dash命令行解释器等常用工具,研究人员可以低成本迁移现有实验代码。
麻省理工团队已将M1芯片的相关漏洞发现告知苹果产品安全团队。苹果工程师也主动对Fractal开展了分析评估,这种互动在行业中并不多见。
团队的长远目标不止于单次研究成果。Joseph Ravichandran希望Fractal能像QEMU、FFmpeg一样,成为处理器微架构领域的通用底层工具,供整个行业共同使用、持续迭代。“我希望整个行业的研究成果都能变得更加可靠、精准。”Joseph Ravichandran说道,“依托这套低干扰、高精准度的工具,研究人员可以确保实验在指定核心、指定系统环境中稳定运行。”
未参与本次研究的南加州大学助理教授Mengyuan Li评价道:“Fractal具备很高的架构价值。以往处理器微架构逆向工程工作大多零散无序,而它将这套流程转化为可复用的研究基础设施。该工具减少了软件层面的干扰,让研究人员可以精准管控跨权限域的实验条件,大幅降低了复杂硬件实验的解读难度。”
本文转自媒体报道或网络平台,系作者个人立场或观点。我方转载仅为分享,不代表我方赞成或认同。若来源标注错误或侵犯了您的合法权益,请及时联系客服,我们作为中立的平台服务者将及时更正、删除或依法处理。
