概要
セキュリティ研究者らは、署名付きUEFIシェルに存在する重大な脆弱性を発見しました。これにより、攻撃者は約20万台のFramework製ノートPCおよびデスクトップPCでセキュアブート保護を完全にバイパスできる可能性があります。これらの欠陥は、ファームウェアセキュリティの根本的な弱点を露呈しており、システムで最も特権の高いレベルでの永続的かつ検出不可能なマルウェア感染を可能にする恐れがあります。
この脆弱性は、信頼されたMicrosoft証明書で署名された正規の診断ツールに起因しています。これらのUEFIシェルはシステム管理者やファームウェア開発者にとって正当な目的で使用されますが、中核的なセキュリティ保護を無効にできる危険な機能を含んでいます。悪意のあるアクターによって仕掛けられた従来のバックドアとは異なり、これらは攻撃者がブートセキュリティチェーン全体を転覆させるために悪用できる正規のコンポーネントです。
脆弱性の詳細
具体的には、以下の脆弱性が指摘されています。
- 署名付きサードパーティUEFIブートローダーがセキュアブートバイパスの対象となる。
- UbuntuのEDK2で安全でないUEFIシェルが有効になっている。
- システムリカバリツール内の脆弱なブートローダーが悪用される。
これらはいずれも、セキュアブートの保護を無効にする可能性があります。
この脆弱性の核心は、多くのUEFIシェルに存在するmmコマンドにあります。このコマンドはシステムメモリへの直接的な読み書きアクセスを提供し、攻撃者がオペレーティングシステムがロードされる前に重要なセキュリティ構造を改変することを可能にします。研究者らは、Security Architectural Protocolを標的にすることで、ブート時のデジタル署名を検証するメモリ位置を上書きできることを実証しました。これにより、システムが保護がアクティブであると報告し続けているにもかかわらず、セキュアブートを事実上無効化できます。
攻撃の手順
攻撃はいくつかの段階で実行されます。まず、攻撃者はSecurity Architectural Protocolを指すグローバル変数を特定します。UEFIシェルコマンドを使用して、この変数が存在するメモリアドレスを特定し、mmコマンドでセキュリティハンドラポインタを上書きします。これにより、以降のすべてのモジュールロードに対する署名検証が無効になります。保護が無効化された状態で、攻撃者はブートキットやルートキットを含む任意のコードをロードできるようになります。
影響と現状
最も懸念される点は、これらのコマンドを起動時に自動実行するスタートアップスクリプトを介した永続性です。Eclypsiumの研究者らは、Framework製ノートPCがファームウェアアップデートのためにLinuxユーザーに配布した署名付きUEFIシェルに、危険なmmコマンド機能が含まれており、システムによって信頼された証明書で署名されていたことを発見しました。Framework社は、約20万台のデバイスに影響があることを認め、製品ライン全体で修正を実装しています。異なるモデルは様々な段階で修正が進められており、一部ではすでに制限されたシェルバージョンと、脆弱なコンポーネントをブラックリストに登録するためのDBXデータベースアップデートが提供されています。
これらの手法は理論上の脅威ではありません。ゲーム業界の商用チートプロバイダーは、Microsoft署名付きコンポーネントを悪用し、月額最大40ユーロでUEFIレベルのアンチチートバイパスを公然と販売しています。さらに深刻なことに、HybridPetyaランサムウェアは、犯罪グループが同様の脆弱性を使用してオペレーティングシステム起動前の感染方法を採用していることを示しました。セキュリティ専門家は、国家支援型アクターや高度な持続的脅威グループが、スパイ活動や妨害工作のためにこれらの技術を兵器化する可能性があると警告しています。
防御策
この発見は、セキュアブートプロセスが有効に見えるシステムでも、実際にはファームウェアレベルの攻撃に対して脆弱である可能性があることを明らかにしています。防御策としては、脆弱なブートローダーをブラックリストに登録するDBXアップデートによるUEFI失効リストの更新、BIOSパスワード保護の実装、カスタムセキュアブートキー管理の展開、および脆弱なコンポーネントを特定するためのファームウェア分析ツールの使用が挙げられます。このレベルで活動する攻撃者は、オペレーティングシステムやアプリケーションに組み込まれたほぼすべてのセキュリティ制御をバイパスできるため、組織はファームウェアセキュリティを後回しにすべきではないと認識する必要があります。
元記事: https://gbhackers.com/uefi-shell-flaws-disable-secure-boot-on-over-200000-laptops/