英特爾 Tiger Lake CPU「將」內建 CET 安全技術,白帽專家已研發出規避方法

作者 | 發布日期 2020 年 06 月 17 日 8:00 | 分類 網路 , 處理器 , 資訊安全 Telegram share ! follow us in feedly


駭客入侵史很大程度是反覆來回的攻防遊戲,攻擊者設計某種入侵系統的手法,防御者接著建構防止的反制之舉,然後駭客再設計出可規避系統安全機制的新手法。15 日,英特爾(Intel)宣布計劃在 CPU 直接植入全新安全防護機制,防止任何會在有弱點電腦執行惡意程式碼的攻擊。 

控制流強制技術(Control-Flow Enforcement Technology,CET)代表處理器執行來自 Web 瀏覽器、電子郵件用戶端或 PDF 閱讀器等應用程序指令方式的根本性改變。由英特爾和微軟共同開發的 CET 技術,旨在阻止稱為「返回導向程式設計」(Return-Oriented Programming,ROP)的攻擊技術,這種技術被駭客專門用來規避軟體開發人員早在 10 多年前就導入的反漏洞入侵機制。雖然英特爾 2016 年首次發表 CET 實作,但 15 日表示,旗下 Tiger Lake CPU 微架構將率先內建 CET 防護功能。

ROP 可說是軟體漏洞入侵者對諸如可執行空間保護(Executable Space Protection,ESP)和位址空間配置隨機載入(Address Space Layout Randomization,ASLR)之類防護機制的反制之舉,這些防護機制不到 20 年前就內建於 Windows、macOS 和 Linux 等作業系統。透過系統記憶體改變杜絕惡意程式碼執行,使防禦措施大幅降低軟體漏洞入侵可能造成的破壞性。即使成功引發緩衝區溢位或鎖定其他漏洞,漏洞入侵攻擊也只會導致某系統或應用程式停擺,不會對關鍵系統造成危害。

ROP 能讓攻擊者重新獲得制高點。與使用攻擊者編寫的惡意程式碼不同,ROP 攻擊能將早已配置到記憶體堆疊的良性應用程式與作業系統常式的功能重新定義。ROP 的「返回」(Return)指的就是 RET 轉移指令(為重新排序程式碼流的核心)使用。

CET 視為目前偵測並阻止 ROP 攻擊的最有效防禦技術

安全公司 CrowdStrike Windows 資深安全專家暨工程副總裁 Alex Ionescu 指出,如果良性程式就好比由樂高積木按特定順序建造的建物,那麼 ROP 也會使用相同的樂高積木,只不過會以不同順序建構。如此一來,ROP 會將原本的建物改成太空船。因此技術使用被允許執行的記憶體常駐程式碼,所以能規避反惡意軟體的防禦機制。

CET 防護技術會在 CPU 做一些變更,進而建立一個新堆疊(稱為控制堆疊)。攻擊者無法修改此堆疊,也不能從中儲存任何資料,只會儲存早在堆疊裡的樂高積木返回位址。因此,即使攻擊者破壞資料堆疊的返回位址,控制堆疊也會保留正確的返回位址。處理器會進行 ROP 偵測並停止相關程式碼執行。

「雖然目前沒有有效抵禦 ROP 攻擊的緩解軟體,但 CET 卻是目前偵測和阻止此類漏洞的極有效防禦技術,」Ionescu 表示:「以前,作業系統和安全解決方案必須猜測或推斷已發生 ROP 攻擊,或者執行鑑識分析,或偵測該漏洞攻擊的第二階封包負載/效應。」

CET 並非僅限於 ROP 防禦而已。CET 提供了許多額外的防護,包括可阻止像是跳轉導向程式設計(Jump Oriented Programming,JOP)及呼叫導向程式設計(Call Oriented Programming,COP)等漏洞入侵手法的防護機制。不論如何,ROP 已成為 CET 最關注的目標之一。

英特爾 CPU 早已內建 SGX 與 CSME 等安全功能,但成效不佳且漏洞百出

英特爾早在 CPU 內建其他安全功能,但成效不佳,其中一個安全功能就是英特爾的軟體防護擴展(Software Guard eXtension,SGX),特別在受保護的記憶體切出一塊專供安全機敏性功能(如建立加密金鑰)使用的安全區塊。 英特爾還有另一個安全外掛功能叫聚合式安全與管理引擎(Converged Security and Management Engine,CSME),是 CPU 和晶片組內部子系統,能執行一系列機敏性功能,包括用於矽晶型加密(Silicon-based Encryption)的可信賴平台模式(Trusted Platform Module,TPM)、統一可延伸韌體介面(UEFI)BIOS 韌體身分認證,以及 Microsoft System Guard 和 BitLocker。

但上述兩個 CPU 常駐型安全機制不斷發現安全漏洞,導致多年來飽受各種惡意攻擊威脅,且上週才揭露最新的 SGX 漏洞。不過,一些安全專家對全新 CET 防護技術抱持正面期待。

隨著支援 CET 技術 CPU 正式推出,提供的保護功能只會在處理器運行支援 CET 功能的作業系統時才會起作用。所幸,上個月發表的 Windows 10 2004 版提供支援。但英特爾仍然沒有透露 Tiger Lake CPU 的確切發布日期。 雖然 CET 技術不失為今後防御者的重要新工具,但 Ionescu 和研究員同事 Yarden Shafir 已設計出規避 CET 的方法。

(首圖來源:英特爾