IntelベースのMacのUEFIファームウェアのセキュリティ
Apple T2セキュリティチップおよびIntelプロセッサ搭載Macは、UEFI(Intel)ファームウェアを使用したセキュリティを備えています。
概要
2006年以降、IntelベースのCPUを搭載したMacコンピュータでは、Extensible Firmware Interface(EFI)開発キット(EDK)バージョン1またはバージョン2に基づくIntel ファームウェアが使用されています。EDK2ベースのコードはUnified Extensible Firmware Interface(UEFI)仕様に準拠しています。このセクションでは、このIntelファームウェアをUEFIファームウェアと呼びます。UEFIファームウェアはIntelチップ上で最初に実行されるコードでした。
Apple T2セキュリティチップを搭載していないIntelプロセッサ搭載Macでは、UEFIファームウェアの信頼の起点はそのファームウェアが格納されているチップになります。UEFIファームウェアのアップデートはAppleによってデジタル署名され、ストレージのアップデート前にファームウェアによって検証されます。ロールバック攻撃を防ぐため、アップデートは常に既存のものよりも新しいバージョンである必要があります。ただし、Macに物理的にアクセスできる攻撃者であれば、ハードウェアを使用してファームウェアのストレージチップに接続し、チップをアップデートして悪意あるコンテンツを含めることができる可能性があります。同様に、UEFIファームウェアのブートプロセスの初期(ストレージチップへの書き込み制限より前)に脆弱性が見つかった場合、これもUEFIファームウェアの持続的な感染の原因となる可能性があります。これはIntelプロセッサ搭載ほとんどのPCに共通するハードウェアアーキテクチャの欠点であり、T2チップを搭載していないすべてのIntelプロセッサ搭載Macコンピュータにもこの欠点が存在します。
UEFIファームウェアを破壊する物理的な攻撃を防ぐために、MacコンピュータはT2チップのUEFIファームウェアへの信頼を起点とするように再設計されました。Intelプロセッサ搭載Macのブートプロセスで説明されているように、これらのMacコンピュータでは、UEFIファームウェアの信頼の起点が明確にT2ファームウェアになります。
Intel Management Engine(ME)のサブコンポーネント
UEFIファームウェア内に格納されているサブコンポーネントの1つに、Intel Management Engine(ME)ファームウェアがあります。ME(Intelチップ内の個別のプロセッサおよびサブシステム)は、主にIntelベースのグラフィックスのみが搭載されているMacでのオーディオおよびビデオの著作権保護に使用されます。このサブコンポーネントの攻撃対象領域を縮小するため、Intelプロセッサ搭載Macでは、ほとんどのコンポーネントが削除されたカスタムMEファームウェアが実行されます。結果として得られるMac MEファームウェアは、Intelが提供するデフォルトの最小ビルドよりも小さいため、過去にセキュリティ研究者による公開攻撃の対象となっていた多くのコンポーネントは存在しなくなりました。
システム管理モード(SMM)
Intelプロセッサには、通常の動作とは異なる特殊な実行モードがあります。これはシステム管理モード(SMM)と呼ばれ、当初は電源管理などの時間が重視される動作を処理するために導入されました。ただし、従来Macコンピュータではそのようなアクションに、システム管理コントローラ(SMC)というディスクリートマイクロコントローラが使用されてきました。現在はSMCが別個のマイクロコントローラではなくなり、T2チップに内蔵されています。