C’è una nuova grana che riguarda alcuni vecchi processori iPhone, e stavolta la vulnerabilità BootROM allarga il suo raggio d’azione fino a modelli che fino a poco tempo fa sembravano al sicuro. Il problema, scovato dal ricercatore di sicurezza Paradigm Shift, colpisce due chip della serie A firmati Apple, ovvero A12 Bionic e A13 Bionic. Il primo è il cuore di iPhone XR, iPhone XS e iPhone XS Max usciti nel 2018. Il secondo invece muove iPhone 11, iPhone 11 Pro, iPhone 11 Pro Max e iPhone SE di seconda generazione.
Cosa è il BootROM e perché non si può aggiustare
Il BootROM, conosciuto anche come SecureROM, è il primissimo pezzo di codice che un iPhone esegue quando viene acceso. Di solito, davanti a una falla del genere, Apple rilascia un aggiornamento software per tappare il buco prima che qualche malintenzionato lo sfrutti. Qui però il discorso cambia parecchio. Il difetto è inciso direttamente nel chip al momento della produzione, quindi non c’è nessuna patch che tenga. Una volta che il pezzo è uscito dalla fabbrica, è andata così.
La storia non è nuova. L’ultima falla di questo tipo risale al 2019 e si chiamava checkm8, e toccava i processori montati dai tempi di iPhone 4S fino a iPhone X. La nuova variante, battezzata usbliter8, allarga il problema ai chip che vanno da iPhone XS fino alla serie iPhone 11.
Un problema di hardware, non di software
La cosa interessante è che non c’entra nulla il software di Apple. Si tratta di un guaio legato al controller USB presente nel chip. Quando un iPhone vulnerabile si accende, riceve dati USB sotto forma di piccoli pacchetti. Funziona un po’ come un postino che consegna la posta ai vari chipset, con il controller che sistema questi pacchetti nella memoria.
Il baco scoperto da Paradigm Shift fa sì che pacchetti insolitamente piccoli, se inviati seguendo uno schema preciso, riescano a manipolare il puntatore interno che tiene il conto di dove dovrebbe finire il prossimo pacchetto. Invece di puntare in avanti verso la zona di memoria corretta, il puntatore torna indietro e i dati finiscono scritti in aree dove non dovrebbero mai arrivare. È questa reazione anomala a indicare che il problema sta nel controller USB e non nel codice di Apple.
In pratica la falla usbliter8 permette a chi ha tra le mani un iPhone colpito di eseguire codice proprio prima ancora che iOS si carichi, facendo partire software modificato ad hoc. La buona notizia c’è, per fortuna. Codici di sblocco e dati cifrati degli utenti restano al sicuro anche quando il difetto viene sfruttato.
L’unica via d’uscita non piacerà a molti
Secondo Paradigm Shift, l’unico modo per mettersi al riparo è passare a un iPhone più recente. Il processore A11 se la cava perché il puntatore viene azzerato dopo ogni pacchetto, mentre i chip A14 e successivi sono al sicuro perché Apple ha sistemato il difetto hardware nelle versioni più nuove del processore.
Il succo è che questa falla può ingannare l’iPhone e spingerlo a far girare codice non autorizzato. I modelli vulnerabili alle varianti checkm8 e usbliter8 del BootROM comprendono iPhone 4S con A5, iPhone 5 e 5c con A6, iPhone 5s con A7, iPhone 6 e 6 Plus con A8, iPhone 6s e 6s Plus con A9, iPhone SE di prima generazione con A9, iPhone 7 e 7 Plus con A10 Fusion, iPhone 8 e 8 Plus con A11 Bionic, iPhone X con A11 Bionic, iPhone XR, iPhone XS e iPhone XS Max con A12 Bionic, infine iPhone 11, iPhone 11 Pro, iPhone 11 Pro Max e iPhone SE di seconda generazione con A13 Bionic.
Prima dell’arrivo della variante usbliter8, il problema non si era mai visto su nessun iPhone successivo a iPhone X, uscito nel 2017. Il nuovo report di Paradigm Shift estende ora la lista dei modelli colpiti alla serie iPhone 11 del 2019 e al secondo iPhone SE.