GitHubで、SpecterDev氏がPS5の1.xx/ 2.xxでのペイロード読み込みやデバッグ設定メニューの有効化などを行うことができるPS5 UMTX Jailbreak v1.1をリリースしていました。
Jailbreak PS5 UMTXについてはSpecterDev氏が昨日スクリーンショットを公開していました。
— Specter (@SpecterDev) September 21, 2024
PS5 UMTX JailbreakはFreeBSDの脆弱性(CVE-2024-43102: umtx exploit)をPS5の2.00向けに実装したものです。
当初はPS5の2.xxで動作するようにしたものでした。それがJailbreak PS5 UMTX v1.0です。その時点で1.xxにも対応するとしていました。
I’ve published a webkit implementation of UMTX exploit for PS5 on 2.xx firmwares. Hoping to add support for 1.xx firmwares soon, higher firmwares will take some changes to make it work. See README for details as always.https://t.co/g1kk14IVby
— Specter (@SpecterDev) September 21, 2024
その後SpecterDev氏はすぐに1.xxへの移植も行いました。それがJailbreak PS5 UMTX v1.1です。
Added 1.xx firmware support to UMTX exploit chain. https://t.co/WY5XIhhoMA
— Specter (@SpecterDev) September 22, 2024
Jailbreak PS5 UMTXはWebkitのexploitをエントリーポイントとして使い、fail0verflowチームのps5-umtxdbgとflatz氏のKernelExploitGraal.javaを移植して利用しています。
このJailcreakの欠点は、基になっているumtx exploit自体が8.00で対策=7.61までしか使えない(1.00から7.61まで利用可能)こと、3.00以降はexploitに微調整が必要なこと(現時点では3.00以降には未対応。SpecterDev氏も取り組む姿勢を見せていない)、エントリーポイントのWebkit exploitが6.00で対策されてしまっていることが挙げられます。
このexploitではリード/ライトは可能ですが、コードの実行ができません。ハイパーバイザー(HV)がカーネルへの書き込み保護を行っているため、カーネル空間にパッチやフックも使えません。
基本的にJailbreak PS5 UMTXは自分のPCをサーバーとしてPS5からアクセスして利用します。ブラウザがないPS5でWebkit exploitをエントリーポイントとするため、PS5でマニュアル表示に利用するmanuals.playstation.netのURLをdns.confで自分のPCのIPアドレスに書き替え、Pythonスクリプトで用意されているフェイクDNS{python fakedns.py -c dns.conf
}とHTTPサーバー(python host.py
)を実行、PS5のネットワーク設定でプライマリDNSをPCのIP アドレスに設定(セカンダリDNSは0.0.0.0のまま)にしてPS5からユーザーマニュアルを閲覧する操作を行います。
Jailbreakと言ってもペイロードを読み込ませることができるというもので、バックアップゲームの起動ではありません。できるのはカーネルの読み書やデバッグ設定メニューの有効化、ペイロードの読み込みといったところです。
PS5にはメモリーを保護する仕組みがあるためPS4のようにWebkit exploitのようなエントリーポイントとカーネルexploitだけでは本当に意味でのJailbreakはできません。といっても当初はJailbreak PS5 UMTXでできることすらいつになったらできるのか想像すら付きませんでしたので、時間の経過と共に徐々にハックが進んでいくものと思われます。