愛伊米

Linux 將在 GCC 12 中為 x86 cpu 新增 SLS 緩解選項

出品|開源中國

作者|羅奇奇

11 月 17 日,Linux 將 x86/ x86_64 的 SLS 緩解選項

-mharden-SLS

合併到 GCC 12 Git 上,預計不久將推出核心補丁,將

-mharden-SLS

緩解選項作為對 x86 cpu 最新的安全保護。

Linux 將在 GCC 12 中為 x86 cpu 新增 SLS 緩解選項

Straight Line Speculation (SLS)直線預測漏洞是去年夏天 Arm 架構上出現的一個漏洞 (CVE-2020-13844),該漏洞可導致攻擊者對 ARM 架構處理器進行側邊通道攻擊(SCA)。但 Arm 很快在 GCC 和 LLVM 編譯器中推出了針對 SLS 的緩解補丁:可啟用 ARM SLS 緩解的 “-mharden-sls=” 編譯器選項,透過在易受 SLS 影響的指令周圍插入投機障礙(SB)指令或其他 DSB+ISB 指令來減少直線預測。

而此次關於 x86 SLS 緩解的 GCC 12 合併,正是為 x86/x86_64 架構的 cpu 引入了這個

-mharden-SLS

編譯器選項,這個選項包括 none、all、return 或 indirect-branch 四個值, x86/x86_64 架構上的原理是透過在函式返回和間接分支之後新增 INT3 指令(INT3 是 x86 特有的斷點指令),來減少函式返回和間接分支的直線推測(SLS)。

據外媒 phoronix 預測,如果流程順利,帶有新“-mharden-sls=”選項的 GCC 12。1 編譯器穩定版本應該會在明年 4 月左右推出。