一段时间以来,英特尔一直在发布用于实现控制流强制 (CET) 技术的 Linux 内核补丁,包括间接分支跟踪和影子堆栈功能。然而,正如本周早些时候所写的,英特尔专注于对用户空间的影子堆栈支持。英特尔上周发布的用于支持用户空间的 Linux Shadow Stack 补丁仅限于他们自己的处理器,但幸运的是,它似乎也适用于 AMD CPU。
影子堆栈功能是关于防御面向返回的编程 (ROP) 攻击。Shadow Stack 保留每个 CALL 的副本,并且在返回 (RET) 时将检查存储在正常堆栈中的返回地址,以验证它与 Shadow Stack 的内容匹配,否则将产生错误。
作为 CET 的一部分,Shadow Stack 上的英特尔图形。
鉴于上周发布的 35 个补丁,代码仅限于在英特尔 CPU 上启用,因为这是英特尔工程师显然一直在测试的。但是 AMD Zen 3 处理器也支持 Shadow Stack 功能,正如英特尔补丁所承认的那样,只是无法在那里测试这些补丁。
既然有 AMD 测试,这个补丁有望被放弃。
幸运的是,一位 AMD Linux 工程师一直在测试 CET Shadow Stack 补丁并评论说这些补丁似乎在 AMD 处理器上运行良好 – 包括在测试 GNU C 库的补丁 CET 版本和通过各种参考测试时。
因此,假设未来没有问题出现,CET Shadow Stack 支持一旦最终纳入 Linux 内核主线,作为安全改进,应该适用于 Intel 和 AMD CPU。
原创文章,作者:校长,如若转载,请注明出处:https://www.yundongfang.com/Yun124814.html