
以 Intel 為基礎的 Mac 之 UEFI 韌體保安
以 Intel 為基礎並配備 Apple T2 安全晶片的 Mac 使用 UEFI(Intel)韌體來提供保安。
概覽
自 2006 年以來,配備以 Intel 為基礎的 CPU 的 Mac 電腦會使用基於可延伸韌體介面(EFI)開發者套件(EDK)版本 1 或版本 2 的 Intel 韌體。EDK2 架構的代碼符合統一可延伸韌體介面(UEFI)的規範。本節以 UEFI 韌體來稱呼 Intel 韌體。UEFI 韌體是在 Intel 晶片上執行的首個代碼。
如 Mac 未配備 Apple T2 安全晶片並以 Intel 為基礎,UEFI 韌體的信任根則為儲存着韌體的晶片。UEFI 韌體更新是由 Apple 電子簽署,且須由韌體進行驗證後才會更新儲存體。為協助防止回捲攻擊,更新必須一律為比現有版本更新的版本。但是,攻擊者如能實體取用 Mac,便可能以硬體連接韌體儲存晶片並更新該晶片來包含惡意內容。同樣地,如果在 UEFI 韌體的早期開機過程中發現漏洞(在對儲存晶片進行寫入限制之前),這也可能導致 UEFI 韌體持續感染。這個硬件架構限制在大部份以 Intel 為基礎的 PC 上很常見,且所有未配備 T2 晶片並以 Intel 為基礎的 Mac 電腦上均存在此限制。
為了防止破壞 UEFI 韌體的實體攻擊,我們重新設計了 Mac 電腦的架構,以便將信任根放入 T2 晶片中 UEFI 韌體內。在這些 Mac 電腦上,UEFI 韌體的信任根具體來説為 T2 韌體;詳情請參閲:以 Intel 為基礎的 Mac 之開機程序。
Intel 管理引擎(ME)子元件
Intel 管理引擎(ME)韌體是儲存在 UEFI 韌體中的子元件。ME 是 Intel 晶片內的獨立處理器和子系統,主要用於只採用 Intel 繪圖晶片的 Mac,以保護音訊和影片的版權。為了縮小此子元件的攻擊面,以 Intel 為基礎的 Mac 會執行自訂的 ME 韌體,其中大部份元件都已移除。因為產生的 Mac ME 韌體小於 Intel 提供的預設精簡版組建,過去曾遭受安全研究人員公開攻擊的許多元件已不存在。
系統管理模式(SMM)
Intel 處理器具有與一般作業不同的特殊執行模式。其被稱為「系統管理模式」(SMM),原本引入來處理時間敏感的操作,例如電源管理。但是,為了執行此類操作,Mac 電腦歷史上一直使用稱為「系統管理控制器」(SMC)的特定微控制器。SMC 不再是獨立的微控制器,而是已整合到 T2 晶片內。