Jailbreak iOS 7, primi dettagli tecnici: parlano gli evad3rs

David Wang, membro degli evad3rs, illustra il funzionamento del Jailbreak untethered di iOS 7: scopriamo come si comporta Evasi0n

Il rilascio del Jailbreak untethered di iOS 7 è ormai imminente: ne abbiamo parlato a lungo nei mesi scorsi, in una serie di articoli che potete trovare QUI. Oggi tratteremo nel dettaglio il funzionamento di Evasi0n basandoci sulle dichiarazioni ufficiali di un esperto hacker che ha contribuito in prima persona allo sviluppo del Jailbreak, David Wang.

Stando a Wang, uno dei membri più conosciuti della crew evad3rs, il Jailbreak si basa su almeno cinque bug distinti del codice di iOS.


Ecco come lavora Evasi0n:


Evasi0n inizia lanciando libimobiledevice, un programma che sostituisce iTunes nella comunicazione diretta con i dispositivi utilizzando lo stesso protocollo del software Apple. Tramite libimobiledevice Evasi0n sfrutta un bug nel sistema di backup di iOS per ottenere l’accesso a determinati settaggi che normalmente non dovrebbero essere visibili. Nello specifico, Wang parla di un file che indica la time-zone del dispositivo.

Il Jailbreak inserisce un link simbolico nel file menzionato da Wang e crea una scorciatoia tra due parti distinte del codice di iOS, consentendo di raggiungere un socket che ospita un canale di comunicazione esclusivo e soggetto a restrizioni. Evasi0n altera il socket che veicola le comunicazioni per mezzo di Launch Daemon, un processo che si carica ogniqualvolta un dispositivo che monta iOS accede alla fase di boot e che può avviare applicazioni che richiedono privilegi di root. Questo significa che ad ogni avvio del backup di dispositivi iPad o iPhone viene garantito l’accesso automatico dei programmi al file time-zone e, grazie al link simbolico, anche a Launch Daemon.

iOS possiede un altro controllo di sicurezza che di norma impedisce l’accesso a Launch Daemon, chiamato “Code-signing”. La restrizione richiede che tutto il codice in esecuzione sul dispositivo sia approvato da una firma digitale di Apple. Per aggirare il Code-signing Evasi0n lancia una nuova applicazione che non possiede nessun codice: quando l’utente accede all’applicazione il Jailbreak sfrutta un trucco di Unix chiamato “shebang” che duplica la firma digitale di un’applicazione approvata da Apple. Nel caso specifico, Evasi0n richiama Launch Daemon e la utilizza per inoltrare un comando di remount che modifica i settaggi della memoria trasformando il file system di iOS da “read only” a “writable”.

Una volta che il file system può essere sovrascritto il Jailbreak modifica il file launchd.conf e altera la configurazione di Launch Daemon, cosicché i settaggi di Evasi0n non si azzerino al riavvio del dispositivo (questo è un requisito fondamentale per ogni Jailbreak untethered).

A questo punto il device non è ancora jailbroken: occorre rimuovere tutte le restrizioni di basso livello integrate nel kernel, che impediscono l’esecuzione di app non approvate. Le restrizioni vengono gestite dal processo Apple Mobile File Integrity Daemon (AMFID). Evasi0n sfrutta Launch Daemon per caricare una libreria di funzioni all’interno di AMFID ogni volta che il sistema lancia un controllo di code signature. Wang non ha specificato i dettagli della procedura.

iOS possiede un altro controllo di sicurezza per impedire agli hacker di agire sulla memoria di sistema all’interno del kernel, lo “Address Space Layout Randomization” (ASLR). La misura difensiva sposta la locazione di memoria dove risiede il codice del dispositivo in modo casuale ad ogni avvio sel SO per impedire che venga rintracciato. Per aggirare il problema, Evasi0n sfrutta ARM exception vector, un trucco di allocazione della memoria che consente di scovare settori difficili da nascondere su device basati su chip ARM. ARM exception vector è una parte del kernel che gestisce i crash delle applicazioni e riporta l’indirizzo della locazione di memoria in cui il crash si è manifestato. Il Jailbreak simula un crash e controlla l’exception vector per mappare l’intera struttura del kernel in memoria.

Una volta che ASLR è stato aggirato, Evasi0n utilizza un bug dell’interfaccia USB di iOS che consente di trasferire qualsiasi indirizzo presente nella memoria del kernel ad un programma per poi sovrascriverlo. A questo punto, la procedura di jailbreaking è conclusa.

“Una volta che ti sei introdotto nel kernel, nessuna misura di sicurezza ha più importanza: hai vinto.” ha dichiarato Wang.

(St.S.)

TV

Anticipazioni Spagnole Una Vita: Maria Luisa grida il suo disprezzo alla madre morta

Maria Luisa testimone dell’ultima crudele confessione di Lourdes, esprime tutto il suo disprezzo di fronte alla bara della madre defunta.

TV

Amici 16: Michele Perniola perde la sfida ma viene ammesso nella scuola di Amici

Michele Perniola è entrato ufficialmente nel cast della sedicesima edizione di Amici di Maria De Filippi. Nonostante abbia perso la sfida con il beniamino del […]

Film

50 Sfumature di nero, Dakota Johnson su Vogue: “L’orgasmo è un dono di Dio”

Vogue US decide di celebrare l’arrivo al cinema di 50 Sfumature di nero regalando la copertina alla sua bellissima protagonista: Dakota Johnson  è di nuovo la […]

TV

Vladimir Luxuria rivela: a L’Isola dei Famosi “Sesso in cambio di un panino”

Vladimir Luxuria, prossima opinionista de L’Isola dei Famosi 2017, racconta di proposte indecenti nella nona edizione.

Gossip

Uomini e Donne: Sonia Lorenzini punta su Alessandro S. (e non solo lei)

Il trono rosa di Uomini e Donne sembra aver già stabilito il corteggiatore più amato: Alessandro Schincaglia alla corte di Sonia Lorenzini, ha conquistato la […]

TV

L’Isola dei Famosi 2017: Vladimir Luxuria nel ruolo di opinionista

Vladimir Luxuria torna all’Isola dei Famosi dopo essere stata concorrente e vincitrice nel 2008, opinionista e inviata rispettivamente nel 2011 e 2012.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Tag