近年、Intel MEセキュリティについて学んだこと:神秘的なサブシステムに関する7つの事実





画像: アンスプラッシュ



過去数年間、Intel MEテクノロジーは研究者の監視下にありました。 このテクノロジーは謎のオーラに囲まれています-コンピューター上のほとんどすべてのデータにアクセスでき、その妥協によりマシンを完全に制御できるという事実にもかかわらず、メーカーからそれを操作するための公式文書とマニュアルは存在しません。 したがって、世界中の研究者はサブシステムの作業を独立して理解する必要があります。



過去数年間、Intel MEを研究してきましたが、この時点でこの不思議なサブシステムについて知ることができました。



MEの脆弱性により、シャットダウンされたコンピューターでもクラックされる可能性がある



2017年末のBlack Hat Europeカンファレンスで、Positive Technologiesの研究者であるMark ErmolovとMaxim Goryachyは、攻撃者がデバイス上のほとんどのデータとプロセスにアクセスできるIntel Management Engine 11の脆弱性について話しました。 ハブのブログで公開した問題の詳細な説明



Intel MEの脆弱性により、任意のコードが実行される可能性がありました。 これにより、Intel Protected Audio Video Path(PAVP)、Intel Platform Trust Technology(PTTまたはfTPM)、Intel BootGuard、Intel Software Guard Extention(SGX)などのすべてのテクノロジーが危険にさらされます。



JTAGデバッグエンジンを使用して、MEのデータをインターセプトできます。



bupモジュールのエラーを悪用することで、研究者はPCH red unlockと呼ばれるメカニズムを有効にすることができました。 これらのデバイスの1つはMEコア自体です。 これにより、MEで実行されているコードのデバッグ、すべてのプロセスとカーネルのメモリの読み取り、PCH内のすべてのデバイスの管理が可能になりました。 計算によると、最新のコンピューターでは合計で約50の内部デバイスがあり、MEのみがそれらにフルアクセスでき、メインプロセッサはごく限られたサブセットしか持っていません。



また、このアクセスレベルは、この脆弱性を悪用し、従来のソフトウェアベースの保護を回避する攻撃者が、コンピューターの電源が切れている場合でも攻撃を実行できることを意味します。



JTAGはMEのモバイルバージョンでアクティブ化できます



Intel TXEはMEのモバイルバージョンです。 脆弱性INTEL-SA-00086では、カーネルサブシステムのJTAGをアクティブにすることができます。 Positive Technologiesの研究者は、Gigabyte Brix GP-BPCE-3350Cプラットフォーム用のJTAG PoCを開発しました。 このユーティリティを使用して、Intel TXEのJTAGをアクティブ化できます。



非文書化モードを使用してサブシステムを無効にできます



Intel Management Engine(ME)11バージョンの内部アーキテクチャの研究で、Maxim GoryachyとMark Ermolovは、機器の初期化とメインプロセッサの起動後にこの技術を無効にするメカニズムを検出することできました 。 彼らは、最新のコンピューターでMEを完全に無効にすることは不可能ですが、サブシステムにはHigh Assurance Platform(HAP)と呼ばれる文書化されていないモードがあることを発見しました。 研究者は、特別なHAPビットを見つけることができました。このビットをインストールすると、ロードの初期段階でIntel MEがシャットダウンモードになります。



High Assurance Platformという名前は、米国国家安全保障局(NSA)に関連する信頼プラットフォームプログラムです。 プログラムの説明を含むプレゼンテーションはオンラインで入手できます。 おそらく、このメカニズムは、サイドチャネルを介したデータ漏洩の可能性を低減しようとする米国政府サービスの要求に応じて導入されました。



MEのセキュリティ欠陥により侵害されたMacBook



今年の6月に、AppleはコードCVE-2018-4251でMEの脆弱性をカバーするアップデートリリースしました。 今回、エラーはIntel ME製造モードコンポーネントに含まれていました。これは、実稼働段階で最終プラットフォームを構成、構成、およびテストするように設計されたサービスモードです。 このモードでは、追記型メモリ(FUSES)に格納されている重要なプラットフォームパラメータを設定できます。 機器を販売してユーザーに出荷する前に、電源を切る必要があります。



この体制もその潜在的なリスクも、Intelの公開文書には記載されていません。 インテルMEシステムツールパッケージから管理するユーティリティは公式には利用できないため、普通のユーザーは自分で無効にすることはできません。



この脆弱性により、管理者権限を持つ攻撃者はファームウェアの重要な部分への不正アクセスを取得し、そこに脆弱なバージョンのIntel MEを書き込み、その操作を通じてデバイスを密かに修正できます。 将来、彼はコンピュータを完全に制御し、わずかな確率で検出されることなく、スパイ活動を実行できるようになります。



