checkra1n – iOS 13に対応した脱獄ツールがリリース!

2019/11/10 23:12


2019/11/10、bootRom exproit「checkm8」を利用した脱獄ツール「checkra1n」がリリースされました。

実際にiOS 13.2.2を脱獄してみたので、以下に詳細を説明致します。

checkra1n対応デバイス



  • iPhone 6/6+、iPhone 6s/6s+/SE、iPhone 7/7+、iPhone 8/8+、iPhone X
  • iPad 6/7、iPad Air/Air 2、iPad Pro (12.9″ 1st/2nd)/iPad Pro (9.7″)/iPad Pro (10.5″)、iPad mini 4
  • iPod touch (6th generation)/iPod touch (7th generation)
以下のデバイスは初期リリースでは対応していません。

  • iPad 5th
  • iPad Air 2
  • iPad Pro 1st Gen
以下のデバイスは初期リリースでは通常よりも多くの試行が必要になる場合があります。

  • iPhone 5s
  • iPad mini 2/3
  • iPad Air
(例えばTerminalにてコマンドを入力して実行する必要がある)

./checkra1n.app/Contents/MacOS/checkra1n_gui

bootRom exproit「checkm8」を利用しているため、A5チップからA11チップまでのCPUを搭載した64bitのデバイスが対象となります。

iOSはiOS 12.3~iOS 13.2.3が対象となりますが、iOS 12.4までは「unc0ver」にて脱獄可能です。




つまり一番の特徴は、iOSのバージョンが上がっても少しの修正で「iOS 13.x以降の最新OSを脱獄する」ことが可能です。


注意:A12以降のデバイスは対応していません

  • iPhone Xs/Xs Max/Xʀ、iPhone 11/11 Pro/11 Pro Max
  • iPad Pro 11″/12.9″ (3rd)、iPad Air (3rd)、iPad mini (5th)
これらのデバイスで脱獄したい場合、iOS 13.1.3以下で待機しておくことをお勧めします。

すでに脱獄している場合は、そのバージョンで待機してSHSH2ファイルを保存しておきましょう。


checkra1nでの脱獄方法




こちらのサイトからツールをダウンロードします。

checkra1n 0.9 beta」(記事執筆時点)をクリック→「Download for macOS」をクリックしてください。


初期リリースではmacOSのみ対応で、今後WindowsとLinuxのサポートとなるようです。
2020/02/05追記:Linux版のcheckra1nがリリース



必ず脱獄する前にiTunesなどでバックアップを取っておきましょう。

記事執筆時点のcheckra1n 0.9 betaではMacの言語を英語に設定する必要があります。

追記:DFUモードに上手く入らない場合、Apple純正のUSB-CケーブルからUSB-Aケーブルにすることで改善される、もしくはサードパーティ製のケーブルを利用してみてください

1.checkra1n.appをアプリケーションへドラッグ&ドロップ



2.右クリックから開きアプリケーションを起動



3.ガイダンスに従って進めます



4.MacとUSBでデバイスを接続して「DFUモード」へ入れます



ガイダンスが表示されるので、それに従ってDFUモードに入れます。


あとは自動的に脱獄作業が開始されます。

完了すると以下のような画面になり、デバイスにcheckra1nのブートロゴが表示されます。



5.デバイスにcheckra1nのアプリが追加されるのでタップ



6.Cydiaをタップしてインストール



7.インストール作業が行われ、ホーム画面上にCydiaが表示されます





まとめ


checkra1nは、bootRom exproit「checkm8」を利用した脱獄のため、iOSのバージョンが上がってもAppleのソフトウェアアップデートでは修正できません。
仕組みについては、「checkra1n team」のLuca氏が発表したPDFのスライドで見ることができます。

Link: http://iokit.racing/oneweirdtrick.pdf

それによると、将来的には「デュアルブート」や「iOSデバイス上でLinuxを起動」するなどの研究目的に使用できるとのことです。

既知の問題についてはこちらを確認してください。





脱獄界隈では、iPhone X (A11)が最強になる時代になりました。

現在は再起動後にPCに接続して再脱獄する「semi-tethered(紐付き脱獄)」ですが、過去のように「untethered(紐なし脱獄)」することができるパッチが開発されることを願っています。

A12以降のデバイスは、iOS 13.2で修正されたカーネルexploitをしようして脱獄できる可能性もあるので、興味のある方はできるだけバージョンを上げないで待機しておきましょう。

Twitterで脱獄関連の最新情報をツイートしているので、興味のある方はフォローしてみてください。

iOS 13に対応した脱獄Tweakは、まだ少ないですが今後開発がされていくと思います。

私のパッケージもなるべく対応していきたいと考えています。

checkra1nの更新内容

checkra1n 0.9.8 beta

バグフィックス
  • 追跡できなかった多くのバグをを修正
