Il root store di Android richiedeva un aggiornamento OTA per aggiungere o rimuovere i certificati root. Questo non sarà il caso di Android 14.
Android ha un piccolo problema che alza la sua brutta testa solo una volta ogni luna blu, ma quando lo fa, provoca un po' di panico. Fortunatamente, Google ha una soluzione in Android 14 che risolve questo problema sul nascere. Il problema è che l'archivio dei certificati radice del sistema Android (root store) può essere aggiornato solo tramite un aggiornamento over-the-air (OTA) per la maggior parte dell'esistenza di Android. Sebbene gli OEM e i gestori siano migliorati nel distribuire gli aggiornamenti più rapidamente e frequentemente, le cose potrebbero ancora andare meglio. Ecco perché Google ha ideato una soluzione per rendere il root store di Android aggiornabile tramite Google Play, a partire da Androide 14.
Quando vai online ogni giorno, ti fidi che il software del tuo dispositivo sia configurato correttamente per indirizzarti ai server giusti che ospitano i siti Web che desideri visitare. Stabilire la giusta connessione è importante per non finire su un server di proprietà di qualcuno con cattive intenzioni, ma in modo sicuro anche stabilire tale connessione è importante, quindi tutti i dati che invii a quel server sono crittografati in transito (TLS) e, si spera, non possono essere facilmente spiato. Il tuo sistema operativo, browser Web e app stabiliranno connessioni sicure con i server su Internet (HTTPS), tuttavia, solo se si fidano del certificato di sicurezza del server (TLS).
Poiché ci sono così tanti siti Web su Internet, tuttavia, i sistemi operativi, i browser Web e le app non mantengono un elenco del certificato di sicurezza di ogni sito di cui si fidano. Invece, cercano di vedere chi ha firmato il certificato di sicurezza rilasciato al sito: è stato autofirmato o firmato da un'altra entità (un'autorità di certificazione [CA]) di cui si fidano? Questa catena di convalide può essere profonda diversi livelli fino a raggiungere una CA radice che ha emesso la sicurezza certificato utilizzato per firmare il certificato che alla fine ha firmato il certificato rilasciato al sito in cui ti trovi visitare.
Il numero di CA radice è molto, molto inferiore al numero di siti Web che hanno certificati di sicurezza emessi da loro, direttamente o attraverso una o più CA intermedie, rendendo così fattibile per i sistemi operativi e i browser Web mantenere un elenco di certificati della CA radice che Fiducia. Android, ad esempio, ha un elenco di certificati root attendibili che vengono spediti nella partizione di sistema di sola lettura del sistema operativo in /system/etc/security/cacerts. Se le app non lo fanno limitare i certificati di cui fidarsi, una pratica chiamata blocco dei certificati, per impostazione predefinita utilizzano l'archivio principale del sistema operativo quando decidono se considerare attendibile un certificato di sicurezza. Poiché la partizione "sistema" è di sola lettura, il root store di Android è immutabile al di fuori di un aggiornamento del sistema operativo, il che può rappresentare un problema quando Google desidera rimuovere o aggiungere un nuovo certificato root.
A volte, un certificato radice è sta per scadere, portando potenzialmente alla rottura di siti e servizi e ai browser Web che generano avvisi su connessioni non sicure. In alcuni casi, la CA che ha emesso un certificato radice è sospettato di essere dannoso o compromesso. O un nuovo certificato radice emerge che deve essere aggiunto a tutti i principali archivi principali del sistema operativo prima che la CA possa effettivamente iniziare a firmare i certificati. Il root store di Android non ha bisogno di essere aggiornato così spesso, ma capita abbastanza che il ritmo relativamente lento degli aggiornamenti di Android diventi un problema.
A partire da Android 14, tuttavia, il root store di Android ha diventano aggiornabili tramite Google Play. Android 14 ora ha due directory contenenti il root store del sistema operativo: il già citato, immutabile al di fuori dell'OTA /system/etc/security/cacerts e il nuovo /apex/com.[google].android.conscrypt/security/cacerts aggiornabile directory. Quest'ultimo è contenuto nel modulo Conscrypt, un modulo Project Mainline introdotto in Android 10 che fornisce l'implementazione TLS di Android. Poiché il modulo Conscrypt è aggiornabile tramite Google Play System Updates, ciò significa che lo sarà anche il root store di Android.
Oltre a rendere aggiornabile il root store di Android, Android 14 aggiunge e rimuove anche alcuni certificati root come parte dell'aggiornamento annuale di Google al root store del sistema.
I certificati radice che sono stati aggiunti ad Android 14 includono:
- AC RAIZ FNMT-RCM SERVIDORES SEGUROS
- CA principale del server sicuro ANF
- Autoridad de Certificacion Firmaprofesional CIF A62634068
- Certamente Radice E1
- Certamente Root R1
- Certum EC-384 CA
- CA principale attendibile Certum
- D-TRUST BR Radice CA 1 2020
- D-TRUST EV Radice CA 1 2020
- DigiCert TLS ECC P384 Radice G5
- Radice DigiCert TLS RSA4096 G5
- FIDUCIA GLOBALE 2020
- Radice GlobalSign E46
- Radice GlobalSign R46
- Radice HARICA TLS ECC CA 2021
- Radice RSA HARICA TLS CA 2021
- CA radice HiPKI - G1
- Radice ISRG X2
- Sicurezza Comunicazione ECC RootCA1
- Sicurezza Comunicazioni RootCA3
- Telia Root CA v2
- Tugra Global Root CA ECC v3
- Tugra Global Root CA RSA v3
- TunTrust radice CA
- CA principale di vTrus ECC
- CA radice di vTrus
I certificati radice che sono stati rimossi in Android 14 includono:
- Radice Camere di Commercio - 2008
- Radice globale di Cybertrust
- CA radice dell'ora legale X3
- CE-ACC
- Autorità di certificazione primaria GeoTrust - G2
- Global Chambersign Radice 2008
- Segno Globale
- Enti accademici e di ricerca ellenici RootCA 2011
- Autorità di certificazione delle soluzioni di rete
- Autorità di certificazione radice QuoVadis
- Sonera Class2 CA
- Staat der Nederlanden EV Root CA
- Staat der Nederlanden Root CA - G3
- TrustCor ECA-1
- TrustCor RootCert CA-1
- TrustCor RootCert CA-2
- Trustis FPS Root CA
- Autorità di certificazione radice universale VeriSign
Per una spiegazione più approfondita dei certificati TLS, dovresti leggere il mio collega L'articolo di Adam Conway qui. Per un'analisi più approfondita di come funziona il root store aggiornabile di Android 14 e perché è nato, dai un'occhiata l'articolo che ho scritto in precedenza a questo proposito.