Linux修复了AMD Zen 3 / Zen 4的拙劣SRSO缓解
去年8月披露的AMD Inception漏洞也被称为SRSO (Speculative Return Stack Overflow)。AMD SRSO缓解的内核端补丁被迅速合并。接下来是对SRSO缓解代码的更多清理和修复。自从上周五合并修复了一些无效的缓解代码以来,已经安静了几个月。
由于11月是AMD最后一次看到SRSO /盗梦空间的清理,而周五的消息令人惊讶,AMD的新代码修复了Zen 3和Zen 4处理器的SRSO缓解。AMD Linux工程师Borislav Petkov在提交中解释道:
x86/bug:修复了Zen3/4上的SRSO缓解
缓解的原始版本将直接修补对非训练例程的调用。也就是说,UNTRAIN_RET中的alternative()将直接在CALL中修补到srso_alias_untrain_ret()。
然而,即使commit e7c25c441e9e(“x86/cpu: Cleanup the untrain mess”)在试图清理这种情况时意味着很好,由于微体系结构的原因,untraining例程srso_alias_untrain_ret()必须是CALL指令的目标,而不是像现在这样是JMP指令的目标。
重新排列可选宏以完成此任务。
这修复了自8月中旬以来一直处于主流的SRSO缓解代码。
The patch fixing up the mitigation was merged on Friday ahead of the Linux 6.9-rc2 release on Sunday. The patch is also marked for back-porting to the existing Linux kernel stable series and thus should work its way out to new stable point releases in the days ahead.