來自兩所美國大學的信息安全研究人員發現,利用Intel Haswell CPU架構中BTB組件的漏洞可以快速繞過ASLR保護。ASLR是大多操作系統(Windows、Linux、macOS、iOS和Andriod)長期使用的系統防御機制,研究人員已經在Intel Haswell CPU的Linux設備上利用漏洞做了測試。
研究人員為加利福利亞大學河濱分校計算機科學與工程教授Nael Abu-Ghazaleh,紐約州立大學賓漢姆頓分校的Dmitry Evtyushkin和Dmitry Ponomarev,研究論文已經公開發布。
研究人員在研究報告中解釋道,“攻擊所花時間非常短,只需60毫秒就足夠收集必需的樣本數。”
ASLR保護(地址空間配置隨機化)可以讓系統免受普通攻擊,例如緩沖區溢出、返回導向編程技術(Return-oriented programming,ROP)攻擊等。ASLR通過隨機安排計算機內存進程關鍵數據區的地址空間位置進行保護,使得“劫持式攻擊”無法進行。
但在本周發布的研究報告中,專家稱,他們發現Intel芯片的BTB組件中存在漏洞:CPU使用BTB加速操作,運作方式就如同瀏覽器緩存加速常訪問的網頁。研究人員表示,BTB易遭受碰撞攻擊(用隨機數據轟炸BTB,直到它們發現相同的數據已經儲存在緩沖區)。研究人員利用特殊的軟件程序,繞過了ASLR可實現系統級攻擊。該技術允許研究人員從包含ASLR索引表的CPU內核恢復數據,允許攻擊者了解具體應用代碼執行位置,以便利用漏洞并進行不斷調整式破解。從理論上講,同樣的攻擊應該應該對其它OS,甚至KVM(內核虛擬機)有效。
研究人員稱可行的解決方案是鼓勵操作系統廠商在代碼功能層面實現ASLR保護修復漏洞。