Il jailbreak (letteralmente "evasione") è un termine che indica una procedura che rimuove le restrizioni software imposte da Apple nei dispositivi iOS (iPhone e iPod touch), iPadOS (iPad) e tvOS (Apple TV).

Permette di installare software e pacchetti di terze parti, non firmati e autorizzati da Apple, alternativi a quelli dell'App Store.

Dopo aver effettuato il jailbreak è possibile installare numerose applicazioni e modificare il software attraverso i tweak, scaricabili dagli store alternativi come Cydia, Zebra, Installer o Sileo. Un dispositivo jailbroken rimane comunque in grado di lanciare e aggiornare applicazioni comprate dallo store ufficiale.

Cydia è lo store alternativo più diffuso, mentre Icy e Rock sono altri pack manager non più supportati dagli sviluppatori. Jay Freeman "Saurik", lo sviluppatore di Cydia, nell'agosto 2008 sostenne che il jailbreak era stato effettuato da oltre 4 milioni di dispositivi, che al tempo erano il 10% dei 40 milioni degli iPhone e iPod touch venduti.

Il jailbreak è un processo che consentiva nei primi iPhone di sbloccare e utilizzare la parte telefonica. Se si acquistava un iPhone straniero oppure venduto come operator-lock, la parte telefonica poteva essere utilizzata solo nello Stato in cui era stato acquistato o in modo esclusivo dalle SIM di quel determinato operatore.

Aspetti legali Il jailbreak era diventato legale negli Stati Uniti a seguito della modifica della legge sul copyright dettata dal Digital Millennium Copyright Act effettuata dalla biblioteca del Congresso tramite l'ufficio federale del diritto d'autore e pubblicata il 26 luglio 2010 sul sito ufficiale. La pubblicazione di una nuova lista lo ha però reso nuovamente illegale a partire dal 26 gennaio 2013.

Il jailbreak non è paragonabile alla pirateria, a livello tecnico è soltanto lo sblocco del File system e l'installazione di Cydia. È raccomandato evitare di installare del codice da repository sconosciuti attraverso Cydia, poiché così facendo è possibile imbattersi in malware e altri software dannosi.

Se si esegue la procedura di jailbreak, questa fa decadere le garanzie offerte da Apple. A differenza di Android, quando si esegue lo sblocco della root nei dispositivi iOS, iPadOS o tvOS si possono riacquistare le garanzie ripristinando il dispositivo tramite iTunes, eliminando così il jailbreak.

Aspetti tecnici Modalità operative Per eseguire il jailbreak occorre utilizzare strumenti software sviluppati appositamente. Tra le principali applicazioni disponibili vi sono: Pangu, Absinthe, RedSn0w, Electra, unc0ver, Checkn1x.

Le modalità operative sono fondamentalmente due: tramite PC/Mac connesso al dispositivo; tramite app installata sul dispositivo.

Tipi di Jailbreak La sicurezza di un dispositivo informatico va a livelli. Ad esempio, quando avviamo l’iPhone dal tasto power, durante la fase di accensione in cui si vede la mela, prima di caricare la schermata della SpringBoard, in ordine cronologico si avviano nell'Hardware: Bootrom → LowLevelBootloader → iBoot → Device tree → Kernel.

Nella creazione di un jailbreak bisogna violare una delle seguenti fasi di avvio: come se fosse una catena, se si violano le fasi iniziali dell'avvio, sarà più facile violare le fasi successive. Ovviamente le fasi iniziali di avvio saranno più complesse da violare rispetto al kernel. Eccetto per gli exploit che violano la Bootrom, come per Limera1n e checkm8, tutte le altre falle di sicurezza possono essere facilmente corrette con un aggiornamento software. Tutti i jailbreak più recenti violano solamente il kernel di iOS.

Oggi è molto più complesso creare un jailbreak, visto che con gli anni Apple ha aggiunto sempre nuove protezioni per i suoi software. Con l'aggiornamento di iOS 9 Apple introdusse KPP, ovvero Kernel Patch Protection, rendendo più complesso modificare e iniettare "codice non ordinario" nel kernel, perché verifica con intervalli casuali che il kernel non sia stato infettato. Con l'introduzione del chip A10 Fusion presente su iPhone 7, KPP è stato integrato direttamente nell'hardware col nome di KTTR. Con l'introduzione del chip A12 Bionic venne introdotta una nuova misura di sicurezza PACs, Pointer Authentication Codes, con lo scopo di impedire la modifica dei puntatori a funzione e degli indirizzi di ritorno (puntatori a codice).

