PlayStation VitaのPSPエミュレーターのFlash0のダンプに成功し、そのファイルが公開されたことについて、wololo氏がエンドユーザーには無意味なことだと説明していました。
Vitaで動作するカーネルexploitを持っているDaveeがそれを公開しないからという理由である人物はflash0ダンプファイルを公開しました。一方で名指しで非難された形のDavee氏は「今までと何も変わってない。カーネルexploitが見つかった訳ではない」と、そのダンプファイルが流出したからと言って変化がある訳ではないと明言していました。
このDavee氏のコメントに意味をwololo氏が説明してくれている形になります。
以下、翻訳(ただし要約)です。
技術的背景
PSPには2つのパーミッションレベルがある。それがユーザーとカーネルだ。カーネルというのはコンピューターでいう”admin”、つまり管理者と同じ意味で、ユーザーではアクセスできることが限られている。一方でカーネルでログインした状態のカーネルモードはゲームのDRMの復号ができたりPSPのファームウェアのアップデートができたりといったPSPの全てにアクセスが可能になる。
ハッキングの視点から言うと、ユーザーレベルでハッキングしても限定された機能にしかアクセスできないが、カーネルレベルのハッキングはカスタムファームウェアのようにファームウェアの書き換えも可能になるなどデバイスの全てにアクセスできるようになるということだ。
同じように、ユーザーモードでPSPにアクセスしてもPSPの全てファイル、あるいはメモリーの全部分にアクセスできない。特にFlash0というメモリー部分に保存されているファームウェアが利用する”モジュール”と呼ばれるものはカーネルモードでのみアクセスが可能だ。
更にPS VitaではPSPエミュレータは”sandbox”(サンドボックス:保護された領域内でプログラムを動作させることで、その外へ悪影響が及ぶのを防止する仕組み。砂場の中で子供を遊ばせておけば安全だというニュアンスが含まれている)で動作しているため、PS Vitaの全機能には直接アクセスできない。つまり、”PSPエミュレーターでのカーネルexploit”ではVitaにフルアクセスは不可能で、せいぜいPSPエミュレータへのフルアクセスというのが限界だ。
現状
現時点で公開されているVitaのハッキング方法はVHBLのみであるが、これはユーザーモードで動作している。しかもエミュレーターのサンドボックスの中での話だ。Davee氏はカーネルexploitでPSPエミュレーターのファームウェアファイルにアクセスしたが、これはVita上でのPSPエミュレーターファイルにアクセスしたに過ぎない。
パーミッションのレベルを図式にした。VitaのISOローダーならどのパーミッションが必要なのか分かるだろう。
Flash0のダンプについて
上記図ではFlash0のダンプはカーネルレベルになっている。カーネルの場合Vitaの中のPSPカーネルにアクセスができるということになるが、その情報入手のためにカーネルアクセスが要求されるものの、それがカーネルへのアクセス権が得られたといいことにはならない。PCの場合、adminがデスクトップのスクリーンショットを取りあなたにメールで送ったとしよう。そのスクリーンショットを入手したからと言ってadmin権限まで受け取ったことにはならないというのは分かるだろう。単にadminのデスクトップの状態を知ることができるだけだ。
では本題に移ろう。先日のFlash0リークとはどういうことなのかだ。これでPSPカーネルにアクセスできる訳ではない。今まではアクセスできなかったいくつかのファイルにはアクセスできるようになったことにはなる。
つまり、Davee氏以外にPSPエミュレーターとVitaとの通信ライブラリKermitの調査をしているハッカーがいると言うこと、実際のPSPのファームウェアとエミュレーターのファームウェアとの違いを調べる素地が整ったと言える。Kermitの存在が実際のPSPとエミュレーターの違いだが、他にもあるだろう。
もしかするとPSPエミュレーターにはもっと秘密が隠されているかもしれないし、これからそれが分かるかもしれない。例えばDRM暗号鍵というのも可能性のひとつだ。実際PS3の解析がPSPのハッキングに繋がったこともあるため、PSPエミュレーターがVita自体のハッキングには繋がらないとは言い切れない。
エンドユーザーにとってはつまり全く意味のないものだと言える。PSPのカーネルにアクセスできるわけではない。すなわちPSPのカーネルexploitを発見する話以前の状態だ。結局はDavee氏(Proxima/some1氏)がカーネルexploitでカーネルにアクセスできたとしてもそれは単にPSPのファームウェアでのことであって、知識があれば誰でもいつでもPSPでできるレベルの話だ。だが、今までアクセスできなかったファイルにアクセスできるというのは調査して見たいと考える開発者にとっては興味深い話だろう。
現状では少なくとも2つのグループがVitaのPSPカーネルにアクセスできていることが分かっている。Vitaのフルコントロールまでには遠い道のりだが、ワクワクするような話であることに変わりはない。