Caso Apple: come ha fatto l'FBI a violare l'iPhone di San Bernardino?

Il caso scoppiato fra Apple e l’FBI continua a far parlare di sé, in una lotta che ha visto il mondo della tecnologia schierato in difesa della privacy. Ma come ha fatto l’agenzia americana a violare l’iPhone di San Bernardino?

speciale Caso Apple: come ha fatto l'FBI a violare l'iPhone di San Bernardino?
Articolo a cura di
Daniele Vergara Daniele Vergara viene alla vita con un chip Intel 486 impiantato nel cervello, a mo' di coprocessore. E' più che entusiasta di tutto ciò che riguarda la tecnologia intera e i videogames, con un occhio di riguardo verso l'hardware PC e l'overclocking. D'inverno ama snowboardare, macinando km e km di piste. Lo trovate su Facebook, Twitter e Google+.

Dopo molte settimane di telefonate, incontri e contatti, l'FBI non è riuscito ad ottenere il supporto di Apple per avere accesso al famoso iPhone del caso di San Bernardino. La collaborazione da parte di Cupertino avrebbe certamente semplificato la cosa, consentendo al governo di avere il PIN che avrebbe sbloccato il dispositivo in tempi più brevi. Ma Apple non ha ceduto, così l'agenzia governativa si è rimboccata le maniche e ha deciso di sbloccare da sé l'iPhone 5C della discordia. In realtà, sembra quasi certo che l'ente investigativo abbia ricevuto aiuto da una società esterna, ma alla fine ciò che conta veramente è il risultato finale. Risultato che ha avuto anche altre conseguenze oltre al semplice sblocco del telefono, riportando alla ribalta il tema della sicurezza dei dati, che non mancherà di arrivare fino al congresso e alla Casa Bianca, che dovranno decidere come risolvere situazioni simili in futuro, con leggi ad hoc. Nel frattempo, cerchiamo di capire meglio cosa è successo e soprattutto come ha fatto l'FBI a penetrare le difese messe in piedi da Apple per il suo smartphone.

Perché l'FBI ha richiesto l'aiuto di Apple?

L'iPhone 5C usato dai killer di San Bernardino protegge i dati utilizzando una chiave derivata dalla combinazione di un ID conservato nel processore del device e di un PIN impostato manualmente. Considerato che esso è composto da quattro cifre, abbiamo più o meno 10.000 differenti combinazioni fra le quali dover provare. Non è però così facile procedere per tentativi, perché un iPhone ha due diverse protezioni contro attacchi di questa tipologia; il primo consiste nell'inserimento di determinati ritardi fra un PIN sbagliato e l'altro. Il più lungo dura un'ora, mentre il secondo è opzionale ed instaura una cancellazione della chiave conservata nella CPU dopo 10 codici errati, portando alla permanente impossibilità di leggere le informazioni criptate. L'FBI ha chiesto ad Apple di realizzare un firmware modificato ad hoc per evitare queste problematiche - anzitutto la seconda, la più pericolosa. Tale firmware, per funzionare, dovrebbe girare nella modalità Device Firmware Update (DFU), un ambiente di basso livello che può essere impiegato per riportare alla vita gli iPhone che non sono più in grado di avviarsi correttamente. Per essere utilizzata, c'è la necessità di collegare il device in questione ad un computer su cui è installato iTunes e, a mezzo di questo software, flashare l'immagine di un firmware alternativo. Svilupparlo non dovrebbe essere operazione tanto complicata, soprattutto se pensiamo che determinati utenti sono capaci di produrre firmware per effettuare il jailbreak in svariate maniere. Il problema sta nel fatto che i dispositivi Apple non faranno mai girare un firmware che non ha la firma certificata dall'azienda produttrice. L'inghippo non c'è con il jailbreak, mentre è un chiaro ostacolo al software alternativo che l'FBI avrebbe voluto ottenere da Cupertino. E' ovvio che solo Apple è capace di generare un certificato valido e che, in tale casistica, l'agenzia statunitense non potrebbe procedere autonomamente. In soldoni, l'FBI non può sviluppare il codice necessario da sé, ed è per questo motivo che essa ha richiesto insistentemente l'aiuto di Apple.

Brute force o laser?

Quali sono, allora, le altre vie che l'FBI potrebbe avere utilizzato per accedere ai dati memorizzati nell'iPhone incriminato?
La più semplice sarebbe stata quella di effettuare attacchi di tipo brute force al PIN di accesso. Ciò è possibile però solo se la seconda protezione è disattivata, in quanto dopo dieci PIN sbagliati i dati andrebbero irrimediabilmente persi. Ammettendo che sia così, l'FBI potrebbe armarsi di tanta pazienza, eventualmente aspettare i vari ritardi fra l'immissione di un codice e l'altro, e tentare finché non sarebbe giunta al PIN corretto. I tempi però si sarebbero allungati troppo e avrebbero compromesso le indagini.
Considerando invece che la suddetta protezione sia stata attivata, ci sono altre strade da dover considerare. L'FBI potrebbe aver usato un laser a lunghezza d'onda specifica che, insieme ad un determinato tipo di acido, sarebbero in grado di rimuovere uno dei sottili strati del processore dell'iPhone, rivelando così la chiave su di esso nascosta. Se questa fosse nota, non sarebbe più necessario conoscere il PIN della schermata di sblocco. Il rischio di questo processo è abbastanza elevato, in quanto ogni piccolissimo movimento sbagliato può invalidare per sempre i dati contenuti all'intero del device.

