iDeviceReRestore avvia i dispositivi di ripristino a 32 bit su qualsiasi versione del firmware iOS 9.x.

Potresti ricordare le entusiasmanti novità del bug di ripristino di iOS 9.x per dispositivi a 32 bit, che iDB ha testato e segnalato durante la sua infanzia.

Se si dispone di BLOB per la destinazione, consente a qualsiasi dispositivo a 32 bit di ripristinare su qualsiasi firmware iOS 9.x, da qualunque avvio del firmware, senza bundle, chiavi o persino un jailbreak.

Come probabilmente puoi dire da quel sommario, questo è un potente bug e può dare una nuova vita a tutti i dispositivi a 32 bit. Insieme al jailbreak di Home Depot per iOS 9.1-9.3.4, i dispositivi legacy potrebbero non essere mai più senza jailbreak, in grado di tornare per sempre a iOS 9, senza paura di aggiornamenti o ripristini.

La buona notizia è che lo strumento di ripristino, doppiato iDeviceReRestore, è ora completo e rilasciato al pubblico. Essenzialmente una versione ottimizzata dello strumento consacrato dal tempo idevicerestore, @ alitek123, @Thmitt e @JonathanSeals hanno apportato le aggiunte necessarie per sfruttare il bug scoperto da @ alitek123, per portarci questo prodotto finito. Il beta test dello strumento è accreditato su @Mirko_tweets, @ee_csw e @ DjSn0wfall, gli ultimi due dei quali mi hanno anche aiutato con il mio beta test.

Se si desidera eseguire una prova dello strumento, è possibile trovarlo sul sito Web iDeviceReRestore. Attualmente si trova alla versione 1.0.1, risolvendo i problemi di dipendenza di cui soffriva la versione iniziale. Al momento non esiste un'edizione Windows dello strumento, con Linux e macOS le due piattaforme supportate, anche se ho visto storie di successo sull'uso dello strumento tramite una macchina virtuale.

Per quelli di voi che sono interessati alle proprietà e ai limiti dello strumento, fornirò qui una breve panoramica di ciò che può e non può fare.

Dettagli

  • Dispositivi a 32 bit solo.
  • Firmware di destinazione deve essere iOS 9.x.
  • L'avvio del firmware può essere qualunque, iOS 6-10 sono stati testati.
  • Avvio del firmware non richiede un jailbreak.
  • Il processo non richiede chiavi, bundle o nonce.
  • Processi richiede BLOB per il firmware di destinazione.
  • I BLOB hanno requisiti specifici. Non possono essere BLOB OTA. Possono essere BLOB di cancellazione o aggiornamento, anche se non tutti funzioneranno. Devono essere stati salvati senza un nonce. Se iniziano con la stringa MIIKkj, stanno decisamente bene. In caso contrario, potrebbero anche andare bene, ma dovranno essere controllati per essere sicuri.
  • La tecnica richiede una banda base firmata, come Prometeo. Tuttavia, tra le bande di base attualmente firmate per iOS 10 e le bande di base OTA firmate la maggior parte, se non tutti, i dispositivi dovrebbero essere in grado di ottenere una banda di base funzionante senza problemi.
  • iOS 9 -> I ripristini di iOS 9 possono essere eseguiti dalla modalità di recupero, iOS ≠ 9 -> I ripristini di iOS 9 devono essere eseguiti da DFU.
  • I BLOB devono disporre di un ticket iBSS separato da utilizzare per i ripristini DFU. In caso contrario, possono essere utilizzati solo per ripristini iOS 9- iOS 9.

L'ultima volta che ho riferito di questo strumento, si pensava che sarebbero trascorse almeno un paio di settimane nel suo completamento, ma grazie al rapido lavoro degli sviluppatori, è uscito prima del previsto. Se desideri verificare la compatibilità dei tuoi BLOB con iDeviceReRestore, puoi utilizzare questo strumento nonce-checker. In alternativa, apri il tuo BLOB in un editor di testo, controlla che abbia un ticket iBSS e controlla la sua stringa iniziale.

Secondo @ DjSn0wfall, questa tecnica non può essere patchata da Apple, per il seguente motivo. In modalità DFU, il dispositivo è in attesa di verificare un componente firmware firmato, che è iBSS. Quando viene caricato un BLOB con un ticket iBSS, non stiamo tecnicamente eludendo alcun meccanismo di sicurezza, ma ci consente di caricare successivamente un iBEC firmato e questo ha il bug no-nonce necessario. Da lì possiamo avviare un ripristino del dispositivo, annullando qualsiasi altra protezione del software e controlli di verifica. È interessante notare che il bug è parzialmente presente anche in iOS 8 e fino a iOS 10.2.1, ma non può essere sfruttato.

Userò questo strumento di ripristino regolarmente andando avanti sui miei dispositivi legacy, e non vedo l'ora di ascoltare tutte le storie di successo che hai anche su di esso.