Switch 2のソフトウェア脆弱性を利用した『マリオカート ワールド』改造、再起動で解除

読了時間:約10分
Switch 2 Software Exploit Runs Mario Kart World Mods, but Resets After Reboot

プログラミングアプリがSwitch 2への侵入経路に

オンラインではpepsipuとして知られるセキュリティ研究者のサミー・ハジハミド氏は、ファームウェア23.0.1を搭載したNintendo Switch 2向けのソフトウェア脆弱性を実証した。改造した『マリオカート ワールド』のレースを通じて、そのアクセスで可能になることを示した。ハードウェア改造チップを取り付けずに、シナモロール、初音ミク、ピーター・グリフィンなどのキャラクターがゲーム内に登場した。

目次
  1. プログラミングアプリがSwitch 2への侵入経路に
  2. 『マリオカート』の実演が示したこと
  3. 旧Switch向けアプリが侵入の足がかりに
  4. 2つ目の脆弱性でファイルシステムサービスに到達
  5. Codexが支援、研究には2週間
  6. ブラウザー経由の侵入を断念した理由
  7. 必要なものと再起動で解除される仕組み
  8. 任天堂の対応と公開までの経緯
  9. 要点

ns2jbと呼ばれるこのツールは、初代Switch向けプログラミングアプリの弱点と、ゲーム機のファイルシステムサービスにある脆弱性を組み合わせている。ハジハミド氏によると、複数のシステムサービスと同じ権限でネイティブコードを実行でき、非公式アプリやゲームの改造、ゲーム機からのセーブデータのコピーなどが可能になる。

主な制約は明快だ。ゲーム機を再起動するとアクセスは失われる。再起動のたびに脆弱性を再び発動させる必要があり、現時点で、インストールしたまま使える代替システムソフトウェアである永続的なカスタムファームウェアを実現するものではない。

ハジハミド氏の技術解説の日付は2026年10月18日で、一般向けの実演は10月22日に公開された。同氏は当時の最新ファームウェアとして23.0.1を挙げている。研究には約2週間かかり、開発者自身による相当量の作業に加え、OpenAIのコーディングツールCodexも使われたという。

実演を伝えた記事の公開時点で、任天堂は公にコメントしていなかった。侵入の足がかりとして使われたプログラミングアプリ「SmileBASIC 4」は、一部地域のeショップから削除されたと伝えられており、脆弱性の調査を希望する人にとって、必要なソフトウェアを入手できるかが差し迫った課題となった。

『マリオカート』の実演が示したこと

最も目に見える成果は『マリオカート ワールド』で、なじみのあるレーサーに任天堂以外のキャラクターが加わった。実演ではシナモロール、初音ミク、ピーター・グリフィン、赤い鳥のアングリーバード「RED」が登場した。改造版のゲームについては、マインクラフトのスティーブも登場したと説明されている。

より重要な変更は、レースの裏側で起きている。ネイティブコードの実行とは、ゲームやプログラミングアプリが通常許可する命令の範囲にとどまらず、ゲーム機のプロセッサで直接命令を実行することだ。そのコードに付与された権限によって、機器のどの部分にアクセスできるかが決まる。

広告

カリフォルニア工科大学の学部生と紹介されているセキュリティ研究者のハジハミド氏は、このアクセスの用途として次のように説明した。

これにより、自作ソフトを実行し、Switch 2のゲームをリバースエンジニアリングして改造し、Switchからセーブファイルをバックアップし、MMIOを通じてSwitch 2の周辺機器の大半にアクセスできます。

自作ソフトとは、ゲーム機メーカーの承認した配信システムの外で作られた非公式ソフトウェアを指す。リバースエンジニアリングは、既存のソフトウェアの仕組みを調べること。MMIOはメモリマップドI/Oの略で、指定されたメモリアドレスを介してソフトウェアがハードウェアと通信する仕組みだ。

こうした機能が重要となる理由は、利用者によって異なる。プレーヤーはセーブファイルの独立したバックアップを望むかもしれず、改造者はキャラクターを差し替えたいかもしれない。研究者はシステムサービスを調査したいかもしれない。いずれも、通常のゲームには与えられていないアクセス権限が必要になる。

旧Switch向けアプリが侵入の足がかりに

SmileBASIC 4は、初代Nintendo Switchでプログラムを書いて実行できるアプリだ。Switch 2は後方互換機能によりこのソフトを実行できる。後方互換とは、旧世代のゲーム機向けソフトを後継機で動かせる機能だ。このつながりを通じて、ハジハミド氏は旧ソフトから新しい機器に侵入する経路を得た。

