站长之家 - 业界 2021-04-09 17:51

Linux 5.13考虑为每次系统调用引入随机化的内核堆栈偏移量

Phoronix 报道称,开发人员正准备为即将到来的 Linux5.13引入随机化的内核堆栈偏移量。若这项功能在本次内核开发周期中顺利完成交付,那未来针对 Linux 内核堆栈的攻击将变得更加困难。而其实早在2019年,英特尔工程师 Elena Reshetova 就已经提出了一项建议,以允许在每次系统调用时都随机分配内核堆栈的偏移量。

(来自:git.Kernel.org)

据悉,该代码最初受到了 PaX 的 RANDKSTACK 功能的启发,旨在增强内核安全性、以阻止依赖内核堆栈确定性的漏洞利用。

谷歌工程师 Kees Cook 最终接手了这项工作,并且经历了十轮的代码审查,该代码似乎已经部署到了 Linux5.13内核补丁中。

具体说来是,这项工作允许在每个系统调用时,随机选择内核堆栈的偏移量。比如在启用 randomize_kstack_offset= 命令选项时,便可为 ARM64和 x86_64CPU 指定 on / off 值。

得益于在每次系统调用时都分配了随机的内核堆栈偏移量,该功能可在启用后让基于堆栈的攻击执行变得更加困难。

不过在默认情况下,这项特性仍处于关闭的状态。因为即便在 x86_64平台上,该选项仍会造成约1% 的系统资源开销。

感兴趣的朋友,可留意周四入列 tip.git 的 x86/ entry 补丁分支。如果一切顺利,我们有望在本月晚些时候的 Linux5.13合并窗口之后,看到相关代码被正式纳入主线内核。

相关话题

推荐关键词

24小时热搜

查看更多内容

大家正在看

苹果为了AI,上了谷歌的船