Intel 的 LASS 功能今天已排队进入 tip/tip.git 的”x86/cpu”Git 分支。随着 LASS 现在进入 TIP 分支,看起来它将被提交到即将到来的 Linux 6.19 合并窗口,除非 Linus Torvalds 在最后一刻出现任何问题或反对意见。
LASS 是 Linear Address Space Separation 的缩写,是一种安全功能,是 Intel 软件工程师在过去近三年中为 Linux 内核开发的功能。早在 2023 年 1 月,在首次撰写关于 Intel 为 Linux 内核提出 LASS 补丁时。自那时起,它经历了多轮修订和代码审查,以及在此期间处理各种 Intel 工程师的离职。

线性地址空间分离在 Linux 内核补丁中描述为:
“线性地址空间分离(LASS)是一种安全功能,可缓解依赖于跨用户/内核边界推测性访问的一类侧信道攻击。
基于特权模式的访问保护在分页和 SMEP、SMAP 等特性中已经存在。然而,为了强制执行这些保护,处理器必须在内存中遍历分页结构。攻击者可以利用由此遍历产生的时序信息来确定分页结构的详细信息,以及确定内核内存的布局。”
LASS 提供与分页相同的基于模式的保护,但无需遍历分页结构。由于保护是在页面遍历之前强制执行的,攻击者将无法从各种缓存结构(如 TLB、中级缓存、页面遍历器、数据缓存等)中推导出基于分页的时序信息。
…
LASS 缓解了一类侧信道推测性攻击,例如论文《Leaky Address Masking: Exploiting Unmasked Spectre Gadgets with Noncanonical Address Translation》中描述的 Spectre LAM。在 /proc/cpuinfo 中添加 “lass” 标志,以指示该功能由硬件支持并由内核启用。这允许用户空间确定系统是否能够防御此类攻击。
我还没有看到关于当前或未来的英特尔 CPU 代支持 LASS 的任何文档。带有该功能位的所有 CPU 将默认启用 LASS。

假设没有最后时刻的意外阻碍,可以期待英特尔 LASS 安全功能成为即将到来的 Linux 6.19 内核的一部分,通过 x86/cpu 分支。
转自 Intel LASS Feature Looks Like It Will Be Upstreamed For Linux 6.19 – Phoronix
Linuxeden开源社区