五月伊始,全球信息產業就接連響起一級警報,5月4日,戴爾公司披露其上億臺電腦的固件升級驅動中存在一個長達12年的漏洞(已修復)。5月6日,英特爾、AMD等處理器巨頭的處理器芯片再次發現新的高危漏洞。
2018年,現代處理器中普遍存在的的熔斷漏洞(Meltdown)和幽靈漏洞(Spectre)被披露時,發現該類漏洞的研究人員說:“由于難以修復,幽靈漏洞將困擾我們相當長的時間。”
確實,已經過去了三年多,幽靈漏洞依然陰魂不散。
近日,弗吉尼亞大學和加利福尼亞大學圣地亞哥分校的一組研究人員發現了一條新的攻擊路線,繞過了芯片中內置的所有當前Spectre保護,可能導致幾乎所有臺式機、筆記本電腦、云服務器和智能手機再次像三年前一樣處于危險之中。
熔斷和幽靈漏洞的公開就像打開類潘多拉盒子。在隨后的幾年中,隨著無休止的攻擊變體暴露出來,即使英特爾、ARM和AMD等芯片巨頭一直在爭先恐后地采用防御措施來減輕導致利用該漏洞的惡意攻擊,避免攻擊者從計算機的內存中讀取密碼、加密密鑰和其他有價值的信息的代碼。
幽靈漏洞的核心是定時邊信道攻擊,它打破了不同應用程序之間的隔離,并利用了CPU硬件實現中一種稱為推測執行的優化方法,誘使程序訪問內存中的任意位置,從而泄漏其秘密。
研究人員說:“幽靈攻擊會誘使處理器沿著錯誤的路徑執行指令。”“即使處理器恢復并正確完成了任務,黑客也可以在處理器走錯路的同時訪問機密數據。”
弗吉尼亞大學研究團隊開發的新攻擊方法利用了所謂的微操作(又稱微操作或微操作)緩存,它是一種片上組件,可將機器指令分解為更簡單的命令并加快計算速度,是泄露機密信息的輔助渠道。自2011年以來,微操作緩存已內置到基于Intel的計算機中。
弗吉尼亞大學助理教授Ashish Venkat表示:“英特爾針對Spectre的建議防御措施稱為LFENCE,它將敏感代碼放置在等待區域中,直到執行安全檢查為止,然后才允許執行敏感代碼。”該研究的合著者說。“但是事實證明,這個等待區域的墻壁上有耳朵,我們的攻擊會利用這些耳朵。我們展示了攻擊者如何通過將其用作隱蔽通道來通過微操作緩存來偷運秘密。”
研究人員詳細介紹,在AMD Zen Zen微體系結構上,可以利用micro-ops公開原語來實現具有250 Kbps帶寬,錯誤率5.59%或168.58 Kbps且具有糾錯功能的隱蔽數據傳輸通道。
英特爾在其針對加密實現的定時攻擊的指南中建議遵循恒定時間編程原則,這種做法說起來容易做起來難,而僅憑軟件更改就不能充分緩解投機執行所帶來的威脅。
這里的一線希望是,很難利用Spectre漏洞。為了保護免受新攻擊的侵害,研究人員提出刷新微操作緩存,該技術可抵消通過首先使用緩存獲得的性能優勢,利用性能計數器來檢測微操作緩存中的異常并對操作區進行分區。cache基于分配給代碼的特權級別,并防止未經授權的代碼獲得更高的特權。
研究人員說:“將微操作緩存作為輔助通道存在風險。”“首先,它繞過了所有緩存安全技術,其次,任何現有的攻擊或惡意軟件配置文件都無法檢測到這些攻擊。第三,因為微操作緩存位于管道的前端,因此在執行之前,通過限制推測性緩存更新來減輕Spectre和其他瞬時執行攻擊的防御仍然容易受到微操作緩存攻擊。”