SecureROM, il muro di Cupertino

Altro processo che l'FBI potrebbe aver seguito è rappresentato dall'andare alla ricerca di bug nelle linee di codice che controllano la firma digitale del firmware eseguito. Il software che effettua questi controlli si chiama SecureROM e non è detto che non abbia falle di sicurezza, le quali consentirebbero di far girare su un iPhone codice non verificato; anzi, molto spesso i cosiddetti jailbreaker sfruttano proprio dei buchi di SecureROM per modificare i dispositivi. Questi bug, tra l'altro, sono molto succosi per gli utenti che vogliono progettare il jailbreak, in quanto SecureROM impiega un codice che è strettamente legato all'hardware su cui gira. Ciò vuol dire che se si viene a conoscenza di una falla, Apple non può correggerla in poco tempo, perché ciò richiederebbe obbligatoriamente la rivisitazione dei componenti hardware dello smartphone. Solo cambiando fisicamente i componenti interni si potrebbero rattoppare tali buchi. In passato, i jailbreaker sono stati in grado di scoprire bug legati ai procedimenti con cui SecureROM carica le immagini, con cui verifica la firma digitale e con cui comunica tramite il protocollo USB. In queste circostanze, agli utenti è stato di fatto concesso campo libero per progettare un jailbreak funzionante. E' lampante che, sfruttando una di queste vulnerabilità, l'FBI sarebbe capace di costruire un firmware da sé e farlo girare sul dispositivo incriminato senza firma di Apple. L'intoppo della suddetta via è che non è detto che queste falle di sicurezza in SecureROM possano essere scovate in poco tempo.

PIN e hardware ID non fanno la vera chiave

Apple ha sempre limitato il numero di persone che possono far girare un firmware non adeguatamente firmato sui suoi dispositivi. Pochi, però, sanno come l'azienda di Cupertino esegue i test del suo software: in pratica, essa rimuove da SecureROM la parte di codice che si occupa della verifica della firma. La maggior parte delle aziende distribuisce dei sample particolari ai propri sviluppatori, senza i tipici controlli delle versioni consumer e quindi in grado di eseguire anche codice non firmato. L'FBI potrebbe quindi essere venuta in possesso di uno di questi particolari device per sviluppare in tutta tranquillità il proprio firmware, ma l'intoppo sta nel fatto che Apple - a differenza delle altre società - non distribuisce ai propri developer sample di questa tipologia. La compagnia di Tim Cook compie le operazioni di testing senza certificati fra le sue stesse mura, e sotto stretto controllo. A meno che l'agenzia statunitense non abbia qualche suo dipendente all'interno di Apple, è improbabile che abbia potuto sviluppare un firmware senza firma verificata da SecureROM.
Altro punto da considerare, sicuramente più interessante, è il modo in cui gli iPhone utilizzano la criptazione. La chiave generata dal PIN e dall'ID hardware non è quella utilizzata per criptare tutti i dati memorizzati. Questo perché se l'utente cambiasse il PIN allora il dispositivo dovrebbe ri-criptare tutti i file con una nuova chiave, in quanto ci sarebbe una diversa combinazione per il codice di sblocco e l'ID hardware. Per evitare questa problematica, gli ingegneri Apple si sono fatti furbi e hanno sfruttato una via alternativa: la chiave viene in realtà impiegata per criptare una seconda chiave, che è quella che realmente viene usata per proteggere le informazioni dell'utente. Quindi, se l'utente decide di modificare il PIN, allora l'iPhone modifica solo la "barriera" per accedere alla chiave che codifica il tutto, che rimane così identica.

I più potrebbero pensare che quindi la chiave può essere eliminata, ma Apple ha pensato di piazzarla in un'area di memoria particolare che non è subordinata alla normale gestione del filesystem. Di fatto l'utente non è in grado di vederla, ed anche dopo un reset di fabbrica questa resta intatta. Ricorderete, però, che qualche paragrafo più su abbiamo affermato che in seguito ad una serie di 10 PIN inseriti in maniera errata, iOS blocca il device; di conseguenza, il PIN viene eliminato e sorge la necessità di iniettare un nuovo codice proprio nella zona di memoria dedicata a questo dato. Se l'FBI fosse riuscito ad individuare tale area allora potrebbe installare un chip di memoria progettato ad hoc, contenente un generico PIN noto. Resterebbe quindi solo la saldatura vera e propria, così da rimpiazzare l'area di memoria normalmente utilizzata dall'iPhone per andare a recuperare il PIN. Il problema sta nel localizzare i blocchi incriminati, che di per sé è un'operazione complicatissima, senza contare che il disassemblaggio e la saldatura si portano dietro un fattore di rischio intrinseco.

Apple Come ha fatto l’FBI a sbloccare l’iPhone del caso di San Bernardino? Difficile a dirsi, perché le strade possibili sono diverse. Come abbiamo visto, alcune sembrano più fattibili di altre, quindi se dovessimo scegliere ci butteremmo su una di queste. Alcune voci suggeriscono che l’agenzia americana farà luce sulle ombre della questione nei prossimi giorni, svelando come ci è riuscita senza l’aiuto di Apple. Probabile che sia stata utilizzata una delle metodologie di cui abbiamo appena discusso, ma è anche possibile che gli ingegneri dell’FBI o di qualche agenzia esterna si siano inventati qualcosa di diverso e di alternativo. Insomma, staremo a vedere, ma a breve potrebbero esserci novità, che sveleranno il metodo di sblocco del terminale.