Google ha illustrato, sul suo blog dedicato alla cybersicurezza, una nuova iniziativa volta a rendere il suo sistema operativo Android ancora più sicuro e resistente agli attacchi informatici. L’obiettivo degli sviluppatori di Mountain View - e dei tanti partner che nel corso degli anni hanno contribuito alla sua realizzazione - è il firmware, che in questo caso viene inteso come il software che spiega esattamente alle componenti hardware di un dispositivo, in particolare il SoC, come funzionare.
Spesso, per ragioni di semplicità e comodità, identifichiamo con termini come “SoC” e “processore” quella che è in realtà la CPU, o AP (Central Processing Unit o Application Processor), di fatto il chip che si occupa di eseguire giochi e applicazioni e caricare il sistema operativo, ma il SoC è il "contenitore" in cui si trovano molteplici processori, tra cui la CPU ma anche l’ISP, che si occupa di elaborare i dati ottenuti dalle fotocamere, è un processore; lo stesso quello che si occupa della comunicazione cellulare, generalmente chiamato baseband. E così via. Anche la GPU è di fatto un processore secondario, specializzato nelle operazioni grafiche (Graphics Processing Unit).
Proprio i processori secondari sono diventati bersagli sempre più comuni di exploit e attacchi informatici, osserva Google, specialmente negli ultimi dieci anni. La baseband, in particolare, è estremamente a rischio per la sua capacità di ricevere e inviare dati via wireless, e quindi è molto alto il rischio di attacchi da remoto. E finora si è fatto poco per proteggerli. Google e i suoi partner hanno quindi deciso di mettere in campo le conoscenze acquisite nell’irrobustire, diciamo così, il firmware delle CPU e applicare gli stessi princìpi anche ai processori secondari.
I dettagli precisi dell’iniziativa sono molto tecnici, e ne consigliamo la lettura solo ai più appassionati, o agli sviluppatori direttamente coinvolti in questo specifico settore. Vale comunque la pena segnalare l’impiego sempre più diffuso di Rust, un linguaggio di programmazione (nato in grembo a Mozilla, ironicamente) che per design è immune agli attacchi alla memoria. Rust è stato supportato a partire da Android 12, ma è in Android 13 che se n’è vista un’adozione più ampia, addirittura maggioritaria se si guarda solo al codice nuovo. Google vede molto potenziale per il linguaggio nella protezione dei cosiddetti componenti “bare-metal”, appunto i processori secondari che operano senza un sistema operativo e delle applicazioni proprie.