本站1月14日消息,据报道,Linux内核6.13遭遇了一次严重的危机差点翻车,起因是微软贡献的代码出现了问题,所幸Intel和AMD的及时介入解决了问题。
微软提交的代码主要与ARCH_HAS_EXECMEM_ROX内核配置相关,该配置用于改善x86_64/AMD64架构的性能,允许使用只读执行(ROX)权限缓存可执行内存(EXECMEM)。
不过这段代码未经x86内核维护者的确认(Ack)就被推送,导致了控制流完整性(CFI)的破坏。
控制流执行技术(CET)是一项关键的安全功能,它通过影子堆栈和间接分支目标(IBT)来防范返回导向编程(ROP)攻击和调用/跳转导向编程(COP/JOP)攻击。
影子堆栈通过与硬件存储的副本进行比较,确保返回地址的完整性,从而防止恶意软件劫持合法软件的进程步骤。
英特尔的Peter Zijlstra提交了紧急修复补丁,以恢复与EXECMEM_ROX支持相关的更改。
他指出,微软的代码导致alternative.c文件出现了巨大混乱,并且存在错误,部分CFI变体甚至会导致系统崩溃。
AMD的Borislav Petkov也对这一事件表示不满,批评该代码未经任何x86维护者确认就被合并,导致了一系列问题。
免责声明:本文为转载,非本网原创内容,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如有疑问请发送邮件至:goldenhorseconnect@gmail.com