その他の変更点
  • Linux版のリリース(CLI)
  • webra1nを導入(WebベースUI)
  • pongoOSを導入(詳細は後日発表とのこと)
  • ncursesを中心とした新しいCLIの追加されFastDFUをサポート
  • デバッグ用に「-version」オプションをCLIに追加
  • GUIとCLIにcustom boot-argsを追加
  • サポートされていないバージョンでも実行出来るようにするオプションを追加
  • iOS、iPadOS 13.3.1のサポート
  • インターネットアクセスがなくてもcheckra1n appを実行できるように
既知の問題
  • Apple TV 4Kは、脱獄が成功した場合でも-20エラーを生成します



checkra1n 0.9.7 beta

バグフィックス
  • GUIでデバイスモードの変更を検出できなかった問題を修正
  • 一部のiPadモデルの脱獄時にGUIがハングする問題を修正
その他の変更点
  • Apple TV 4Kのサポートを追加
  • 起動時にOTAアップデートを消去するように
  • iOS 13.3のサポートを追加
  • libimobiledeviceの依存関係を削除
  • tvOSのブートストラップ中にインターネット接続が利用できない状況を適切に処理するように
  • tvOS loaderアプリのコントロールセンターショートカットを追加
既知の問題
  • Apple TV 4Kは、脱獄が成功した場合でも-20エラーを生成します




checkra1n 0.9.6 beta

バグフィックス
  • 第6世代iPadのサポートを修正
  • A7デバイスが成功時にエラーコードを報告する問題を修正
  • loader(checkra1n)の「Restore System」機能を使用した後、起動時にjailbreakアプリのアイコンが表示される問題を修正
  • 長時間のアップタイム後に発生するエラーに対するloaderアプリの回復力を高める
  • 中国製iPhoneでLoaderとCydiaが 「no internet connection」 (インターネットに接続できません) というメッセージを表示して失敗する問題を修正
  • iPad ProのSmart Keyboardが接続解除される問題を修正
  • 高速充電が機能しない問題を修正
その他の変更点
  • 同一アプリ内からApple TVの脱獄をサポート
  • iPad第5世代、iPad Air第2世代、iPad Pro第1世代のサポートを追加
  • iOS 13.2.3のサポートを追加
  • コマンド・ライン・インタフェースをゼロから再設計
  • loaderの速度を大幅に向上
  • loaderdとfriendsのデーモンの問題を変更
  • 開発者向けにカーネルベースやその他の有用なものをエクスポート



checkra1n 0.9.5 beta

  • Apple IDからサインアウトする可能性がある問題を修正
  • MobileSubstrateの初期化が遅延する問題を修正
  • OTA更新プログラムをダウンロードし、一部のユーザーに問題を引き起こす可能性がある場合を検出
  • DFUモードにスムーズにアクセスできるようになったほか、多くのバグも修正



checkra1n 0.9.3.2 beta

  • 特定のデバイスでユーザー領域のおかしな動作を修正



checkra1n 0.9.3 beta

  • 一部のユーザーで生体認証が機能しなかった問題を修正
  • 一部のユーザーでタッチスクリーンが応答しなくなる問題を修正
  • loader(checkra1n)アプリがホーム画面に表示されない場合がある問題を修正
  • iPadのスマートキーボードが機能しなかった問題を修正
  • 一部のデバイスで高速充電機能が機能しなかった問題を修正
  • 一部のデバイスでTaptic Engineが動作しなかった問題を修正
  • 一部のユーザーのバッテリー設定が読み込まれない問題を修正
  • OTAアップデートをダウンロードした際、問題を引き起こす可能性がある場合を検出するように

  • このベータ版では、デバイスの安定性を向上させるために、substrateのローディングメカニズムが一から書き直されました。

    このベータ版には、no-substrateモードで起動するオプションも追加されています。この機能を利用するには、アプリのSafe Modeにチェックします。

    また、Verbose Bootにするオプションも追加されています。



checkra1n 0.9.2 beta

  • 脱獄中にApple Watchが通知を受け取らない問題を修正
  • DFUモードへの移行の信頼性を向上
  • macOS 10.10 Yosemiteでcheckra1nを使用できない問題を修正

  • このベータ版では、no-substrateモードで起動するオプションが追加されています。この機能を使用するには、デバイスの起動が完了するまで、リンゴのロゴが表示されたときにボリュームアップボタンを押したままにします。その後、問題の原因となっている微調整をアンインストールし、再起動して通常のジェイルブレイク状態に戻すことができます。



checkra1n 0.9.1 beta

  • CydiaをiPadにインストールすると、loaderアプリがクラッシュする問題を修正
  • macOSの言語が英語以外に設定されている場合のクラッシュを修正
  • iPad MiniがGUIで動作しない問題の修正
  • scpバイナリが期待どおりに機能しない問題の修正

  • このバージョンでは、一部のエラー、特に-20エラーの明確性も向上しました。これにより、現在、その解決方法に関するガイダンスが提供されています。