最初の弱点は、SmileBASICのインタープリターにあった整数オーバーフローだ。インタープリターはプログラミング命令を読み取り、実行する機能を担う。整数オーバーフローとは、計算結果がコンピューターが数値用に確保した範囲を超え、別の値に折り返される現象だ。

このケースでは、配列と呼ばれる値のリストに対する操作を確認する計算が負の数に折り返される可能性があった。その結果、本来拒否されるべき操作がチェックを通過した。その後のメモリーコピーで、データが意図された領域の外へ書き込まれた。

ハジハミド氏は、この挙動を利用し、配列の一部を文字列として扱わせたと説明した。この誤認によって、プログラムが想定する範囲を超えたメモリーを読み書きする方法が生まれた。初期の調査は初代Switchで実施でき、その成果をSwitch 2向けの攻撃チェーンの一部として利用できた。

SmileBASICは以前、任天堂の3DS向け自作ソフトの脆弱性悪用にも関わっていた。今回の価値は、旧アプリが新しいゲーム機への攻撃の第一段階を担えた点にある。

広告

2つ目の脆弱性でファイルシステムサービスに到達

SmileBASIC内でのアクセスは始まりにすぎなかった。ハジハミド氏は次に、ストレージ操作を扱う内蔵ファイルシステムサービス「fs」を標的にした。プログラミングアプリの制約を超えるには、より広い権限を持つサービスに到達する必要があった。

2つ目の脆弱性はパスの正規化に関するものだった。ファイルパスはストレージ内の場所をソフトウェアに示すもので、正規化では、システムが利用する前にパスを標準的な形式に整える。ハジハミド氏によると、このサービスはパスを小さすぎる一時バッファーにコピーしていた。

バッファーとは、メモリー上に確保された領域だ。データがその境界を越えると、隣接する情報を上書きすることがある。ハジハミド氏はこのオーバーフローを使ってストレージキャッシュのオブジェクトに影響を与え、ファイルシステムサービスのメモリーを読み書きできるようにした。

続いて、SmileBASICの接続について記録されたプロセス識別情報を変更し、より広いファイルシステム権限を得たという。これにより、内部ストレージや通常のシステムモジュールのコードをコピーして調べられるようになった。システムモジュール、またはsysmoduleは、オペレーティングシステムの各種機能を担うサービスだ。

ハジハミド氏によると、ns2jbでは通常のシステムモジュールや内蔵ファイルシステムモジュールとしてネイティブコードを実行できる。この攻撃チェーンは、SmileBASICを通じた最初の侵入と、より広いアクセスを得る2つ目の脆弱性という、明確に異なる2段階で構成されている。

Codexが支援、研究には2週間

ハジハミド氏は研究にOpenAIのCodexを使い、AIエージェントがゲーム機にコントローラー入力を送り、映像出力を確認できる独自の環境を構築した。JetKVM機器を使い、コントローラーの入力をUSBで接続し、映像をHDMI経由で取り込んだ。

Bluetooth接続の照明スイッチ機構も、変わった実用的な役割を果たした。クラッシュ後にゲーム機の電源ボタンを物理的に押すためのものだ。この種のメモリー調査ではクラッシュが繰り返し起きるため、ハードウェアの再起動も検証作業の一部だった。

ハジハミド氏の説明によると、SmileBASICで有用な整数オーバーフローを見つけたのはCodexだった。研究ではシステムサービスの調査やコードの解析、ファイルシステムサービスに到達する攻撃チェーンの開発も行われた。ハジハミド氏自身が同サービスを調査する一方で、AIエージェントはほかの標的を調べていたという。

広告

開発者は、AIにゲーム機の脱獄を頼むだけで済んだかのような冗談めいた説明文は、実際の手順を示したものではないと補足した。別の経路でコード実行を実現する当初の試みは成功せず、脱獄には約2週間にわたる相当な作業が必要だった。

ハジハミド氏によると、Codexは1日で『マリオカート ワールド』の改造版を作成した。これは、遊び心のある実演と、その背景にあるセキュリティ研究で必要とされた時間の違いを示している。目に見えるキャラクターの変更は、アクセス権を得るためのより難しい作業を経て実現した。

ブラウザー経由の侵入を断念した理由

最初に試みた経路で使われたブラウザーエンジンのWebKitは、ブラウザーが複雑なコンテンツを処理し、セキュリティ研究の対象となることも多いため、初期の標的だった。ハジハミド氏は、ネットワーク接続時に表示されることがあるカスタムWi-Fiキャプティブポータルを介してWebKitに到達する方法を検討した。

しかし、この方法はいくつもの保護機能に阻まれた。実行専用メモリーは実行命令の読み取りを制限し、有用なコードの並びを見つけにくくする。ポインター認証はアドレスが使われる前に検証し、制御フロー整合性は実行の一部が許可された経路に沿っているかを確認する。

