iPhone XsやiPhone XʀなどA12デバイスと複数のデバイスのSHSH2を保存する方法
iOS 12.4でunc0verやChimeraを使って脱獄できるようになりましたが、iOS 12.4.1にて脆弱性がパッチされました。
A12(X)デバイス(iPhone Xs/Xs Max/Xʀ/2018年モデルのiPad Pro)は、まだ脱獄できないため待機中の方もいらっしゃるかと思います。
ただし、通常のSHSH2の保存方法では有効なファイルは保存できないため、A12(X)デバイスで有効なSHSH2ファイルを保存する方法を紹介いたします。
Contents
SHSH2ファイルとは
futurerestoreというツールを使って、Appleが署名されていないバージョンに復元するときに必要なファイル。
A11(iPhone Xなど)までのSHSH2を保存する方法
こちらのサイトが有名です。
デバイスのECIDとiPhoneモデル、CPUチップのモデルを選択してWebサイト上でSHSH2が保存することができます。
ECIDはiTunes、iPhoneのモデルやCPUチップのモデルは「CPU Identifier」で確認できます。
CPU Identifier
価格: 無料 サイズ: 1.3 MB
ただし複数のデバイスを持っている場合、一つずつ入力するのが面倒なので、自分の場合はMacでシェルスクリプトを使って保存しています。
Link: fetch_shsh2.zip
fetch_shsh2.zipを展開し、「fetch_shsh.sh」を編集してください。
「dump64 iPhone10,3 D22AP YOURECID」となっているところを自分のデバイスに置き換えて上書き保存。
ディレクトリ上で以下のコマンドを実行することで、現在署名中であるiOSファームウェアのshsh2ファイルを保存します。
./fetch_shsh.sh
A12デバイスでのSHSH2保存方法
A12デバイスからは上記の保存方法がAppleによって対策されました。
shsh2を保存する前の準備
iOS 12.0-12.4(iOS 12.3.xを除く)デバイスである必要があります。1.OTAアップデートのデータを削除
設定 → 一般 → iPhoneストレージ → OTAアップデートを削除
2)ipaファイルをダウンロード
1)iOS 12.0から12.1.2までの場合、Chimeraを使います。
2)12.1.3/12.2/12.4の場合、Chimera 1.3.7以降を使います。
上記サイトからipaファイルをダウンロードしましょう。
ipaファイルをCydia Impactorでインストール
1.脱獄するデバイスをPCと接続し、Impactorを起動ダウンロードした「ipa」をImpactorのウインドウにドラッグ&ドロップします。
2.Apple IDとパスワードを入力
Apple IDとパスワードを入力すると自動的にデバイスへアプリがインストールされます。
もしエラーが起きた場合は、[Xcode] → [Revoke Certificates]を行ってみてください。
※Apple IDが2段階認証の場合、別途新しいIDを作成しましょう。
Apple IDを作成 – Apple (日本)
3.アプリを認証する
そのままでは起動しないため、設定 → 一般 → デバイス管理(またはプロファイルとデバイス管理)を開き、追加したApple IDのメールアドレスをタップ → 信頼をタップしてください。
これでアプリが起動できるようになりました。
カスタムBoot Nonceをセットする
Windowsで「Chimera」を使った例で説明します。はじめに「libimobiledevice」をダウンロードしてください。
Link:libimobiledevice
1.Chimeraを起動して下にある設定を開きます
「Set Nonce」をタップして「0x1111111111111111」と入力してを「Set」をタップします。
(1が16個)
デフォルトの場合、「0xbd34a880be0b53f3」
2.JailbreakをタップしてBoot Nonceをセット
Nonceの値が「0x1111111111111111」にセットされます。
要はカスタムBoot Nonceが設定できればOKです。
iOS 12.4のshsh2を保存する
1.libimobiledevice.zipを展開
展開したところで「Shift」キーを押しながら右クリック→「コマンド ウィンドウをここで開く」でコマンドプロンプトを起動します。
2.ideviceinfoと入力してUDIDなどの情報を取得
「UniqueDeviceID」がUDIDになります。
2.リカバリーモードに入れる
<UDID>の部分を自分のデバイスに置き換えて実行
ideviceenterrecovery <UDID>
例)ideviceenterrecovery 00000000-001A442E02E8002E
デバイスがリカバリーモードになり、iTunesが起動しますが何もせず閉じてください。
3.NONCの番号を控える
irecovery -q
「583633077247a09b68b8fcfd3e2015809b1d50f8e9dd8f586596995e12ecd72f」がNONCの番号になります。これを控えておいて、shsh2を保存します。
ECIDも一緒に表示されるので控えておきましょう。
リカバリーモードを抜ける
irecovery -n
以上で必要な情報が集まりました。
4.TSS Saverでshsh2を保存
Link: https://tsssaver.1conan.com/
Windowsの場合、「tsschecker_win64_v352.zip」とtsscheckerのバージョンが低いので、こちらのサイトで保存します。
「Manually specify an apnonce (ADVANCED USERS ONLY)」にチェックをして、控えておいたNONCをコピペして保存してください。
個人的にはMacで保存することをお勧めします。
Macで保存する方法
Homebrewでlibimobiledeviceをインストール
brew install libimobiledevice
あとはWindowsのときと同様の手順でNONCの番号を控えておき「tsschecker」で保存します。
Link: Releases · s0uthwest/tsschecker
iOS 12.4のshsh2を保存する場合
./tsschecker -d <DEVICE MODEL> -i 12.4 --buildid 16G77 -s -e <ECID> --generator 0x1111111111111111 --apnonce <NONC VALUE>
まとめ
AppleがiOS 12.4.1 (16G102) を2019/08/27リリースしました。
このアップデートには、iOS 12.4でJailbreakできる脆弱性の修正が含まれています。
AppleはiOS 12.3で脆弱性に対処しましたが、iOS 12.4のアップデートで誤ってパッチを適用しなかったため、それを修正したものとなっています。
記事執筆時点の現在、脱獄できるiOS 12.4が署名中のためSHSH2は必ず保存しておきましょう。
おすすめのiOSバージョン
A11までのデバイスの場合、iOS 12.4にすることをお勧めします。A12(X)デバイスでiOS 12.0-12.1.2、12.1.3/12.2の場合、shsh2を保存してそのまま待機。
iOS 12.3/12.3.1の場合、12.4へアップデートしましょう。
※unc0verを使った方法からChimera 1.3.7以降に書き換えました。
A12(X)デバイスの場合、CustomBootNonceの設定がunc0verだとまだ対応していないため、Chimera 1.3.7以降で保存してください。
参考Link
iOS 13.0が2019/09/20にリリースされています。shsh2の保存がTSS Saverだとうまく行かないようなので、SHSH Hostで保存してください。
blobsaver(GUIソフト)を使った方法
Mac/Windows/Linuxに対応したGUIのアプリで、一度設定を保存すると簡単に署名中のshsh2 blobsを保存することができます。
「Java」をインストールしている必要があります。
最大で10個までのデバイスを登録でき、保存先をDropboxやGoogle Driveなどに指定しておけば、クラウド上にも保存できて便利です。
ディスカッション
コメント一覧
今のうちに保存しておいてください。
電源入れ直したときには
入獄状態になるから、内部をいじっても元どおりになる
けど、脱獄して内部を一度いじってたのに、復元してないなら内部もそのままになると解釈してるのだけど
なぜ戻るのでしょうか…
hostsいじくって、広告消したのに
元どおりやし…
LetMeBlock(tweak)によって変更されたのが適用されています。