苏黎世联邦理工学院(ETH Zurich)的研究人员在4月披露了一个仅通过软件即可利用的漏洞,该漏洞可完全瓦解AMD EPYC平台上的SEV-SNP机密计算保护机制。攻击者只需具备恶意云主机权限,就能静默读取受保护的虚拟机内存,甚至伪造用于验证环境可信度的远程认证报告。这项被命名为“Fabricked”的攻击技术已在2026年USENIX Security会议上发布,据称达到了100%的确定性成功率,且无需物理接触设备或在目标虚拟机内执行任何代码。

机密计算与AMD SEV-SNP背景
机密计算(Confidential Computing)旨在解决云基础设施中一个根本性的信任问题:租户往往无法验证云服务提供商是否在访问自己的数据。AMD SEV-SNP(Secure Encrypted Virtualization-Secure Nested Paging)通过创建硬件隔离的机密虚拟机(Confidential Virtual Machines)来应对这一挑战,其内存经过加密并由片上专用安全处理器PSP(Platform Security Processor)进行访问控制。为了强制执行这些边界,SEV-SNP依赖于一种名为反向映射表(Reverse Map Table, RMT)的结构——这是一张存储在内存中的每页访问控制表,由PSP在引导期间安全初始化。而远程认证(Attestation)机制——租户通过该机制以密码学方式验证其环境真实且未被篡改——则依赖于上述整个信任链的完整性。Fabricked正是打破这一信任链的漏洞。
Fabricked漏洞的技术原理
研究人员指出,Fabricked利用了CPU内部Infinity Fabric互联架构在处理引导期间内存路由时的缺陷。在系统启动过程中,PSP负责初始化RMT,但Infinity Fabric在特定条件下可能会错误地路由内存请求,使得本应由安全处理器控制的内存区域可以被非安全实体访问。攻击者可以利用这一时机,在SEV-SNP保护机制完全建立之前,注入恶意数据或读取敏感信息。由于该漏洞是软件可触发的,恶意云主机无需任何硬件改造即可发起攻击。成功利用后,攻击者不仅能读取机密虚拟机内存,还能伪造认证报告,从而让租户误以为其环境是安全的。
更重要的是,Fabricked攻击具有完全确定性,成功率高达100%,且不需要在目标虚拟机中执行代码。这使得它成为一种极具威胁的“自举”攻击:云服务提供商或有权访问底层硬件的攻击者可以在租户完全不知情的情况下窃取数据。
影响评估与防御局限
从影响范围来看,Fabricked直接威胁到依赖AMD SEV-SNP保护的所有云端工作负载。目前,多家主流云服务商已提供基于AMD EPYC处理器的机密计算实例,例如Azure机密计算和Google Cloud机密虚拟机。如果这些实例运行易受攻击的固件版本,则租户的数据机密性将毫无保障。研究人员已在论文中详细描述了攻击路径,但尚未公开完整的利用代码。截至报道时,AMD尚未就Fabricked漏洞正式发布安全公告或补丁,云服务商和最终用户只能依靠持续监控和额外的加固措施来降低风险。
由于该漏洞属于设计层面的缺陷,简单地打补丁可能无法彻底修复;未来可能需要更新处理器微码或修改Infinity Fabric的初始化逻辑。考虑到SEV-SNP已被用于保护金融、医疗和政府等高敏感度数据,Fabricked的披露无疑对整个机密计算生态系统敲响了警钟。它表明,即便是经过严格验证的硬件安全方案,仍可能存在绕过底层互连架构的旁路。
此次研究也再次凸显了供应链信任的复杂性:云租户必须相信云提供商不仅不会恶意操作,而且其硬件设计也不存在能够被利用的瑕疵。Fabricked的出现,使得这一信任基础进一步受到挑战。
本文参考来源:Tom's Hardware


