(图片来源: AMD)
上月,Google安全团队在AMD的Zen 1至Zen 4系列CPU中发现了一个名为“EntrySign”的安全漏洞。此漏洞使拥有ring 0访问权限的恶意用户能够加载未经签名的微代码补丁。最新AMD安全公告更新显示,Zen 5系列也已被列入受影响的基础设施名单,涵盖其全部服务器及主流产品线。
EntrySign漏洞利用了AMD微代码补丁加载器中的签名验证缺陷,允许第三方在处理器上执行任意微代码。
EntrySign(ID: AMD-SB-7033)针对的是CPU的微代码,这些低级别指令在机器代码(二进制)与物理硬件之间起到了桥梁作用。CPU出厂时预装的基础微代码嵌入在只读存储器(ROM)中,且不可更改。若CPU上市后被发现存在漏洞,制造商如Intel和AMD可通过推送新微代码作为修复措施(例如,针对Raptor Lake不稳定性的情况)。
尽管CPU内置的微代码不可更改,但现代操作系统或系统固件(BIOS/UEFI)能在启动初期加载微代码更新。然而,此补丁仅在当前会话期间有效。
EntrySign暴露了AMD哈希算法的一个弱点,能够绕过签名验证过程并执行可能不安全的微代码。此漏洞在服务器环境中尤为严重,能破坏AMD的SEV/SEV-SNP技术(ID: AMD-SB-3019),导致未经授权的虚拟机数据访问。
要利用此漏洞,主要条件是需在目标系统上拥有ring 0或内核级权限。此外,这些补丁在系统重启后将失效,从而降低了安全警报的紧急程度。相反,这为创造性/学术研究提供了新途径,例如2025年RVSPOC(RISC-V软件移植和优化锦标赛)中的一项挑战,要求参赛者利用此漏洞加载自定义微代码,在基于Zen的硬件上运行RISC-V二进制文件。
所有Zen 5 CPU,包括Ryzen 9000(Granite Ridge)、EPYC 9005(Turin)、Ryzen AI 300(Strix Halo、Strix Point、Krackan Point)及Ryzen 9000HX(Fire Range)处理器,均易受此漏洞影响。AMD已为主板制造商部署了ComboAM5PI 1.2.0.3c AGESA固件作为修复措施,请密切关注供应商网站以获取即将发布的BIOS更新。针对EPYC Turin的SEV漏洞缓解措施尚未发布,但预计将于本月晚些时候推出。