

更新: 最後に Intel のコメントを追加しました。
少なくとも 7 つの重大な Thunderbolt セキュリティ上の欠陥が発見され、スタンドアロンの Thunderbolt ポートと、最新の Mac で使用されている Thunderbolt 互換の USB-C ポートの両方を備えたマシンに影響を及ぼしています。
この欠陥により、マシンがロックされている場合でも、ドライブが暗号化されている場合でも、攻撃者はデータにアクセスできるようになります...
この脆弱性は、2011 年から 2020 年の間に出荷された Thunderbolt/Thunderbolt 互換 USB-C ポートを搭載したすべてのマシンに存在します。
セキュリティ研究者の Björn Ruytenberg 氏は、Intel の Thunderbolt チップに 7 つの脆弱性と、それを悪用する 9 つの方法を発見しました。
- ファームウェア検証スキームが不十分
- 脆弱なデバイス認証方式
- 認証されていないデバイスのメタデータの使用
- 下位互換性を利用したダウングレード攻撃
- 認証されていないコントローラ構成の使用
- SPIフラッシュインターフェースの欠陥
- Boot Camp に Thunderbolt セキュリティがない
マシンが侵害されたことを検出する方法はありません。
Thunderspyはステルス性を備えており、攻撃の痕跡を一切見つけることができません。ユーザーの介入は一切必要ありません。つまり、フィッシングリンクや、攻撃者がユーザーを騙して利用させる悪意のあるハードウェアは一切使用しません。短時間離れる際にコンピューターをロックまたはサスペンドするなどのセキュリティ対策を講じていても、またシステム管理者がセキュアブート、強力なBIOSおよびOSアカウントパスワード、そしてフルディスク暗号化を有効にしてデバイスを設定していていても、Thunderspyは正常に動作します。攻撃者に必要なのは、コンピューターの前に5分間、ドライバー、そして持ち運びやすいハードウェアだけです。
これらの脆弱性は、9つの実用的な悪用シナリオにつながります。悪意のあるメイドの脅威モデルと様々なセキュリティレベルにおいて、任意のThunderboltデバイスIDを作成し、ユーザーが承認したThunderboltデバイスのクローンを作成し、最終的にPCIe接続を取得してDMA攻撃を実行する能力を実証します。さらに、認証されていない状態でセキュリティレベル設定を上書きする能力も示します。これには、Thunderboltセキュリティを完全に無効化する能力や、システムがUSBまたはDisplayPort経由のみに制限されている場合にThunderbolt接続を復元する能力が含まれます。最後に、Thunderboltセキュリティを恒久的に無効化し、将来のファームウェアアップデートをすべてブロックする能力を実証します。
Mac は、Bootcamp を実行している場合はすべての Thunderbolt セキュリティ欠陥に対して完全に脆弱であり、macOS を実行している場合は「部分的に影響を受ける」ことになります。
macOSは、(i) セキュリティレベルの代わりにAppleがキュレートしたホワイトリストを採用し、(ii) ハードウェアとドライバのサポートが利用可能な場合はIOMMU仮想化を採用しています。脆弱性2~3により、最初の保護手段が回避され、macOSの「システム情報」にあるThunderboltデバイスメタデータの信頼性が完全に損なわれる可能性があります。しかし、2つ目の保護手段は機能し続け、DMAを介した被害者のシステムセキュリティへのさらなる影響を防ぎます。システムはBadUSBに類似した攻撃に対して脆弱になります。したがって、macOSは部分的に影響を受けます。
Mac の脆弱性の詳細については、以下をご覧ください。
ルイテンバーグ氏は、自身の発見についてインテルとアップルの両社に報告したが、サンダーボルトのセキュリティ上の欠陥はコントローラチップに存在するため、ソフトウェアアップデートで脆弱性を修正する方法はないと述べた。
以下は、macOS 搭載の Mac で脆弱性を悪用する方法について説明しています。これは基本的に、Mac を騙して攻撃キットを Apple 認定の Thunderbolt アクセサリだと思わせることで実行されます。
3.4 Apple Macシステムにおける脆弱性2~3、7の悪用シナリオ
3.4.1 Appleのホワイトリストに登録されたデバイスIDを攻撃者のデバイスに複製する(MacOS)4
脅威モデル
我々は「邪悪なメイド」脅威モデルを想定しています。このモデルでは、攻撃者は被害者のシステムへの物理的なアクセス権を独占的に持ちます。システムはmacOSが動作している状態で、ロック状態(S0)またはスリープ状態(S3)にあります。
準備
- MacOS 認定の Thunderbolt デバイスを入手します。
- macOS認定デバイスの筐体を分解します。macOS認定デバイスのThunderboltコントローラーのSPIフラッシュからファームウェアイメージを取得します。
- 攻撃者のデバイスの筐体を分解し、ThunderboltコントローラのSPIフラッシュからファームウェアイメージを取得します。
- macOS認証デバイスを攻撃者のシステムに接続します。攻撃者のシステムで、例えばLinuxのtbtadmなどを使用して、macOS認証デバイスのUUIDを取得します。
- 攻撃者のデバイスのファームウェアイメージで文字列「DROM」を検索し、DROMセクションを見つけます。図6はDROMのデータ構造を示しています。この図を参考に、適切なオフセットを見つけ、macOS認定のデバイスUUIDを再現します。
- uid crc8 を計算し、適切なオフセットで値を複製します。
- イメージを攻撃者のデバイスの SPI フラッシュに書き込みます。
手順
1. 攻撃者のデバイスを被害者のシステムに接続します。
検証
1. 被害者システムが攻撃者のデバイスをmacOS認定デバイスとして認識していることを確認します。図2は、macOSの「システム情報」アプリケーションに偽造されたThunderboltデバイスIDが表示されている例を示しています。
インテルは次のようにコメントした。
2019年には、主要なオペレーティングシステムにカーネルダイレクトメモリアクセス(DMA)保護が実装され、このような攻撃を軽減するようになりました。これには、Windows(Windows 10 1803 RS4以降)、Linux(カーネル5.x以降)、MacOS(MacOS 10.12.4以降)が含まれます。研究者たちは、これらの軽減策が有効になっているシステムに対してDMA攻撃が成功することを実証しませんでした。お使いのシステムにこれらの軽減策が組み込まれているかどうかは、システムメーカーにお問い合わせください。すべてのシステムにおいて、信頼できる周辺機器のみを使用することや、コンピューターへの不正な物理アクセスを防止することなど、標準的なセキュリティ対策に従うことをお勧めします。
havebin.com を Google ニュース フィードに追加します。
FTC: 収益を生み出す自動アフィリエイトリンクを使用しています。詳細はこちら。