Switch 2をソフトウェアだけで脱獄、最新ファームでも動作
Jailbreaking the Switch 2
pepsipu氏がSwitch 2のソフトウェアのみの脱獄「ns2jb」を公開した。最新ファーム23.0.1で動作し、任意のネイティブコードを通常のsysmoduleやfs sysmoduleとして実行できる。WebKitのn-dayやSmileBASICの整数オーバーフローを組み合わせ、fsのパス正規化バッファオーバーフローで特権を取得。最終的にroのNPDMを使い、任意コード実行に至る。Mario Kart WorldのMODもデモされた。
実際のところ、その最後の主張には疑問がある。なぜなら、提供されるファイルシステムがNCAヘッダーのファイルシステムハッシュと一致することを保証するのはfsモジュールの責任であり、我々はそこに任意の読み書きを有しているからだ。
HNでの議論
220- hturan
とにかく全部すごい。
もしこれが本当に`fs`の復号化された読み書きだとしたら、数時間以内にSwitch 2のゲームダンプが出回り始めても驚かない。今のrecomp/decompの世界を考えれば、それはコンソール独占タイトルが任意のハードウェアで遊べることを意味する(任天堂にとっては最悪のシナリオだ)。『Tears of the Kingdom』がiPhoneでネイティブに60fpsで動くような例はすでに見ている。
LLMにKVM(またはウェブカメラ)経由で腕と目を与えるのは、この種のハードウェア作業において非常に強力なパラダイムだ。並列化でき、24時間365日動かせるからね。外部デバイスのファームウェア/ハードウェアを扱うときは、ぜひもっとこれを試してほしい(もっと邪悪でない目的でね!)。
特筆すべきは、これは任天堂のHackerOne(https://hackerone.com/nintendo)経由なら軽く5万ドル以上は取れていたということだ。
- rootsudo
理解できないんだが、みんなはどうやってCodexをこの種の研究に使っているんだ?バグバウンティやリサーチをしようとすると、いつもロックダウンされて「ブルー」ティアのアクセスだかデイライトだか、そういうのに制限されるんだ。
例えば、古いAndroid ROMのCVEを調査しようとしたら、完全に拒否された。Microsoftでやるのは問題なかったし、Microsoftのバグバウンティに提出するのもOKだったけど、Androidはダメだった。
- coreyp_1
彼がCodexを使ってこれをやっていたなんて信じられない!
理由:自分のコードでスタックオーバーフローを探そうとしたら、Codexに「認可されたセキュリティ研究者でなければならない」と言われてシャットダウンされたんだ。
おそらくコード内の「Java」という単語に反応したんだろう。でもJavaで作業していたわけじゃない…*C*で書かれた個人用の正規表現ライブラリで、Java方言に取り組んでいたんだ(今は12方言をサポートしている…趣味でね。判断しないでくれ)。
Claudeに戻るしかなかった…
- schwarzrules
> 脱獄自体には約2週間の相当な努力が必要だった。
これは、これがどれほど印象的かについての微妙な表現のように思えた。LLM以前なら、相当な努力をしてもこの結果を得るにはもっとずっと時間がかかっただろう。
- KeplerBoy
AIがユーザーと比べてどれほど重要かという明白な議論(ブログをちらっと見た限りでは経験豊富なセキュリティ専門家)はさておき、現代のツール(KVM、Bluetoothのライトスイッチの点滅、USBコントローラの即時サポート)がこのレベルの自動化を可能にしているのは本当に素晴らしいと思う。
- Melatonic
Switch 1のように、初代はソフトウェア脱獄と改造ファームウェアの実行が可能で、後の世代ではmodチップが必要になる状況になるのだろうか。
- _imnothere
個人的には、任天堂はソニーと同じようにもっと強い反発を受けるべきだと思う。ゲームキーカードは物理的所有の外観を保ちながら、人々がカートリッジに期待するものを提供していない。
AIハッキングのトレンドに乗る人がもっと増えて、彼らを倒してくれることを楽しみにしているよ。
- jyapayne
素晴らしい記事!ライトスイッチがSwitch 2を切り替えるのは笑える。
SmileBASICで入力する「苦痛」は、Raspberry Pi Pico(または同様のもの)でキーボードをエミュレートしてコードを入力するように書く(またはバイブコーディングする)ことで軽減できるだろう。