diosra2’s blog

iOSの脱獄、ダウングレード

iOSの署名状況(β)

Downgrade_iPhone_5s

iPhone 5s

64bitデバイスをダウングレード・任意のバージョンに復元することは困難です。

条件付きですが、脱獄とtihmstar氏によるnonceEnabler、そしてtsscheckerにより取得したshsh2を利用して任意のバージョンに復元することは可能です。

 

現在のファームウェアバージョン

Build

復元するファームウェアバージョン

7.0-9.3.5

10.0-10.1.1

10.2-10.3.3

11.0-11.2

iOS 7

7.0

11A466

No

??

OK *1

No

7.0.1

11A470a

No

??

OK *1

No

7.0.2

11A501

No

??

OK *1

No

7.0.3

11A511

No

??

OK *1

No

7.0.4

11B554a

No

??

OK *1

No

7.0.6

11B651

No

??

OK *1

No

7.1

11D167

No

??

OK *1

No

7.1.1

11D201

No

??

OK *1

No

7.1.2

11D257

No

??

OK *1

No

iOS 8

8.0

12A365

No

??

OK *1

No

8.0.1

12A402

No

??

OK *1

No

8.0.2

12A405

No

??

OK *1

No

8.1

12B411

No

??

OK *1

No

8.1.1

12B435

No

??

OK *1

No

8.1.2

12B440

No

??

OK *1

No

8.1.3

12B466

No

??

OK *1

No

8.2

12D508

No

??

OK *1

No

8.3

12F69

No

??

OK *1

No

12F70

No

??

OK *1

No

8.4

12H143

No

??

OK *1

No

8.4.1

12H321

No

??

OK *1

No

iOS 9

9.0

13A344

No

??

OK *1 *2

No

9.0.1

13A404

No

??

OK *1 *2

No

9.0.2

13A452

No

??

OK *1 *2

No

9.1

13B143

No

??

OK *1 *2

No

9.2

13C75

No

??

OK *1 *2

No

9.2.1

13D15

No

??

OK *1 *2

No

9.3

13E233

No

??

OK *1 *2

No

13E237

No

??

OK *1 *2

No

9.3.1

13E238

No

??

OK *1 *2

No

9.3.2

13F69

No

??

OK *1 *2

No

9.3.3

13G34

No

??

OK *1 *2

No

9.3.4

13G35

No

??

OK *1 *2

No

9.3.5

13G36

No

??

OK *1 *2

No

iOS 10

10.0.1

14A403

No

??

OK *1 *2

No

10.0.2

14A456

No

??

OK *1 *2

No

10.1

14B72

No

??

OK *1 *2

No

10.1.1

14B100

No

??

OK *1 *2

No

14B150

No

??

OK *1 *2

No

10.2

14C92

No

??

OK *1 *2

No

10.2.1

14D27

No

??

OK *1

No

10.3

14E277

No

??

OK *1

No

10.3.1

14E304

No

??

OK *1

No

10.3.2

14F89

No

??

OK *1

No

10.3.3

14G60

No

??

OK *1

No

iOS 11

11.0

15A372

No

??

OK *1

No

11.0.1

15A402

No

??

OK *1

No

11.0.2

15A421

No

??

OK *1

No

11.0.3

15A432

No

??

OK *1

No

11.1

15B93

No

??

OK *1

No

11.1.1

15B150

No

??

OK *1

No

11.1.2

15B202

No

??

OK *1

No

11.2

15C114

No

??

Yes *3

No

11.2.1

15C153

No

??

Yes *3

No

11.2.2

15C202

No

??

Yes *3

No

11.2.5

15D60

No

??

Yes *3

No

11.2.6

15D100

No

??

Yes *3

No

11.3

15E216

No

??

Yes *3

No

11.3.1

15E302

No

??

Yes *3

No

 

*1: Jailbreakによる復元

tsscheckerでshsh2を保存している場合、nonceEnablerとshsh2のgeneratorを利用してNonceをセットして、任意のバージョンに復元することができます。

nonceEnabler.zip

*参考: https://ichitaso.com/jailbreak/how-to-up-downgrade-iphone5s/

復元手順は1→2→3です。 

 

*2: Recovery ModeのNonce衝突による復元

iOS 9.0-10.2(-10.3b1)の場合、Recovery ModeのNonceのうちの幾つか特定のものを複数回排出します。そのため、tsscheckerでその衝突するApNonceを含むshsh2を保存している場合のみ、脱獄なして復元できます。このバグはiOS 10.2.1で修正されました。

