Google ha dichiarato di voler collaborare con i partner del suo “ecosistema” per poter rafforzare la sicurezza del firmware che interagisce con Android.
Ma questi processori SoC tanto “amati” da casa Google, cosa sono di preciso?
In breve, i processori SoC (System-on-Chip) sono dei componenti elettronici che si trovano all’interno di dispositivi come smartphone, tablet, smartwatch e altri dispositivi “smart”, per così dire.
Questi processori integrano in un’unica unità di elaborazione svariate funzionalità e svariate componenti, tra le quali ci possiamo mettere cose come la CPU (Central Processing Unit), la GPU (Graphics Processing Unit), la memoria (la RAM), il modem per la connessione a Internet, la connettività Wi-Fi e Bluetooth, e tantissime altre funzioni.
Sostanzialmente, i processori SoC sono come un mini-computer all’interno del dispositivo elettronico, che gestisce tutte le funzioni necessarie per far funzionare il dispositivo stesso; con questi processori, i dispositivi elettronici possono essere più efficienti, compatti e più facili da gestire, poiché si riduce il numero di componenti necessari e si semplifica l’interfaccia tra essi.
Quali sono le intenzioni di Google con questi chip?
Mentre il sistema operativo Android viene eseguito sull’application processor (AP), questo è solo uno dei molti processori di un sistema su chip (SoC) che si occupano di varie attività come le comunicazioni cellulari e l’elaborazione multimediale.
“Proteggere la piattaforma Android richiede di andare oltre i confini dell’Application Processor“, ha detto il team di Android. “La strategia di difesa in profondità di Android si applica anche al firmware in esecuzione su ambienti bare-metal in questi microcontrollori, poiché costituiscono una parte critica della superficie d’attacco di un dispositivo“.
Il gigante della tecnologia ha dichiarato che l’obiettivo è quello di rafforzare la sicurezza del software in esecuzione su questi processori secondari (cioè il firmware) e renderlo più difficile da sfruttare per sfruttare le vulnerabilità tramite la rete per eseguire codice remoto all’interno del Wi-Fi SoC o della baseband cellulare.
A tal fine, Google ha poi precisato che sta esplorando e abilitando nuovi processi di “pulizia” basati su compilatore e attivando funzionalità di sicurezza della memoria nel firmware come misure di protezione contro gli exploit.
Dati i vincoli di risorse associati ai target bare-metal, l’idea è di “rafforzare la superficie di attacco più esposta, minimizzando qualsiasi impatto sulle prestazioni/stabilità“, ha spiegato l’azienda con sede a Mountain View.
Un’altra area chiave è l’uso di linguaggi di programmazione a memoria sicura come Rust per scrivere il codice del firmware, continuando gli sforzi per ampliarne l’adozione in tutta la piattaforma.
“Rafforzare il firmware in esecuzione su bare-metal per aumentare materialmente il livello di protezione, su più superfici in Android, è una delle priorità di Android Security“, ha affermato Google.
Tutto bello in apparenza, ma c’è un “piccolissimo” problema
Andiamo con ordine: se iOS si aggiorna, ciò vale per tutti quelli che hanno iOS, se Windows 10 si aggiorna, vale per tutti, si può dire la stessa cosa di MacOS, ma i sistemi Android hanno aggiornamenti solo in base al produttore, non in base a Google.
In linea di massima si può dire che i sistemi operativi come iOS, Windows 10 e macOS ricevono aggiornamenti regolari da parte del produttore del sistema operativo (rispettivamente Apple e Microsoft), e questi aggiornamenti sono disponibili per tutti gli utenti che utilizzano quel sistema operativo.
Peccato che per quanto riguarda Android, è vero che Google rilascia regolarmente nuove versioni del sistema operativo Android, ma la disponibilità degli aggiornamenti dipende dai produttori dei dispositivi Android (Samsung, Asus, Oppo, etc.), poiché ogni produttore personalizza il sistema operativo Android per adattarlo ai propri dispositivi e, a volte, anche alle reti dei diversi paesi.
Come logica conseguenza, è possibile che questa “dispersività” possa essere problematica e che non tutti i produttori la adottino allo stesso momento, fermo restando che (ahimè!) molto spesso i telefoni Android non hanno supporti di aggiornamenti che durano a lungo, e purtroppo è difficile che questa funzione possa essere applicata tramite una delle applicazioni di sistema Google scaricabili dal PlayStore.
Questa miglioria voluta da Google potrebbe avere effetto anche su custom ROM come LineageOS?
Non è da escludere che anche sulle custom ROM basate su Android come LineageOS tutto ciò possa avere un qualche effetto (in modo più o meno diretto), ma dipende dal modo in cui il produttore della custom ROM ha implementato il firmware e dalle caratteristiche hardware del dispositivo.
Le custom ROM, come per l’appunto LineageOS, sono solitamente basate sul codice sorgente di Android, e il loro sviluppatore personalizza il sistema operativo per farlo funzionare su specifici dispositivi.
Tuttavia, alcune caratteristiche hardware o firmware potrebbero essere differenti da quelle dei dispositivi originali per i quali Android è stato progettato; in questo caso specifico, l’implementazione della sicurezza potrebbe variare anche rispetto a quella dei dispositivi originali.
Se il produttore della custom ROM ha implementato correttamente le misure di sicurezza fornite da Google, gli utenti di LineageOS potrebbero beneficiare dei miglioramenti di sicurezza descritti poc’anzi; da evidenziare che se la custom ROM ha modificato profondamente il firmware o le funzioni di sicurezza del sistema operativo, l’impatto di questa miglioria di casa Google potrebbe essere limitato o addirittura inesistente.
Il problema poi della “dispersività” di Android descritta derivata dal fatto che, con l’eccezione dei telefoni Pixel (che sono di Google), tutti gli altri sono di altri produttori, potrebbe addirittura ritardare non poco l’introduzione di questo algoritmo sul sistema operativo.
Può influire sui Chromebook?
Anche i Chromebook alla fine fanno parte dell’ecosistema Google, in pratica, probabilmente sì.
I Chromebook di fatto utilizzano processori SoC, pertanto le misure di sicurezza descritte potrebbero avere un impatto anche sulla sicurezza dei Chromebook. Tuttavia, è importante notare che i Chromebook utilizzano una versione personalizzata di Chrome OS (come gli Smartphone che Android “ognuno ha il suo”, vale anche per Chrome OS, per capirci), il sistema operativo basato su Linux sviluppato da Google, che ha giusto alcune differenze con Android.
Il firmware dei Chromebook è gestito dal firmware del Chromebook, che controlla il processo di avvio del sistema operativo e il caricamento dei driver hardware; il firmware del Chromebook è sviluppato da Google e dai produttori di hardware dei dispositivi, e non è lo stesso firmware utilizzato da Android.
In mezzo a tutto questo ambaradan va detto che molte delle stesse vulnerabilità e minacce di sicurezza che colpiscono Android possono anche colpire i Chromebook.
L’approccio di Google alla sicurezza dei SoC descritto nell’articolo può essere applicato anche ai Chromebook, ma è possibile che alcune delle misure descritte da Google siano già state implementate in modo diverso nel firmware del Chromebook.