PS Vitaのネイティブハック Vita Loaderプロジェクト “UVLoader” スタートへ





/talkフォーラムで、yifanlu氏がPlayStation Vitaのexploitを利用してVHBLのようなPSPエミュレーター上で動作するHomebrewローダーではなくネイティブコードによるHomebrewローダーを開発しようというUVLoader開発プロジェクトへの参加を開発者へ呼びかけしていました。(774さん情報ありがとね)

まもなくVHBLが公開される見通しである中、yifanlu氏のフォーラムへのこの投稿はいつまでもエミュレーターの中で過去の技術を復活させることを目標に置きたくはないという開発者魂が詰まっていると言えます。

yifanlu氏の目標はPSPでユーザーモードでの自作コード起動のためのローダーHBLに当たる、コードネーム”UVL (userland vita loader)”、ユーザーランドVitaローダーです。ユーザーランドですのでHBLと全く同じ、カーネル権限の必要のない(システムを破壊する可能性の低い)Homebrewローダーで、PS Vitaでネイティブに動作するものです。

yifanlu氏は少し前からUVLoaderの開発に取り組んでいたようで、githubにソースや文書が公開されています。

ソース -> https://github.com/yifanlu/UVLoader
ドキュメント ->http://yifanlu.github.com/UVLoader/modules.html

現時点ではソースコードのコンパイル自体も行われておらず動作するのかどうかまで検証できていません。仕組みとしてはモジュールエクスポートによりファームウェアごとに異なるNIDを関連付けたり関数を呼び出したりなどPSPでやっていることと同じです。

つまり、VHBL(またはHBL)で経験を積んだ開発者が現時点では(Dark-AleX氏が活躍していた時代と比べると)多数いるためそういった人たちにも協力を仰ごうというのが今回の呼びかけの趣旨になります。

当面の目標はローダーを作成し、それを将来見つかるであろうexploitで呼び出せるようにしておくことです。ゲーム起動時に読み込まれるらしいsceLibKernelからインポートできる関数だけを利用しようとしています。

現時点でVitaの仕組みを把握している開発者はそう多くないはずですが、ローダーを作る段階であれば協力者は多数いると思われます。

注意しなければならないのは、あくまでもHomebrewローダーでありバックアップ起動などができるような代物ではないことと、まだゴールまでの道のりはかなり長いということです。

まず、肝心のexploitが見つかったとは言及していません。まだ全く見つかっていない可能性もあります。少なくともローダーをメモリーに読み込ませないとローダー自体起動できませんのでexpolitでなんとかしてVitaのメモリーへローダーを読み込ませないといけません。そもそもVitaのexploitがどういう形になるのかも見えていません。

また、開発にはデバッグ環境が必要ですがPSPでのPSPLinkに当たるものが現時点ではありません。そもそもデバッグできないのであればHomebrewローダーの完成にはほど遠いと考えた方が良いでしょう。

また、最終段階で絶対にボディーブローのように効いてくるのはコンテンツ管理アシスタント(CMA)によるデータ転送と、専用メモリーカードの存在です。

1.80用VHBLがCMAの仕様変更で改良せざるを得なかったことでも分かる通り、CMAを使ってPCからVitaへデータ転送しなければならない制限を事前に設けられているということは、かなり不利な条件下でハッキングをしなければならないことを意味しています。

また、PSPでは汎用品だったメモリースティック経由でのデータ読み込みが可能でしたがPS Vitaでは専用メモリーカードを採用したことによりPCでの読み書きは不可能となっており、Vitaの内部での処理による読み書きしかできなくなっています。Vita上ではメモリースティックがどのように使われているのか、そのディレクトリ構造すらまだはっきり分かっていません。

つまりは何をしようにも必ずVitaのシステムの管理下で行わなければならないのです。そこをクリアしないとexploitデータもUVLoaderもVitaに送り込むことすらできません。

Tags: ,

  1. 774’s avatar

    EMU on PSPさんのところをみると

    今回yifanlu氏が独自に見つけたPS Vitaのexploitを利用して、

    と、あってexploitがあるような感じですが
    真意はどうなんでしょう

Reply

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です