近期发布的一则Linux内核补丁,披露了AMD Zen 6处理器的一项全新安全改进。
在曾影响Zen 1至Zen 4全世代AMD处理器的「推测返回栈溢出(SRSO)」漏洞之后,业界迎来了这项新的安全防御机制。Zen 6首次引入分支目标缓冲区(BTB)防护能力,实现不同上下文之间的完全隔离,也就是AMD Zen 6 BTB上下文隔离技术。

AMD平台的Linux核心维护工程师Borislav Petkov在补丁说明中解释,Zen 6新增的BTB防护可以将用户态/内核态、虚拟机客户机/宿主机这两类不同执行上下文的分支预测数据完全隔离:
“Zen 6具备BTB防护能力,可实现不同上下文(用户/内核、客户机/宿主机)之间的完全隔离。这使得原有SafeRET缓解机制在该平台上不再必要,仅剩余用户态之间、虚拟机客户机之间的攻击向量需要防护,这部分风险可直接通过Spectre v2缓解配置,在上下文切换时执行IBPB(间接分支预测屏障)完成封堵。内核需要检测该硬件特性的启用状态,并通过新增的专属缓解标识字符串对外上报状态。”
该补丁目前已排入tip/tip.git仓库的x86/bugs分支队列。按照常规开发节奏,它将在Linux 7.4内核合并窗口正式提交主线,除非后续被判定为紧急修复补丁,才会作为当前Linux 7.3版本的”修复项”提前合入。除了这则内核补丁之外,目前暂未公开更多关于BTB上下文隔离技术、以及AMD Zen 6处理器其他安全变更的详细信息。

转自 Linux Preps For New AMD Zen 6 BTB CTX Isolation Security Feature – Phoronix
Linuxeden开源社区