加州大學聖地牙哥分校的研究人員提出了一種攻擊英特爾處理器微架構結構的新方法,該方法適用於基於 Raptor Lake 和 Alder Lake 微架構的 CPU。這次攻擊的代號為 Indirector,允許修改與攻擊者程式碼在同一 CPU 執行緒中執行的其他進程和其他權限等級(例如,核心或另一個虛擬機器)中的指令的推測執行。為了演示該方法的操作,已經準備了一個原型漏洞利用程序,該漏洞允許人們確定記憶體位址佈局以繞過 ASLR(位址空間佈局隨機化)保護機制。此外,為分析和逆向工程 CPU 微架構邏輯而開發的工具包已根據 MIT 授權發布。
提出了兩種組織攻擊的方法。第一種方法是基於扭曲 IBP(間接分支預測器)緩衝區的內容,該緩衝區用於在分支的位址或偏移量尚不清楚的情況下預測間接分支,並在分支指令之前的指令中計算。第二種方法涉及分支目標緩衝區(BTB),其中包含有關最近分支的資訊。


所發現的漏洞允許攻擊者確定包含第三方程序使用的轉換位址的 IBP 和 BTB 緩衝區中的記錄內容,以及將任意轉換位址替換到緩衝區資料表中。因此,攻擊者可以在推測執行指令期間將第三方進程的執行流重定向到所需的記憶體位址。一旦偵測到錯誤預測,推測執行結果就會被丟棄,但在推測執行指令期間從記憶體讀取的位址和資料會儲存在快取中,並且可以使用基於對快取和非快取資料的存取時間變化的分析來確定快取內容的方法之一來檢索。確定間接跳轉的確切位址可以在實際中用於例如繞過 ASLR 保護機制。
來源: opennet.ru
