最近、iOS 10 と iOS 11 の両方に対応した脱獄ツールが次々とリリースされています。以前の記事でそれらの現状と違いについて説明しましたが、今日は sticktron による 64 ビット iOS 10.3.x オプションである g0blin についてより詳しく見ていきます。
iOS 10.x の 32 ビット デバイスは、tihmstar の h3lix という別のツールでサポートされており、今後はそれを使い続けることになります。
g0blin ツールは、以下を含むさまざまな既存の部品を使用して sticktron によって巧みに組み立てられました。
- Siguzaによるv0rtexカーネルエクスプロイトは、Ian Beerが発見した脆弱性に基づいて構築されています。
- Luca Todesco の Yalu102 による KPP バイパス、サンドボックス、コード署名
- tihmstarによるh3lixからの追加のサンドボックスパッチ
- Xerubのextra_recipeからのパッチファインダー
- ninjaprawnによるasync_wake_funからの追加のパッチファインダー作業
この脆弱性(カーネルエクスプロイトではないものの)は、iOS 11の脱獄ツールであるElectraとLiberiOSに使用されているものと同じです。g0blinが利用するYalu102のKPPバイパスにより、脱獄デーモンを使用せず、Cydia Substrateとその依存関係とすぐに互換性があり、Cydiaにバンドルされた従来の脱獄ツールとして機能します。このトピックに関する詳細は、最新の脱獄ツールの比較記事をご覧ください。KPPバイパスはCydiaとの互換性を容易にしますが、iOS 10.3.3まで、かつA7~A9デバイスでのみ動作します。そのため、iOS 11ツールでは使用できません。さらに、iOS 10.3.xではA10およびA10Xデバイスはg0blinによってサポートされません。
サポートされていないデバイスは以下のとおりです。
- iPhone 7
- iPhone 7プラス
- 10.5インチiPad Pro
- 12.9インチiPad Pro(2017年モデル)
KPPバイパスは、ジェイルブレイクプロセスに信頼性の低さをもたらし、成功するまでに何度か失敗する可能性があります。これはYaluやextra_recipeジェイルブレイクと同等であり、KPPを使用しないiOS 11ジェイルブレイクでは回避されています。
g0blin Release Candidate 2をiOS 10.3.1搭載のiPhone 6でテストしました(下図)。最近の脱獄ツールと同様に、Cydia Impactorを使用してアプリをデバイスにサイドロードしてください。
アプリがデバイスに表示されたら、「設定」 → 「プロファイルとデバイス管理」 と進み、アプリを信頼します。これでホーム画面から起動できるようになります。
以下の画像はg0blinのインターフェースです。左側の画像はメインインターフェースで、実行中のアプリのリビジョン、様々なシステム情報、そして 脱獄 ボタンが表示されています。右側の画像はクレジット画面で、問題が発生した場合にCydiaを強制的に再インストールするオプションも含まれています。
脱獄するには、 脱獄 ボタンをタップするだけです。下の黒いボックスに表示される成功メッセージが表示されます。失敗した場合は、デバイスを再起動し、成功するまで再試行してください。
初回起動時には、脱獄プロセスの一環として、アプリがCydiaをシステムにインストールします。脱獄が完了すると、アプリは以下のような画面を表示し、「 脱獄完了!」という メッセージも表示されます。
上記右側の画像でわかるように、g0blinには現在、ジェイルブレイク中のサードパーティ製アプリでTouch IDが機能しないという既知の問題があります。標準のAppleアプリはこのバグの影響を受けず、ジェイルブレイク解除後の状態に再起動することでTouch IDが問題なく再び機能します。多くの銀行アプリやショッピングアプリが長いログインプロセスの代わりにTouch IDを使用しているため、日常的に使用する上でこの問題は煩わしいものとなる可能性があり、RC3でこの問題が修正されることを期待しています。
脱獄が完了すると、上記のようにホーム画面からCydiaを起動できます。g0blinには動作するSubstrateが含まれているため、iOS 10.3.xと互換性があれば、すべての調整が期待通りに動作するはずです。iOS 10.2(以前から脱獄が利用可能)とiOS 10.3.xの間には比較的変更点が少ないため、ほとんどの調整は問題なく動作します。
これまでのところ、g0blinは脱獄後非常に安定しています。最初のエクスプロイトの実行には数回試行する必要がありますが、iOS 10.1.1搭載のiPhone 7で実行したextra_recipeほど難しくはありません。私の経験では、通常最初の5回で成功します。Touch IDのバグが修正されれば、g0blinは完全に機能するツールとなり、使用上の欠点はありません。また、iOS 10.3.xで脱獄を待っていたユーザーも、脱獄後にnonceを設定し、必要に応じてiOS 11に復元して、ElectraまたはLiberiOSで再脱獄できるようになります。もちろん、このためには保存されたblobが必要です。
g0blin を試してみましたか?感想はいかがでしたか?