KPPLess è un metodo di jailbreaking sviluppato da xerub, che non richiede un bypass di KPP. Si va così a modificare parti del sistema non esaminate da KPP, in questo modo, aggirandolo.

PACless è un metodo di jailbreaking, sviluppato da pwn20wnd e Jakeashacks, che permette l'esecuzione dello sblocco dei processori A12 senza possedere un bypass PAC.

Quando un dispositivo viene avviato, esso carica inizialmente il proprio kernel Apple. Il dispositivo quando è violato, ogni volta che viene avviato, deve possedere il proprio kernel patchato.

Un jailbreak "untethered" ha la peculiarità che se l'utente dovesse spegnere e riaccendere il dispositivo, esso si avvierebbe con il kernel già patchato senza l'aiuto di un computer. Questi jailbreak sono più complessi da creare in quanto richiedono un exploit che colpisce un livello più basso della chain of trust.

Un jailbreak "tethered", ha la necessità di dover possedere un computer per poter avviare il dispositivo ogni volta che viene acceso. Se il dispositivo si avvia autonomamente, non avrà più un kernel patchato e potrebbe bloccarsi in uno stato parziale di avvio. Utilizzando un computer bisogna eseguire la funzione di boot tethered (tramite uno strumento di jailbreaking) ogni volta che il dispositivo viene acceso. Con un jailbreak tethered, l'utente può ancora riavviare la SpringBoard (respring) sul dispositivo senza dover eseguire un avvio patchato per mezzo di un computer.

Esiste una variante detta "semi-tethered", il che significa che quando il dispositivo viene avviato, non rimarrà più in uno stato parziale di avvio, tuttavia non avrà più un kernel patchato, non sarà in grado di eseguire il codice modificato, ma potrà essere utilizzato per tutte le funzioni normali come effettuare chiamate telefoniche o inviare SMS. Per utilizzare le funzionalità che richiedono l'esecuzione di un codice modificato, l'utente deve riavviare il dispositivo con un boot tethered, tramite l'aiuto di uno strumento di jailbreaking, per poterlo avviare con un kernel patchato.

Nel Luglio del 2016, il team di PanGu introdusse il jailbreak "semi-untethered", che funziona come una soluzione semi-tethered. Quando il dispositivo viene avviato, non ha più il kernel patchato, di conseguenza non sarà in grado di eseguire "codice modificato". Tuttavia non sarà più necessario l'utilizzo di un computer per ricaricare il kernel; per riattivare il jailbreak basterà eseguire un riavvio patchato per mezzo di un'applicazione installata sul dispositivo.

Storia

iOS & iPadOS

2007 Il primo metodo di jailbreak fu distribuito il 10 luglio. Era inizialmente concepito come mezzo per utilizzare suonerie personalizzate. Il 6 agosto venne distribuito il primo gioco per iPhone e iPod touch sviluppato da terze parti.

Il 10 ottobre, circa 3 mesi dopo l'uscita dell'iPhone, venne inventato un nuovo metodo di jailbreak. La Apple e gli hackers iniziarono un vero e proprio duello rispettivamente nel porre rimedio e nello scovare buchi nella sicurezza del sistema operativo originale. Successivamente gli hackers riuscirono a distribuire uno strumento per effettuare permanentemente il jailbreak untethered della versione 1.0 dell'iPhone OS.

Dopo la distribuzione dell'iPhone OS 2.0, l'iPhone Dev Team, un gruppo di hackers ha distribuito PwnageTool, una nuova applicazione dedicata al jailbreak che includeva un'interfaccia grafica.

