最新のセキュリティ研究者ケイト・テムキン氏は、Nvidia の Tegra チップセットのバグを悪用して、ロックダウンされたデバイス上でカスタム コードを実行する「Fusée Gelée」という概念実証コードをリリースしました。
Nintendo Switch のハッキング プロジェクト ReSwitched に参加している Temkin 氏は、Tegra ブート ROM の修正不可能な欠陥を利用するゲーム コンソールのコールドブート ハックを開発した。
彼女はまた、Fusée Gelée 経由でインストールできる Atmosphère と呼ばれるカスタマイズされた Switch ファームウェアにも取り組んでいます。
本質的には、Fusée GeléeはSwitchの起動時に脆弱性を悪用し、デバイスを乗っ取って非公式ソフトウェアを実行します。これは、ロックダウンされたNintendo Switchのロックを解除し、自作ゲーム、カスタムファームウェアやオペレーティングシステム、その他のコードを実行できるようにするのに役立ちます。
Fusée Gelée を実行し、独自のソフトウェアを実行するには、電源投入時にハードウェアに物理的にアクセスする必要があります。これは、無線経由で実行したり、デバイスの起動後に実行したりできるものではありません。
テムキン氏は今月初めに自身の調査結果をまとめたブログ記事で、「この脆弱性は、ほとんどのTegraデバイスに見られる読み取り専用ブートROMの『コーディングミス』によるものです」と説明した。
NvidiaのGeForceチップを手に入れたい?必要なのは資金と忍耐力
続きを読む
このバグの詳細は、他者によって先に公表されない限り、2018 年 6 月 15 日に明らかになる予定です。この脆弱性を利用した、または実質的に類似した Switch 用のカスタム ファームウェアを作成するための並行した取り組みが、Team Xecuter と呼ばれるグループによって進行中です。
この脆弱性は、2016年にリリースされたT186/X2以前のTegraチップに影響を及ぼすと言われているため、Nintendo Switchだけが影響を受けるわけではありません。影響を受けるチップセットを搭載した他の機器も、潜在的なリスクにさらされています。
テムキン氏は、この問題は全てのNintendo Switchに存在すると推測しています。この欠陥の性質上、修正にはハードウェアの改修が必要になります。テムキン氏によると、このプログラミングバグを含むブートROMは、工場出荷時にはマイナーパッチを受け入れるものの、その後はアップデートできないとのことです。つまり、脆弱なマシンが製造ラインから出荷されると、脆弱性は焼き付き、軽減することはできないということです。
テムキン氏は、この失敗は任天堂を含む Tegra 組み込みプロセッサを使用する他のベンダーに責任を持って開示され、転送されたと述べた。
テムキン氏は研究の概要で、Fusée Gelée を「Nvidia の Tegra シリーズの組み込みプロセッサ上の Tegra リカバリ モード (RCM) を介して、初期ブート ROM コンテキストから完全な認証されていない任意のコード実行を可能にするコールド ブートの脆弱性」と説明しました。
問題は、TegraブートROM内のUSBソフトウェアスタックが、攻撃者が定義可能な長さパラメータを持つメモリコピー関数を呼び出すことです。これにより、プロセッサの実行スタックが、サイズが大きすぎるコピー操作によって上書きされる可能性があります。これでほぼゲームオーバーです。リターンアドレスを含むスタックに落書きすることで、プロセッサを任意のコードに向けることができるのです。
「USB制御リクエストを注意深く構築することで、攻撃者はこの脆弱性を利用して、攻撃者が制御するバッファの内容をアクティブな実行スタックにコピーし、ロックアウトや権限の低下が発生する前にブートおよび電源管理プロセッサ(BPMP)の制御を獲得できる」とテムキン氏の論文は説明している。
悪用に成功すると、プロセッサの信頼のルートが侵害され、攻撃者がデバイスのヒューズに焼き込まれた秘密にアクセスできるようになり、任意のコードの実行も可能になります。
Nvidiaの広報担当者はThe Registerの質問に対しコメントを控えた。®
追加更新
テムキン氏はThe Register宛ての電子メールで、この脆弱性を全面的に公開することに決めたと述べた。
「報告書に記載されている通り、私がNVIDIAと交わした情報開示契約では、他の研究グループが脆弱性を公表した場合には、情報も公表されることが合意されていました」と彼女は説明した。
詳細は省きますが、これは過去24時間以内に発生したため、今が適切なタイミングで資料を公開するタイミングだと判断しました。これは、関連するブートROMの脆弱性の一つに関する資料と、関連するエクスプロイトの完全版です。6月15日という日付はもはや関係ありません。
「一般的に、誰かがこのようなパッチ適用不可能なエクスプロイトを共有すると――たとえそれがゼロデイとして『アンダーグラウンド』コミュニティに投稿されただけだとしても――悪意のある攻撃者がその情報を入手し、比較的少ない情報を読み解き、一般の人々やデバイスに影響を与える可能性のある解決策を開発できるようになるため、公開頻度は大きく変化すると私は考えています。その時点で、悪意のある攻撃者から最善の防御策を誰もが理解できるように、エクスプロイトの詳細を一般の人々に知らせることの方がはるかに望ましいと私は考えています。だからこそ、私はNvidiaとの合意に至ったのです。」
スイッチの様々な脆弱性の状況については、こちらをご覧ください。また、別の研究者によるエクスプロイトのバージョンへのリンクはこちらです。