現在では、修正前のバージョンではiOS 10.2のみ復元可能なので、iOS 10.2→iOS 10.2→iOS 10.2 ...と復元を続ける場合のみは、理論的にはバージョン維持できるはずです。

復元手順は4です。

*3: DFUのNonce衝突による復元

 

1, nonceEnabler

この手順を使用する手法: *1

iOS 7.0-8.4.1、iOS 9.1の場合

evasi0n7, Pangu7, TaiGで脱獄した場合はtfp0パッチがすでに有効なので、ターミナルからrootでnonceEnablerを実行してパッチを当てます。

iOS 9.0-9.0.2の場合

Pangu9ではtfp0パッチがないので、cl0verを使ってtfp0パッチをしてからnonceEnablerを実行します。

iOS 9.2-9.3.3の場合

Pangu9では、tfp0パッチがないです。代わりに、@qwertyoruiopz氏の、jailbreakmeでjailbreakすることでhgsp4からnonceEnablerを当てることができます。

iOS 10.0.1-10.2の場合 (yalu102)

yalu102ではnonceEnablerはもともと有効なので、そのままで良いです。

iOS 10.0.1-10.3.3の場合 (doubleH3lix)

doubleH3lixではnonceEnablerはもともと有効なので、そのままで良いです。

iOS 11.0-11.1.2の場合

NonceSet1112を利用してnonceをセットします。(nonceEnablerは使いません。)

 

2, NonceをSetする (-iOS 10.3.3)

この手順を使用する手法: *1

shsh2の拡張子を.plistに変更し、plist形式のファイルに対応しているソフトウェア(Xcodeなど)で開きます。そして、generatorのHex値を記録します。

続いて、SSHやTerminalを起動してrootでログインし、以下のコマンドを入力します。[Nonce]にはgeneratorを値を入れてください。

root# nvram com.apple.System.boot-nonce=[NONCE]

 

3, 復元する

この手順を使用する手法: *1

続いで、復元の準備を行います。

iOS 10.2からiOS 10.3.3では、iOS 10.3.3のOTA署名を利用して復元できます。

この場合、iOS 10.3.3のFWを解凍し「Mav7Mav8-7.60.00.Release.bbfw」、「sep-firmware.n51.RELEASE.im4p」の2ファイルを取り出します。

次に10.3.3のOTAのBuildManifestを用意します。

例えば、iOS 10.2に復元する場合は、futurerestore、iOS 10.2のipsw、shsh2、BuildManifset、bbfw、sepを同じフォルダに用意し、以下のコマンドを入力することで復元が開始されます。

User$ ./futurerestore -t [shsh2] -b Mav7Mav8-7.60.00.Release.bbfw -p BuildManifest_iPhone6,1_1033_OTA.plist -s sep-firmware.n51.RELEASE.im4p -m BuildManifest_iPhone6,1_1033_OTA.plist iPhone_4.0_64bit_10.2_14C92_Restore.ipsw

 

4, NonceをSetし、復元する (iOS 9.0-10.2)

この手順を使用する手法: *2

iOS 10.2からiOS 10.3.3では、iOS 10.3.3のOTA署名を利用して復元できます。

この場合、iOS 10.3.3のFWを解凍し「Mav7Mav8-7.60.00.Release.bbfw」、「sep-firmware.n51.RELEASE.im4p」の2ファイルを取り出します。

次に10.3.3のOTAのBuildManifestを用意します。

例えば、iOS 10.2に復元する場合は、futurerestore、iOS 10.2のipsw、shsh2、BuildManifset、bbfw、sepを同じフォルダに用意し、以下のコマンドを入力することで復元が開始されます。

APTicket(shsh2)複数指定することもできます。Nonceが衝突するまでRecovcery Loopし、Nonceが衝突すると復元が開始されます。

User$ ./futurerestore -t [shsh2] -b Mav7Mav8-7.60.00.Release.bbfw -p BuildManifest_iPhone6,1_1033_OTA.plist -s sep-firmware.n51.RELEASE.im4p -m BuildManifest_iPhone6,1_1033_OTA.plist -w iPhone_4.0_64bit_10.2_14C92_Restore.ipsw

 

Copyright (C) 2017-2018 Diosra2. All Rights Reserved.