PSX-Sceneで、PsDev氏がPS3の4.00でのexploitとなりうる理論を公開していました。
exploitと聞くと色めき立つ方もいると思いますが、見つけたという話ではなく理論的には見つかるのではないかという方法を公開するのでみんなで考えてほしいという内容です。
PsDev氏がいろいろ試し、考え、調査してみた結果発見した4.00 exploitとなり得る理論は以下のような内容です。かなり変な英語で意味がハッキリ分からないのですが、多分こんなような内容です。(日本語訳にあまり期待しないでくださいね)
- lv2ldrがlv2_kernal.selfを復号して内容を検証している。それをしているアドレスは分かる。パラメーターレイアウトには引数があり、関数をロードするコマンドとして基本的には使われる。lv2は0x3E800のアドレスから始まる。lv2_inとlv2_outをコールする引数もある。 lv2_inはアドレスの調整に用いられ、lv2_outはlv2ldrがselfファイルを復号するアドレスを調整する。プログラムを作ればオフセットも分かる。u8*はアドレスから1バイトを読むという意味。正確なオフセットが分かるので、その位置が分かればselfファイルを復号している場所は簡単に特定できる。それでキーが入手できる。ローダーが実行されている場所をソニーは変えていないはずなのでこの方法で4.00 exoloitは見つかるはず。その場所はbootloaderの中に一体化されているがmetldrに提供される前にRAMのある場所に格納されている。もしそれが正しいならソニーは全く何も変えていないことになる。
訳してみましたがよく分かりません。サンプルコードとして以下のコードが書かれています。
void *buf; //
このサンプルコードが理論の全てではないそうですが、結果が出るまでの開発過程はトライアンドエラーの連続だとしています。
PsDev氏はこの情報をPS3シーンに公開することで今あるPS3の障壁を取り除いてJailbreakしようと呼びかけています。こういう動きが始まっている程度の情報として捉えてください。