脆弱なIntelチップセットは、自宅や職場のラップトップからエンタープライズサーバーに至るまで世界中で使用されています。 以前にIntelがリリースしたアップデートでは、CVE-2017-5705、CVE-2017-5706、CVE-2017-5707の脆弱性を悪用する可能性を排除していません。彼女の中で。



IntelはMEで同じエラーに2回パッチを当てます



7月上旬、Intel 2つのセキュリティアドバイザリ( SA-00112およびSA-00118 )をリリースしました 。これは、Intel Management Engineファームウェアの修正を説明しています。 両方のセキュリティ情報には、攻撃者が内部PCHプロセッサ(ミニッツIA)で任意のコードを実行できるバグが記載されています。



これらのエラーは、Positive Technologiesのセキュリティ専門家が2017年11月に発見したエラー( SA-00086 )と類似しています。 しかし、話はそこで終わりませんでした。その後、IntelはMEで新しい脆弱性の修正をリリースしました。



SA-00118で説明されているCVE-2018-3627は、セキュリティ情報で論理エラー(これはバッファーオーバーフローではない)としてマークされており、任意のコードの実行につながります。 その操作のために、攻撃者はローカルアクセスを必要としますが、SA-00086で言及されている脆弱性は、OEMによって行われたシステム構成のエラーの場合にのみローカルで悪用できます。 この状態により、脆弱性はより危険になります。



CVE-2018-3628(SA-00112で説明)の場合、事態はさらに悪化します。 Management EngineファームウェアのAMTプロセスの脆弱性により、リモートでコードが実行され、SA-00086からCVE-2017-5712を使用する場合のように、攻撃者はAMT管理者アカウントを持っている必要はありません。



Intelは、このエラーを「HTTPハンドラーのバッファオーバーフロー」と説明しています。これは、承認なしでリモートでコードを実行する可能性を示唆しています。 これは、すべてのIntelプラットフォームユーザーが恐れる最悪のシナリオです。



ME暗号化キーを開く方法があります



この「冒険」で、Intel MEは終わりませんでした。 すでに秋には、サブシステムのもう1つのエラーを修正する必要があり、Intel MEの暗号化キーが公開されました。これは、ポジティブテクノロジーの研究者であるDmitry SklyarovとMaxim Goryachiyによって発見されました。



Intel ME(管理エンジン)サブシステムは、MFS(おそらくME File Systemの略)を使用してデータを保存します。 MFSセキュリティメカニズムは、暗号化キーを積極的に使用します。 機密性キーはMFSに保存されたデータの機密性を確保するために使用され、整合性キーは整合性を制御するために使用されます。 MFSに配置されたデータは、重要度に応じて2つのカテゴリに分割され、異なるキーセットによって保護されます。 Intelキーは最も機密性の高いデータに使用され、Non-Intelキーは他のすべてに使用されます。 したがって、4つのキーが使用されます:Intel Integrityキー、Non-Intel Integrityキー、Intel Confidentialityキー、Non-Intel Confidentialityキー。



Mark ErmolovとMaxim Goryachyが以前に発見した脆弱性の悪用により、4つのキーすべてを取得し、MFSセキュリティメカニズムを完全に侵害することができます。 Intelは、この脆弱性を解決するアップデートをリリースしました。 SVN(セキュアバージョン番号)の値が増加しました-このステップでは、すべてのキーを更新し、MFSセキュリティを計画レベルに戻しました。 更新されたMEファームウェアのMFSキーを(新しいSVN値で)取得することは不可能です。



しかし、すでに2018年に、ポジティブテクノロジーズの研究者は、Intel-SA-00125で説明されている脆弱性CVE-2018-3655を発見しました。 問題の本質は、Non-IntelキーがSVNの値とサブシステムの基礎となる不変の秘密に依存することです。 また、この秘密は、以前の脆弱性を使用して有効にできるJTAGデバッグを使用する場合に取得できます。 サブシステムの基本的な秘密を知ることで、Intel以外のキーの両方を計算できます。これはすべて、新しいファームウェアバージョンに既に含まれています。



したがって、攻撃者は、更新されたSVN値を使用して、ファームウェアの非Intel IntegrityキーおよびNon-Intel Confidentialityキーを計算し、これらのキーに依存するMFSセキュリティメカニズムを侵害する可能性があります。



次は何ですか



少し前、MacBookの脆弱性CVE-2018-4251の詳細な分析をブログで公開しました。 次に、HiTB 2018カンファレンスのMark ErmolovとMaxim Goryachyが、攻撃者が攻撃を行うためにそれを悪用する方法について説明します。 また、保護方法についても説明します。たとえば、専門家による特別なユーティリティを使用します。



All Articles