Xbox 360は結局どれくらいハック困難なのか
Xbox 360でLinuxを動かすことが目的のFree60プロジェクト(すりーしっくすてぃーではなくてフリーしっくすてぃー)がさっそく始動、マイクロソフトいわく「史上最もプロテクトの堅い難攻不落のマシン」が実際どんなものなのか調べてます。第一印象によると:
- フラッシュメモリは一台ごとにユニークな鍵で暗号化
- 鍵はCPUにある
- ブートROMもCPU内に
- CPUはハイパーバイザ(一番えらい特権プロセスのようなもの)がカーネルの実行状況を監視、改変されないようにしている(ramのチェックサムをとっている)。書き換えられればXbox 360が停止(だけで済むか分からない)。
- チェックサムを監視するためのRAMもCPU内に
- 例外・割り込みのハンドリングはすべてハイパーバイザが行う
- すべてのコードはカーネルモードで走る
- 初代Xbox用のエミュレータはマイクロソフトからダウンロード・CDに焼いて起動できるが、それも公開鍵で暗号化されている。
- エミュのブートROMもCPUのなか
どれも確認されたわけではありませんが、まあマニュアル通りにやってますという感じです。たしかに簡単すぎた初代や他のコンソールよりは手間取ると思いますが、完璧な理論に実装まで完璧かどうかはこれから。
一台毎の鍵とはいっても初代はサードパーティーゲームのセーブデータからコードが起動できたというMS以外のミスが突破口になったということもあり(その後さまざまな別種のハック法が見つかる)、守る方にとっては1ミスが命取りだがしかしソフトは出し続けないといけない、というハックの非対称性はそのまま。楽しみに見物したり参加したりしましょう。ハッカーじゃなくても野次馬として寄付を投げて試合を面白くするのもありですよ。
[via Joystiq and Xbox 360 Fanboy]
[本家Engadget]































