iOS11の脱獄状態からユーザーデータを残したまま解除できる『JB Remover』

ios11-jb-remover-top

iPhone X iOS 11.3.1のElectra Jailbreak環境で、『Cydia』や『SemiRestore11 / Rollectra』が起動できなくなり困っておりました。

そこで、ユーザーデータは残したまま脱獄関連のファイルだけを削除できる『JB Remover (Unc0ver/Electra/Th0r Jailbreak Remover)』を使って何とか元に戻すことができたので紹介します。

iOS11.3.1 iPhone Xで脱獄/入獄ができなくなった事の顛末










この辺りで脱獄を諦めてiOS 12.1.2に復元して入獄するか、Androidにでも移行しようかと考えた。

ひとまず、そのまま脱獄していない状態で1日過ごしてみたところ、普段当たり前のように出来たことが出来ない苦痛を味わい、再度もとの脱獄状態に戻すことを決意した。

JB Removerの仕様・使い方

  • iOS 11.0 ~ iOS 11.4(beta3)まで対応
  • Electra、Th0r、unc0verでの脱獄に対応
  • ユーザーデータを残したまま、脱獄ファイルの削除・入獄が行える
  • iOSのバージョンを維持する(アップデートされない)
  • ipaファイルで配布されている(Cydiaからのインストールではない)
  • VFSエクスプロイトを利用している
  • 脱獄状態では実行できないので、事前に再起動をしておく

1.iTunesに接続し、PCへiPhoneのデータを完全にバックアップする

何か起きた場合のために、必ずバックアップをとっておく

2.Cydia Impactorからデバイスにインストール

作者は@pwned4everさん

サイトでの配布は行っておらず、Dropboxからipaファイルをダウンロードする。

Link: ElecTh0rRemover.ipa

こちらのバージョンは2019/01/07にリリースされたv5.7で、今後アップデートされる可能性があるので、上手くいかない場合は作者の方に聞いてみてください。

3.ホーム画面にJB Removerが追加されるので開く

ios11-jb-remover-01

4.真ん中のゴミ箱アイコンをタップ

ios11-jb-remover-02

上手くいくと脱獄ファイルが削除される。

ios11-jb-remover-03

5.完了後、アラートが表示されるのでReboot

ios11-jb-remover-04

このままの画面を30秒待つと自動的にRebootされる。

Exitを押すとシェア出来るようになる(再起動は必要)


VFSエクスプロイトを成功させるコツは、機内モードにする、設定→一般→言語と地域→日本語から英語に変えるなどしてRespring、すべてのAppスイッチャーのアプリを上スワイプで終了させて実行

以上で脱獄ファイルが削除され、ユーザーファイルが残ったまま脱獄が解除された。

ios11-jb-remover-05

(白いブランクアイコンはuicacheかそのうち消える)

ユーザーファイルは/var/mobile以下のディレクトリにあるファイルで、脱獄のゴミは残っている。良い言い方をすると、再脱獄で設定したデータをそのまま使える。

ただし、インストールしていたパッケージ一覧とリポジトリは保存されない。

リポジトリを復元する

1.iTunesで取ったバックアップから復元

これにより、「/var/mobile/Library/Preferences/com.saurik.Cydia.plist」が復元され、入れていたリポジトリを復元することが出来る。

その他、debを自動でバックアップする「DebKeeper」などを入れていた場合、「/var/mobile/Downloads/Cydia/」ディレクトリにインストールしたdebファイルが残っているので、再インストールするときの判断ができる。

2.脱獄を行う

自分の場合、Electraで脱獄していたので、Electra1131で再脱獄をした。
無事、脱獄成功しRepositoryが復活!


3.OpenSSHかiFunBoxなどで「com.saurik.Cydia.plist」を取り出す

Electraの場合、デフォルトでOpenSSHがインストールされるので、SFTPクライアントなどで保存できる。iFunBoxを利用する場合、「Apple File Conduit “2" (arm64/KPPLess)」をインストールして取り出す。

4.Electraからunc0verに移行

Sileoがイマイチなのと、Cydia Substrateもベータだが「unc0ver」に採用されたことから、「unc0ver Jailbreak」に移行することにした。
やり方は単純で、再度JB Remoberで脱獄ファイルを削除→unc0verで再脱獄

※「ClassicFolders 2」をインストールしていた場合、ライセンスファイルが以下のディレクトリにシンボリックリンクとして保存されている

/var/mobile/Library/Preferences/

/usr/lib/cslicenses/

「org.coolstar.classicfolders2.license」と「org.coolstar.classicfolders2.license.signed」

ios11-jb-remover-06

ライセンスの移行が出来るかは不明だが、JB Removerを実行する前にオリジナルを保存しておいた方がいい。

unc0verでの脱獄環境を整える

1.OpenSSHをインストールして「com.saurik.Cydia.plist」を取り出す

plistEditorで保存しておいたものと比較しながら、Electra専用の部分以外をコピペして保存

必要な箇所の例
deb:https://cydia.ichitaso.com/:./
Distribution./Sections

TypedebURI
https://cydia.ichitaso.com/

2.リポジトリの復元

書き換えた「com.saurik.Cydia.plist」を「/var/mobile/Library/Preferences/」ディレクトリに上書きする。
Cydiaを終了させ、以下のコマンドで移行完了。

launchctl kickstart -k system/com.apple.cfprefsd.xpc.daemon

※再起動でも同じ効果があります。

3.パッケージをインストール

「DebKepper」で保存されていたリストから、手探りでインストールする。
※事前に移行する予定であれば、「Flame」を使ってインストール済みのパッケージをメールでリストとして送れるので、そちらを見ながら脱獄環境を再構築できます。


完全に入獄したい場合

Electraの場合は「Rollectra」、unc0verの場合は「Restore RootFS」をオンにしてJailbreak→ユーザーデータ削除→JB Removerで入獄してください。

もう脱獄をしないのであれば、iOS 12.1.2に復元するのがいいでしょう。ただし、脱獄時のゴミファイルが残るので、事前に手動で削除するか、新しいiPhoneとしてやり直すのをお勧めします。




という感じで、2日くらいかかって脱獄環境に戻ることが出来ました。

次回は自分が利用している脱獄環境を紹介しようかなと思います。