iOSダウングレードツール「Prometheus」がリリース。

本日、iOSハッカーであるtihmstar氏は、署名されていないiOSへのアップグレードまたはダウングレードができるツール「Prometheus」をリリースし、Youtubeにその使い方と解説が投稿されている。

このツールを使用することで、現在であれば、iOS9.3.3からiOS10.1.1や、iOS10.2からiOS10.1.1へのダウングレードやアップグレードを行うことが出来る。しかし、いくつか条件と注意点があるので確認しておこう。

具体的なダウングレード方法、またはアップグレード方法は後ほど追記する。

Prometheus(プロメテウス)

prometheus-1

Prometheusは、単一のGUIのツールではなく、以下の3つのツールをまとめたものである。

  • nonceenabler
  • futurerestore
  • img4tool

また現在は、Macでのみ利用可能となっており、WindowsとLinuxのバージョンは後で公開されるようだ。

2通りのダウングレード/アップグレード方法が存在

Prometheusを使ってダウングレードまたはアップグレードするには、2通りの方法が存在し、デバイスと環境によって、使用するものが変わってくる。

「nonceenabler方式」
1つ目は、現在脱獄している必要があるが高速な「nonceenabler方式」。これにはジェネレーターで保存されたshsh2 blobsが必要となる。

「nonce collision方式」
そして2つ目は脱獄している必要はないが時間がかかる「nonce collision方式」がある。これにはジェネレーターは不要だが特別なnonceで保存されたshsh2 blobsが必要とのこと。脱獄していない場合や現在署名されていないiOS10.2デバイスの場合は必然的にこちらの方式を使用する必要がある。

どちらもSHSH2 blobsが保存されている場合にダウングレードまたはアップグレードできる。これらの2つの方式によって、使用するツールが異なり、それぞれの使用法を説明した動画も公開されている。

使用前の注意点

移動できるiOSバージョンは現在のところ以下のようになっている。

現在のiOS移動先のiOS可否
iOS9.xiOS9.x
iOS10.xiOS10.x
iOS9.xiOS10.x
iOS10.xiOS9.x×
  • iPhone7(Plus)を除いた64bitデバイスで動作
  • 2通り方法があるが、移動したいファームウェアのSHSH2 blobsが保存されている場合のみ可能
  • 2通り方法が存在し、環境に合わせて使用する
    • 脱獄が必要だが高速な「nonceenabler方式(futurerestore)」。
    • 脱獄は不要だが時間がかかる「nonce collision方式」
  • iOS9.0.2はtfp0 patchが必要かも?(cl0ver

SEPとベースバンド

基本的に、SEPとベースバンドは、現在署名されているファームウェアから取得する必要がある。しかし、SEPとベースバンドは多くのiOSバージョンで互換性がないが、近いバージョンであれば互換性があり使用することができる。

現在iOS 10.2が署名されているため、SEPとベースバンドを使用可能となる。ただし、iOS10.1.1とは近いが、iOS9.xとは離れすぎているため移動することはできない。

iOS10.2からiOS10.1.1へダウングレード

iOS10.2からiOS10.1.1へダウングレードする場合は、署名中であるiOS10.2のSEPとベースバンドを使用する必要がある。iOS10.2が署名されている間はもちろんSEPもベースバンドも使用可能となる。

iOS10.2とiOS10.1.1のSEPとベースバンドはバージョンが互いに近いため互換性があり、ダウングレードが可能になる。使用する方式は、現在iOS10.2の脱獄がないため必然的にnonce collision方式で試す必要がある。もちろんSHSH2 blobsが必要。

iOS9.3.3からiOS10.1.1へアップグレード

iOS9.3.3からiOS10.1.1へアップグレードしたい場合も、iOS10.2のSEPとベースバンドを使用する必要がある。iOS10.2が署名されている間はもちろんSEPもベースバンドも使用可能となる。

iOS9.3.3とiOS10.1.1ではバージョンが離れているが、移動先のバージョンがiOS10.1.1であり、これは署名中である10.2と10.1.1のSEPとベースバンドは互いが近いことから、互換性があるということになる。

脱獄しているユーザーはnonceenabler方式で試す。そうでない場合はnonce collision方式。もちろんどちらもSHSH2 blobsが必要。

iOS10.2からiOS9.3.3へダウングレード

この組み合わせは不可能となる。例えiOS10.2のSEPとベースバンドが署名中であったとしても、10.2と9.3.3ではバージョンが離れすぎているため、SEPとベースバンドの互換性がないためできない。

 

nonceenabler方式

対象となるデバイスまたは環境

  • mac
  • 要脱獄
  • SHSH2 blobsを保存している

脱獄しているデバイス向けのダウングレードまたはアップグレード方法。こちらの利点はnonceと.shsh2ジェネレータが一致するので1回の試行で良い。脱獄しているデバイスは以下のnonce collision方式も使用できるが、nonceenabler方式の方が早いのでこちらが推奨される。

 

nonce collision方式(futurerestore)

対象となるデバイスまたは環境

  • mac
  • 脱獄は不要
  • SHSH2 blobsを保存している

脱獄していないデバイス向けの方法。Prometheus内のfuturerestoreというツールを使用し、署名のないファームウェアをデバイスに復元することが出来る。nonceenabler方式とは違い、nonceが一致するまで試行し続けるため時間がかかる。

 

参考・情報