Evoluzione della Sicurezza di Android

Miglioramenti significativi della sicurezza delle principali versioni recenti di Android, a partire da Android 5.0 Lollipop (API 21).
Android 5.0 (API 21) - Lollipop
Security Enhancements - Android 5
Android 6 (API 23) - Marshmallow
Security Enhancements in Android 6
Android 7 (API 24) - Nougat
Security Enhancements - Android 7
- Trust Store di certificati separato per Utente e Sistema, il che significa che gli attacchi Man-in-the-Middle richiedono fondamentalmente accesso root da questo punto in poi, vedi Changes to Trusted Certificate Authorities in Android Nougat
- Aggiunto il supporto per Network Security Config così le app possono personalizzare il comportamento delle loro connessioni sicure (HTTPS, TLS) in modo semplice e dichiarativo, senza modifica del codice. Supporta anchor di fiducia personalizzate (quali Certificate Authorities (CA) l'app considera attendibili), override solo per debug, rinuncia al traffico in chiaro e certificate pinning (limitando quali chiavi del server sono considerate attendibili), vedi Network Security Config section of Android 7.0 for Developers
- Per impostazione predefinita, le app che hanno come target Android 7.0 si fidano solo dei certificati forniti dal sistema e non si fidano più dei Certificate Authorities (CA) aggiunti dall'utente, anche senza una Network Security Config personalizzata, vedi Default Trusted Certificate Authority of Android 7.0 for Developers
- Aggiornamento a Keymaster 2 con supporto per Key Attestation e version binding (impedendo il rollback a una vecchia versione non sicura senza perdere le chiavi), vedi Key Attestation section of Android 7.0 for Developers e Keymaster Functions e Verifying hardware-backed key pairs with Key Attestation e Key and ID Attestation
- Introdotto File Based Encryption (FBE), ma la sua implementazione è facoltativa per i produttori, vedi Direct Boot section of Android 7.0 for Developers e Support Direct Boot mode e Encryption
- Configurazione SELinux aggiornata: ulteriore irrigidimento del sandbox delle applicazioni, suddivisione dello stack mediaserver in processi più piccoli con permessi ridotti (mitigazione per Stagefright), vedi Security-Enhanced Linux in Android
Android 8 (API 26) - Oreo
Security Enhancements - Android 8