初期のブラウザー調査で得られた制御は限定的で、目的とする脱獄に必要な、システムサービスとの任意の通信は実現できなかった。そのためハジハミド氏はSmileBASIC経由の経路を追求し、ブラウザーの調査は別途続けた。

同氏は、ファイルシステムの脆弱性をWebKit向けに応用することを、今後の研究の方向性として挙げた。別の侵入経路となる可能性はあるが、そのバージョンの公開時期は示されていない。また、脆弱性は初代Switchでも検証済みだが、同機向けにはまだパッケージ化されていないという。

必要なものと再起動で解除される仕組み

説明された経路では、SmileBASIC 4のバージョン4.4.9を使用する。米国のeショップでの価格は約25ドルと報告されている。別の改造者は、このソフトが必ずしも必要とは限らないと述べたが、実証された攻撃チェーンはプログラミングアプリから始まる。ほかの経路に必要な条件は、まだ明らかになっていない。

ソフトを入手する方法を探す人々の間では、日本向けの無料体験版にも注目が集まった。体験版は脆弱性に対応していないと伝えられている。そのため、この手法に関しては、体験版と有料版で利用価値が異なる。

広告

ns2jbは、再起動のたびに実行が必要な「テザード型」と説明されている。今回の場合、ゲーム機を起動するたびにゲームから脆弱性を再び発動させなければならない。再起動すると実行中の脆弱性はメモリーから消去され、影響を受けたプロセスは通常の状態に戻る。

ソフトウェア脆弱性と永続的なカスタムファームウェアでは、実現するアクセスの種類が異なる。ns2jbは実行中のセッションで何を動かせるかを変える。永続的なカスタムファームウェアには、再起動後も機能し続ける別の仕組みが必要だ。

現行の手順は、一般のプレーヤーには難しいとも説明されている。したがって当面の対象は研究者や技術に詳しい改造者であり、非公式アプリを簡単なメニューからインストールしたいすべての所有者ではない。

任天堂の対応と公開までの経緯

実演の直後から、SmileBASIC 4の入手可能性が懸念された。一部のユーザーはアプリを購入後、更新で脆弱性を塞がれるのを恐れてゲーム機をインターネットから切断したという。発表前後に公開された記事では、地域別のストアから削除されるとの見方や、すでに一部のストアから姿を消したとの報告が伝えられた。

そうした記事の公開時点で、任天堂は公式な説明を出しておらず、修正パッチも発表していなかった。どの地域が対象だったかを含め、ストアから削除されたとの報告の範囲は確認されていない。アプリの販売を停止すれば新規購入は制限されるが、脆弱なコードへの対処には、システムまたはソフトウェアの更新という別の方法がある。

発表と技術解説で示された日付は次の通り。

  • 2026年10月18日:ハジハミド氏が技術解説を公開。ファームウェア23.0.1向けのソフトウェア脆弱性としてns2jbを紹介した。
  • 2026年10月22日:ハジハミド氏が『マリオカート ワールド』の実演を公開し、脱獄を発表した。
  • 10月22日の発表前後:ユーザーの間でSmileBASIC 4の購入が話題となり、地域別のeショップから削除された可能性、または削除済みとの報告が伝えられた。

Switchの両世代に影響する別の脆弱性を公表していた開発者のGeziné氏は、pepsipu氏と話をしたと明かし、このツールは本物のようだと述べた。また、pepsipu氏は、自身が開発した別のユーザーモード脆弱性についても把握していたという。

ハジハミド氏は、自身の知る限りns2jbはこの種のSwitch 2向け脆弱性として初めてだと説明した。すぐに役立つ成果は、より踏み込んだソフトウェア研究やゲーム改造への実用的な経路が得られたことだ。一方、永続性と使いやすさには明確な制約がある。

広告

要点

  • ns2jbは、ハードウェア改造チップなしでSwitch 2のファームウェア23.0.1上で動作すると報告されている。
  • 実証された攻撃チェーンは、SmileBASICのメモリー脆弱性とファイルシステムサービスの脆弱性を組み合わせている。
  • pepsipuとして知られるサミー・ハジハミド氏は、約2週間の研究にOpenAIのCodexを使用した。
  • 『マリオカート ワールド』の実演には、シナモロール、初音ミク、ピーター・グリフィンなどのカスタムキャラクターが登場した。
  • 再起動すると脆弱性は解除され、現時点で永続的なカスタムファームウェアは実現しない。
  • 説明された侵入経路ではSmileBASIC 4のバージョン4.4.9を使用する。一部地域のストアから削除されたとの報告がある一方、任天堂は公にコメントしていない。
この記事を共有

こちらもおすすめ