サイトアイコン 大人のためのゲーム講座

Team XecuterがSX OSを公開

SX OS

SX OS

Maxconsoleで、Team XecuterがFusée Geléeと同じNVIDIA Tegraの脆弱性を利用したNintendo Switchハック製品Xecuter SXで使用するOS(カスタムファームウェア)SX OSをリリースしたことを伝えていました。


現在公開されているSX OSはv1.2となっています。無論v1.0でリリースされ、その後の改良によりv1.1、v1.2と更新されてきました。v1.0の時に記事にするつもりで準備していましたが、プライベートな諸事情で記事が書けずに今日に至っています。

とりあえずSX OSの今までの経緯です。Team XecuterのSX ProとSX OSについてのまとめ以降のお話になります。

SX OSはいわゆるカスタムファームウェアで、SX Proのツールキットとともに使用することが前提となっています。したがってSX OSのライセンスが付属(USBドングルにライセンスが付属しています)するSX Proを購入するか、SX OSのライセンス自体を購入したユーザーのみが使用できます。

ただしHomebrewサポートだけはライセンスの有無に関係なく利用可能です。結果としてアクティベーション必須の有料に相当するのはバックアップROMの読み込みということになります。

v1.1ではHomebrewの起動で速度が遅かったりそもそも起動しなかったりといった問題が修正されました。XCIフォーマットでの証明書のエミュレートによりオンラインプレイを可能にしました。自分のカートリッジからダンプしたバックアップROMであればBANされずにオンラインプレイできるらしいです。ところが今ゲームダンプにはWAIN XCI Switch Cartridge Dumpergcdumptoolといった有志が開発したツールを使うしかありません。

v1.2ではロゴパーティションのあるCARD2と呼ばれるカートリッジゲームバックアップに対応するなどの改良が施されました。

この流れを読むと、Switchシーンにその存在自体を依存しておきながらバックアップ起動には金を取るというTeam Xecuterの動きが見えてきます。

SwitchシーンメンバーはこのSX OSを無償で利用できるようにしようと当然考えます。SX OSでHomebrew起動だけはライセンス認証なし、つまり無償で利用できるようにしたのはシーンからの有償化への批判を回避するための手段だと思われますが、ゲームカートリッジダンプをシーンのボランティアに依存している時点で反感を買うのは当然です。そのため将来的にはゲームダンプ機能をSX OSに持たせることが公表されていますが、例えばgcdumptoolはオープンソースですからそのソースコードを流用すればTeam Xecuter独自のダンプツール実装は容易です。いずれにせよSwitchシーンがSX OSの解析に乗り出してライセンスレス化する動きは不可避だった言えるでしょう。

大きく反応したのはVitaシーンとSwitchシーンで活躍するhexkyz氏(Molecule Teamのxyz氏)です。hexkyz氏はTeam ReSwitchedやSwitchbrewといったチームと協力体制を敷いてSwitchシーンを牽引している一人です。

hexkyz氏はまずTeam XecuterのSX OSの暗号鍵を公表していました。


TX OSが公開された。メインファイル(“boot.dat”)には小さなヘッダー(0x100)があり、本体はAES-128-CTRで以下の鍵で暗号化されてる。
KEY: 47E6BFB05965ABCD00E2EE4DDF540261
CTR: 8E4C7889CBAE4A3D64797DDA84BDB086
復号されたファイルにはOSの難読化を解除するためのペイロードが入ってた…

SX OSは暗号化されて容易に解析できないような仕組みとなっていました。つまり、解析されることを予測して準備していたことになります。

さらにひどいことにSX OSにはSwitchをbrickさせるコードが仕込まれていることも明らかになりました。

brockコードは、かつてNintendo 3DSのFlashcartであるGateway 3DSにも存在していました。Gateway 3DSのLancher.datを改変すると故意に3DSをbrickさせるコードが仕込まれていたのです。Team XecuterのSX OSにも同様の仕組みが用意されていたことになります。eMMCが「特定のパスワードでロックされている」模様です。

hexkyz氏はTeam XecuterがSX OSを公開した直後から解析を続け、SX OSのデータをアンパック・復号化するスクリプトを公開しました。スクリプトはhttps://gist.github.com/hexkyz/d5b3f5b1700b507b41e7fc1dc12e8dfdで公開されています。

また、技術的な解析内容やTeam Xecuterに対する批判をブログで公開しています。かなり長文なので翻訳している時間が私にありませんが、興味のある方はGoogle先生に聞いて読んでみてください。

hexkyz氏とは別に、naehrwert氏もSX OSの解析に取り組んでいます。SX OSのデータをアンパックてて復号化するtx_unpack.pyスクリプトを公開しています。これよりもより多くのデータを復号できるのがhexkyz氏のもの(hexkyz氏談)です。

Switchハックをビジネスとして取り組んでいるTeam Xecuterに反発するシーンの反応は理解できるものですが、そもそもTeam XecuterはXboxシーンを中心に同様の取り組みを長くしてきています。Xbox One時代になってからのXboxシーンでのTeam Xecuterは名前を聞かなくなっていたところですので、彼らにとっても自分たちのビジネスをSwitchシーンで何が何でも成立させなければならない死活問題を抱えながらSXを開発してきたことは容易に想像できます。

SX ProのUSBドングルなどは製品としてみるとPCなどでの操作が必須のFusée Geléeの欠点をうまく解消しているという点で非常に優秀だと感じます。今回Team Xecuterが有償でSwitchハックを提供しているSXとFusée Geléeがうまく共存してくれるのが一番望ましい形だではないかと感じています。

モバイルバージョンを終了