Pubblicità
Tech by VICE

Qualcuno ha messo online un pezzo fondamentale del codice sorgente di iPhone

Per gli esperti si tratta del "leak più grosso della storia."

di Lorenzo Franceschi-Bicchierai
08 febbraio 2018, 10:30am

Immagine: Rokas Tenys/Shutterstock 

Qualcuno ha appena pubblicato su GitHub quello che gli esperti sostengono essere il codice sorgente di una componente fondamentale del sistema operativo dell'iPhone — cosa che potrebbe aprire la strada agli hacker e ai ricercatori in sicurezza che cercano vulnerabilità in iOS, oltre a rendere più semplice il jailbreak dei dispositivi.

Il codice su GitHub è etichettato come "iBoot," che è la parte di iOS responsabile dell'avvio sicuro del sistema operativo. In altre parole, è il programma che carica iOS, il primissimo processo che viene eseguito quando accendi il tuo iPhone. Si carica, verifica che il kernel sia debitamente sottoscritto da Apple e poi lo esegue — è tipo il BIOS dell'iPhone.

Il codice è segnato come per iOS 9, una versione più vecchia del sistema operativo, ma di cui alcune parti sono facilmente ancora in uso su iOS 11.

Apple è sempre stata reclutante nel rendere pubblico il proprio codice, benché abbia realizzato certe parti di iOS e di MacOS open source negli ultimi anni. Ma è sempre stata particolarmente attenta alla sicurezza di iBoot e a mantenere il suo codice privato; non a caso, i bug riscontrati nel processo di boot corrispondono ai premi più alti nel programma bounty di Apple, che assegna ricompense pari anche a 200.000 dollari alla categoria.

"Questo è il leak più grosso della storia," mi ha detto in una chat online Jonathan Levin, autore di una serie di libri su iOS e Mac OSX. "È una roba seria."

Screenshot di una parte del codice sorgente di iBoot leakato.

Levin ha detto che il codice sembra essere quello reale di iBoot, perché si allinea con del codice di cui ha fatto reverse engineering lui stesso. Un secondo ricercatore in sicurezza esperto di iOS mi ha detto di pensarla uguale. Non sappiamo chi sia il responsabile del leak. Apple non ha risposto alla richiesta di commento.

Avere accesso al codice sorgente di iBoot offre una possibilità migliore ai ricercatori in sicurezza di iOS di trovare le vulnerabilità che potrebbero portare alla compromissione o al jailbreak del dispositivo, ha detto Levin. Il che significa anche che ora per gli hacker potrebbe essere molto più facile trovare difetti e bug che permettano loro di crackare o decriptare un iPhone. E, magari, questo leak potrebbe permettere prima o poi a programmatori esperti di emulare iOS su piattaforme non Apple.

Le vulnerabilità nelle versioni precedenti di iBoot hanno permesso a jailbreaker e hacker di infilarsi con la forza bruta nello screen bloccato di un iPhone e decriptare i dati dell'utente. Ma i modelli più nuovi i iPhone hanno un chip chiamato Secure Enclave Processor, che ha rafforzato la sicurezza del dispositivo.

Leggi di più: Una volta per tutte: qual è la differenza tra hacker black hat e white hat
Leggi di più: Due hacker ci hanno spiegato qual è l'app di messaggistica più sicura

Per gli utenti regolari, ha aggiunto Levin, questo significa che i jailbreak tethered — ovvero per cui è necessario che il telefono sia connesso a un computer mentre si avvia — potrebbero presto ripresentarsi. Una volta, questo tipo di jailbreak era relativamente facile da compiere e abbastanza comune, mentre ora è molto difficile che si presenti su dispositivi iOS aggiornati, che sono dotati di meccanismi di sicurezza talmente avanzati da rendere difficile anche per i ricercatori più competenti andare a caccia di bug, perché dovrebbero fare jailbreak del dispositivo prima di poterlo effettivamente sondare.

Sono queste migliorie di sicurezza che hanno fatto piazza pulita della comunità dedita al jailbreak, una volta piuttosto popolare. Ora come ora, trovare bug e vulnerabilità in iOS è una cosa che richiede una quantità di tempo e risorse significativa, il che rende gli exploit estremamente preziosi. Ecco perché la comunità di jailbreak si esalta per qualsiasi leak di codice sorgente o per qualsiasi exploit venga reso pubblico.

Il codice in questione è spuntato per la prima volta l'anno scorso, pubblicato da un utente Reddit chiamato "apple_internals" sul subreddit Jailbreak. Il post non aveva ottenuto grande attenzione allora, magari perché l'utente era nuovo e non aveva abbastanza Reddit-karma; insomma, è finito sepolto in fretta. Il fatto che ora sia però disponibile su GitHub significa che sta probabilmente circolando parecchio nella comunità di jaibreaker e nei circoli dedicati all'hack di iOS.

"iBoot è una delle componenti di cui Apple è più gelosa," ha detto Levin. "E ora è là fuori, sotto forma di codice sorgente."

Questo articolo è apparso originariamente su Motherboard US.

Tagged:
Tech
Motherboard
Apple
cybersecurity
iPhone
jailbreak
ιός
Infosec
sicurezza informatica
jailbreaking
iBoot
codice sorgente iBoot di iOS leakato
boot iphone