2009 Nel gennaio il Gabx11 ha iniziato a lavorare sulla possibilità di effettuare il tethered jailbreak (modifica che rimane attiva fino al riavvio del dispositivo a meno che non lo si colleghi al computer, sull'iPod touch 2G). Il nuovo applicativo per l'iPod touch 2G fu chiamato "redsn0w lite" e l'aprile dello stesso anno è stata pubblicata la versione 0.1 di redsn0w.

Il 10 marzo è stato distribuito l'untethered jailbreak, che a differenza del precedente permette il riavvio del dispositivo, per l'iPod touch 2G grazie a un exploit trovato dal Chronic Dev Team e sviluppato grazie al contributo di "planetbeing", membro dell'iPhone Dev Team. Per effettuare questo jailbreak in un primo momento è stata sviluppata una patch grezza, priva di interfaccia grafica che è stata implementata solo il mese successivo da planetbeing in redsn0w.

Il 17 marzo Apple ha annunciato la distribuzione del firmware 3.0 dell'iPhone iOS. Tre mesi più tardi il Dev Team ha distribuito PwnageTool 3.0 e redsn0w 0.7.2 che hanno permesso agli utenti di iPhone EDGE, iPhone 3G e iPod touch con iPhone OS 3.0 di effettuare il jailbreak sia su Mac che su Pc.

Il 9 settembre 2009, Apple con la distribuzione di iPhone OS 3.1, correggendo nuovamente i bug che permettevano il jailbreak del dispositivo ma ancora una volta il Dev Team ha distribuito una modalità di jailbreak per tutti i dispositivi (con l'eccezione dell'iPod touch di terza generazione), la versione 3.1-3 di Pwnage Tool.

L'11 ottobre George Hotz, conosciuto in rete come geohot, ha distribuito "blackra1n", uno strumento che permette il jailbreak completo di tutti i dispositivi con iOS 3.1.2 (con l'eccezione dell'iPod touch di terza generazione sul quale esegue un tethered jailbreak).

Il 2 novembre Hotz ha distribuito una nuova versione di blackra1n, la "RC3", un aggiornamento che permette il jailbreak dell'iPhone 3G e 3Gs. Questo aggiornamento funziona anche sui nuovissimi dispositivi caratterizzati da un boot ROM aggiornata nella quale Apple ha risolto il bug "24kpwn" che veniva utilizzato nei precedenti jailbreak. Hotz ha inoltre sviluppato "blacksn0w", un'applicazione capace di sbloccare la nuova baseband "5.11.

2010 Il 3 maggio l'iPhone Dev Team distribuì Spirit, un jailbreak untethered e per tutti i dispositivi sia iPod touch, iPhone e iPad per gli iPhone OS 3.1.2, 3.1.3 e per iPad con iOS 3.2. Questo programma disponibile sia per Mac sia per Windows non concede lo sblocco della baseband per iPhone se aggiornato alla versione 3.1.3, invece con iPad qualche problema di incompatibilità con alcune applicazioni di Cydia.

2011 Il 4 aprile l'iPhone Dev Team distribuì la nuova versione di redsn0w, un nuovo strumento per il jailbreak unthetered di tutti gli iDevices Apple (tranne iPad 2) compatibili con il nuovo firmware ufficiale iOS 4.3.1. Il nuovo strumento disponibile sia per Mac che per Windows non concede lo sblocco baseband come già accaduto con le precedenti versioni. La distribuzione di questo nuovo strumento per il jailbreak è stato preceduto da forti polemiche da parte del Dev Team, paventando la presenza di programmatori del loro team sotto il libro paga di Apple, poiché con l'aggiornamento del firmware 4.3.1 viene chiuso un exploit mai reso noto dal Dev Team, utilizzato da oltre un anno per effettuare il jailbreak del firmware iOS. Tuttavia le accuse mosse dal Dev Team non trovano al giorno d'oggi riscontri nella realtà.

Il 6 luglio viene distribuito da Comex JailbreakMe 3https://www.jailbreakme.com/ , che permette tramite un exploit userland (che non richiede l'uso del computer) il jailbreak di iPod touch 3G e 4G, iPhone 4, iPad 1 e 2 con firmware 4.3.3. Finora l'iPad 2 non era ancora stato sbloccato a causa della correzione dell'exploit nella bootrom presente nel primo modello.

2013 Il 22 dicembre 2013 il Team evad3rs distribuì il suo jailbreak untethered, con lo strumento di evasi0n 7, compatibile con i dispositivi con le versioni di iOS 7.0 fino a 7.0.6.

2014