Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
AndroidSecurityEvolution — Miglioramenti significativi alla sicurezza delle recenti versioni principali di Android. | Kitploit
Strumenti/GitHubGitHub/balazsgerlei/androidsecurityevolution
Sicurezza AndroidCrittografiaSicurezza MobilePrivacyApprendimento e FormazioneRisorse Curate
GitHubbalazsgerlei/androidsecurityevolution

AndroidSecurityEvolution

Miglioramenti significativi alla sicurezza delle recenti versioni principali di Android.

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
Vedi Repository
187151 mese faRevisionato da Kitploit

Evoluzione della Sicurezza di Android

API last commit

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

  • A partire da agosto 2023, gli aggiornamenti di Google Play Services saranno ricevuti solo da questa versione di Android, vedi Google Play services discontinuing updates for KitKat (API levels 19 & 20) starting August 2023
  • Full Disk Encryption (FDE) per impostazione predefinita (i produttori possono ancora rinunciare), vedi Encryption e Security Enhancements in Android 5.0
  • SELinux completamente applicato, vedi Security Enhancements in Android 5.0
  • WebView è un pacchetto separato, vedi Security Enhancements in Android 5.0 e The Updatable WebView on Android 5.0 Lollipop What Is It and Why Should You Care?

Android 6 (API 23) - Marshmallow

Security Enhancements in Android 6

  • L'API Keystore è stata notevolmente estesa (primitive crittografiche simmetriche, supporto per AES e HMAC e sistema di controllo degli accessi per chiavi supportate da hardware) vedi Hardware-backed Keystore
  • Il TEE è un requisito, vedi Hardware-backed Keystore e 7.3.10. Fingerprint Sensor section of Android 6.0 Compatibility Definition
  • Nuova API (isInsideSecureHardware) per verificare se una chiave KeyStore è archiviata in hardware sicuro (ad esempio, Trusted Execution Environment (TEE) o Secure Element (SE)), vedi isInsideSecureHardware method of KeyInfo
  • Le app devono richiedere le autorizzazioni in fase di esecuzione vedi Runtime Permissions section of Android 6.0 Changes e Request runtime permissions e Security Enhancements in Android 6.0
  • SELinux più restrittivo (filtraggio IOCTL, irrigidimento dei domini SELinux, ecc.) vedi Security-Enhanced Linux in Android e Security Enhancements in Android 6.0

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

Android 8 (API 26) - Oreo

Security Enhancements - Android 8

  • La valutazione di JavaScript viene eseguita in un processo separato in WebView così il codice JavaScript non può accedere facilmente alla memoria dell'app, vedi What’s new in WebView security e Security section of Android 8.0 Behavior Changes for All Apps
  • WebView rispetta Network Security Config e il flag cleartextTrafficPermitted (sulle versioni precedenti di Android carica siti HTTP anche se il traffico in chiaro non dovrebbe essere consentito dalla configurazione), vedi Security section of Android 8.0 Behavior Changes for Apps Targeting Android 8.0
  • Aggiunta l'API Safe Browsing a WebView così gli utenti vengono avvisati quando tentano di navigare verso un sito potenzialmente non sicuro (verificato da Google Safe Browsing) se abilitata, vedi WebView APIs section of Android 8.0 Features and APIs
  • Il flag FLAG_SECURE della Window è supportato maggiormente e impedisce di catturare screenshot dello schermo dove è impostato
  • Aggiornamento a con riscritti in e in C++ (rispetto ai scritti in C) con supporto per , vedi e e

Android 9 (API 28) - Pie

Android 9 release notes - Security features

  • Il traffico di rete in chiaro (HTTP) è disabilitato per impostazione predefinita, le app devono impostare esplicitamente cleartextTrafficPermitted su true nella loro Network Security Config se vogliono ancora usarlo (sconsigliato), vedi Network TLS enabled by default section of Behavior changes: apps targeting API level 28+ e Android: Cleartext HTTP traffic not permitted Android 9
  • Aggiornamento a Keymaster 4 con supporto per la crittografia 3DES e importazione sicura delle chiavi, vedi Hardware-backed Keystore e Keymaster Functions
  • Sostituzione di molte implementazioni BouncyCastle degli algoritmi crittografici con quelle Conscrypt, vedi Conscrypt implementations of parameters and algorithms section of Android 9 Behavior changes: all apps
  • Aggiunto il supporto per Secure Element (SE) incorporato, vedi Secure Element (SE) service section of Android 9 release notes e CTS test for Secure Element
  • La Disk Encryption (può essere Full Disk Encryption (FDE) o File Based Encryption (FBE)) è obbligatoria per tutti i dispositivi (che vengono distribuiti con questa versione)
  • Introdotto che standardizza la UI mostrata durante l'autenticazione biometrica e fornisce alle app un'API migliore e più difficile da usare impropriamente; la soluzione precedente, , viene , vedi

Android 10 (API 29) - Quince Tart

Security Enhancements - Android 10

Android 10 release notes - Security features

  • Accesso ai file disabilitato per impostazione predefinita in WebView, vedi setAllowFileAccess method of WebSettings
  • TLS 1.3 diventa disponibile e abilitato per impostazione predefinita, vedi TLS 1.3 enabled by default section of Android 10 Behavior changes: all apps
  • I certificati firmati con SHA-1 non sono più considerati attendibili in TLS
  • Le app in background non possono avviare altre Activity (ad esempio altre app), vedi Background apps launching section of Android 10 release notes e Background activity restrictions section of Security and Privacy Enhancements in Android 10
  • File Based Encryption (FBE) è obbligatorio per i dispositivi che vengono lanciati con questa versione di Android (i dispositivi aggiornati a essa possono continuare a usare Full Disk Encryption (FDE)), vedi Encryption
  • Solo l'app Input Method Editor (IME) predefinita può accedere ai dati degli Appunti dallo sfondo, vedi Limited access to clipboard data section of Privacy changes in Android 10 e Clipboard data section of Security and Privacy Enhancements in Android 10
  • L'exploit StrandHogg 2.0 (CVE-2020-0096) non è più possibile (una patch per la vulnerabilità è stata anche backportata ad , e con l' - se il produttore ha rilasciato l'aggiornamento per un dispositivo), vedi e e

Android 11 (API 30) - Red Velvet Cake

Android 11 release notes - Secure

  • L'exploit di Task Hijacking (StrandHogg 1.0) (quando un'altra app imposta la propria taskAffinity sulla stessa dell'app target per indurre l'utente ad avviarla anche se intendeva avviare l'app target e usava la sua icona legittima) non è più possibile, vedi StrandHogg Attack / Task Affinity Vulnerability e Strandhogg Vulnerability
  • Le app non possono più interrogare informazioni su altre app installate per impostazione predefinita, vedi Package visibility filtering on Android e Package visibility in Android 11
  • Autorizzazioni runtime reimpostate automaticamente per le app inutilizzate, vedi Auto-reset permissions from unused apps section of Permissions updates in Android 11 e Auto-reset permissions of unused apps section of Request runtime permissions
  • Introdotto Scoped Storage, ma le app possono ancora rinunciarvi tramite requestLegacyExternalStorage, vedi Storage updates in Android 11 e Opt out in your production app section of Android storage use cases and best practices
  • Aggiunto l'autenticatore autonomo (non solo come fallback) DEVICE_CREDENTIAL (PIN, pattern o password) a BiometricPrompt

Android 12 (API 31) - Snow ConeSecurity Enhancements - Android 12 non è presente nel testo fornito? In realtà il link è Miglioramenti della sicurezza - Android 12

Note di rilascio di Android 12

  • Il flag android:exported deve essere definito esplicitamente nei Manifest per i componenti (Activities, Content Provider, ecc.) che dichiarano Intent Filter, vedere sezione Safer component exporting di Behavior changes: app destinate ad Android 12
  • Gli Intent web generici vengono risolti nell'app browser predefinita dell'utente a meno che l'app di destinazione non sia approvata per il dominio specifico contenuto in quell'Intent web; vedere sezione Web intent resolution di Android 12 Behavior changes: all apps
  • Ulteriori implementazioni BouncyCastle di algoritmi crittografici sono state sostituite con quelle Conscrypt; vedere sezione BouncyCastle implementation removed di Android 12 Behavior changes: all apps
  • L'utente riceve una notifica se un'app accede per la prima volta ai dati degli Appunti di un'altra app; vedere sezione System notification shown when your app accesses clipboard data di Copy and paste
  • Le app non possono più chiudere i dialoghi di sistema; vedere sezione Apps can't close system dialogs di Android 12 Behavior changes: all apps
  • Mitigazione del tapjacking: alle app viene impedito di consumare eventi touch quando una sovrapposizione oscura l'app, vedere Cloak & Dagger
  • Scoped Storage è sempre applicato, non è più possibile rinunciarvi tramite requestLegacyExternalStorage; vedere

Android 13 (API 33) - Tiramisu

Miglioramenti della sicurezza - Android 13

Note di rilascio di Android 13 - Sicurezza

  • Gli Intent non corrispondenti vengono bloccati dagli Intent filter (le app non possono inviare un Intent al componente esportato di un'altra app a meno che non corrisponda completamente all'Intent filter da essa definito); vedere sezione Gli Intent devono corrispondere agli intent filter dichiarati delle note di rilascio di Android 13 e Android 13 QPR
  • È consentita solo la crittografia basata su file (FBE); la crittografia completa del disco (FDE) non è più consentita, nemmeno per i dispositivi aggiornati da una versione in cui era consentita
  • Gli Shared UID sono deprecati. Venivano usati per condividere l'accesso alla sandbox tra due o più app e la possibilità di eseguire nello stesso processo. Potevano causare comportamenti non deterministici all'interno del package manager, quindi sarebbero stati rimossi in una futura versione di Android. Vedere Application Signing
  • Supporto Keymaster per primitive crittografiche simmetriche come AES (Advanced Encryption Standard), HMAC (Keyed-Hash Message Authentication Code), e algoritmi crittografici asimmetrici (inclusi Elliptic Curve, RSA2048, RSA4096 e Curve 25519)
  • Aggiunto il permesso runtime POST_NOTIFICATIONS per l'invio di notifiche non esenti (incluse quelle dei Foreground Services (FGS)) da un'app; vedere Notification runtime permission e android.permission.POST_NOTIFICATIONS
  • Le app necessitano del permesso runtime per mostrare i Toast quando non sono in primo piano. Questo può essere molto controintuitivo da spiegare agli utenti sul perché l'app ha bisogno del permesso di pubblicare notifiche se vogliono solo mostrarti messaggi Toast; inoltre i Toast non possono essere associati ai . Vedere

Android 14 (API 34) - Upside Down Cake

Miglioramenti della sicurezza - Android 14

Note di rilascio sulla sicurezza di Android 14

  • Introdotto il requisito minimo di targetSdk: le app destinate a versioni di Android precedenti ad Android 6 (API 23) non possono più essere installate. Questo significa che si può presumere che le restrizioni di sicurezza (in particolare la gestione dei permessi runtime in questo caso) introdotte con Android 6 (API 23) si applichino ora a tutte le app installate sul dispositivo (si prevede che questo minimo aumenti con ogni futura versione di Android); vedere sezione Minimum installable target API level di Behavior changes: all apps
  • Il nome dell'app che ha memorizzato un determinato file multimediale viene oscurato per impostazione predefinita (a meno che il suo nome pacchetto non sia sempre visibile ad altre app o che l'app che effettua la query disponga del permesso QUERY_ALL_PACKAGES - che richiede una speciale revisione manuale da parte di Google Play per essere ottenuto); vedere sezione Media owner package names might be redacted di Behavior changes: all apps
  • Aggiunta una descrizione ai prompt per il permesso di localizzazione che spieghi perché un'app potrebbe aver bisogno di questo permesso.
  • Miglioramenti significativi ad Hardware-assisted AddressSanitizer (HWASan), introdotto in Android 10 come strumento di rilevamento degli errori di memoria simile al deprecato AddressSanitizer che va a sostituire.
  • Aggiunto il supporto per rifiutare le connessioni cellulari con cifratura nulla, garantendo che il traffico voce e SMS su commutazione di circuito sia sempre crittografato e protetto da intercettazioni passive over-the-air; vedere Android 14 introduces first-of-its-kind cellular connectivity security features

Android 15 (API 35) - Vanilla Ice Cream

Note di rilascio sulla sicurezza di Android 15

  • Le app destinate a versioni di Android precedenti ad Android 7 (API 24) non possono più essere installate. Questo significa che si può presumere che le restrizioni di sicurezza introdotte con Android 7 (API 24) si applichino ora a tutte le app installate sul dispositivo; vedere sezione Increased minimum target SDK version from 23 to 24 di Behavior changes: all apps
  • Il sistema ora richiede i dati biometrici (se sono stati registrati) quando si cambia la modalità USB e il timeout dello schermo; vedere Android 15 verificherà che sia tu quando ti colleghi a un PC
  • Ulteriore mitigazione per il task hijacking (StrandHogg): se l'activity in cima termina un task, Android tornerà all'ultimo task attivo. Inoltre, se un'activity non in cima termina il suo task, Android tornerà alla schermata Home; non bloccherà la chiusura di questa activity non in cima; vedere sezione Other changes di Behavior changes: app destinate ad Android 15 o versioni successive
  • Ulteriore mitigazione per il task hijacking (StrandHogg): non è più possibile lanciare activity arbitrarie da altre app nel proprio task; vedere sezione Other changes di Behavior changes: app destinate ad Android 15 o versioni successive
  • Mitigazione per gli attaccanti che abusano di PendingIntent configurati in modo errato: i creatori di PendingIntent ora bloccano per impostazione predefinita l'avvio di Activity in background se la tua app è destinata ad Android 15 (API 35); vedere sezione Other changes di Behavior changes: app destinate ad Android 15 o versioni successive
  • Per impostazione predefinita, alle app non è più consentito portare lo stack dei task in primo piano a meno che il creatore del PendingIntent non consenta i privilegi di avvio di Activity in background o il mittente non abbia tali privilegi, se la tua app è destinata ad Android 15 (API 35); vedere

Android 16 (API 36) - Baklava

Note di rilascio sulla sicurezza di Android 16* Aggiunta sicurezza predefinita contro gli attacchi di reindirizzamento degli Intent, bloccando l'avvio di Intent ricevuti da altre app, ad esempio inclusi come extra nell'Intent che avvia l'app corrente, vedi Sezione sulla sicurezza migliorata contro gli attacchi di reindirizzamento degli Intent di Modifiche del comportamento: tutte le app

  • Nuova protezione per la privacy della posizione dell'utente da app dannose, durante il flusso di associazione dei dispositivi companion. Tutte le app companion in esecuzione su Android 16 non vengono più notificate direttamente del timeout di discovery tramite RESULT_DISCOVERY_TIMEOUT. Al contrario, l'utente viene notificato degli eventi di timeout con un dialogo visivo. Quando l'utente chiude il dialogo, l'app viene avvisata del fallimento dell'associazione con RESULT_USER_REJECTED, vedi Sezione sulle app companion non più notificate dei timeout di discovery di Modifiche del comportamento: tutte le app

  • MediaStore#getVersion() ora sarà univoco per ogni app. Questo elimina le proprietà identificative dalla stringa di versione per prevenire abusi e l'uso per tecniche di fingerprinting, vedi Sezione sul blocco della versione di MediaStore di Modifiche del comportamento: app che hanno come target Android 16 o versioni successive e metodo getVersion di MediaStore

  • Le app possono aderire volontariamente (opt-in) alla risoluzione rigorosa degli Intent tramite il proprio manifest. Gli Intent più sicuri (introdotti originariamente in Android 15 come parte di StrictMode) implicano che gli Intent debbano avere un'action non nulla e corrispondere al filtro degli Intent dell'app di destinazione per essere recapitati. È ora possibile applicare entrambe queste regole, oppure solo la corrispondenza del filtro degli Intent, vedi Sezione sugli Intent più sicuri di Modifiche del comportamento: app che hanno come target Android 16 o versioni successive e più specificamente la

Android 17 (API 37) - Cinnamon Bun

Note di rilascio sulla sicurezza di Android 17

  • Viene introdotto Android Contact Picker, un'interfaccia standardizzata e navigabile che consente agli utenti di condividere contatti con la tua app, senza bisogno del permesso READ_CONTATCS, vedi Sezione sul selettore contatti Android di Funzionalità e API

  • Non è più consentito il traffico loopback tra profili, vedi Sezione sul blocco del traffico loopback tra profili di Modifiche del comportamento: tutte le app

  • Applicato un limite (50.000 chiavi per le app non di sistema che hanno come target Android 17) al numero di chiavi che un'app può creare in Android Keystore, per proteggere questa risorsa condivisa, poiché questa memoria è limitata e condivisa tra le app. Se un'app tenta di creare chiavi oltre il limite, la creazione fallisce con una KeyStoreException, vedi Sezione sui limiti del keystore per app di Modifiche del comportamento: tutte le app

  • Nuove capacità di rilevamento per StrictMode (questo sarà applicato per impostazione predefinita in Android 18): attualmente, se un'app lancia un intent con un URI che ha l'azione ACTION_SEND, ACTION_SEND_MULTIPLE o ACTION_IMAGE_CAPTURE, il sistema concede automaticamente le autorizzazioni di lettura e scrittura dell'URI all'app di destinazione. A partire da Android 18, il sistema non concederà più automaticamente queste autorizzazioni, vedi Sezione sulla restrizione delle concessioni implicite di URI di Modifiche del comportamento: tutte le app

  • Abilitazione di Certificate Transparency per impostazione predefinita per le app che hanno come target Android 17 o versioni successive, vedi Sezione sull'abilitazione di CT per impostazione predefinita di Modifiche del comportamento: app che hanno come target Android 17 o versioni successive

Scarica lo strumento
  • 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
  • Keymaster 3
    Hardware Abstraction Layers (HALs)
    HAL Interface Definition Language (HIDL)
    Legacy HAL
    ID attestation
    Hardware-backed Keystore
    Keymaster Functions
    Key and ID Attestation
  • Introdotto Project Treble (solo i dispositivi rilasciati con questa versione supportano project Treble, quelli aggiornati non lo riceveranno), separando il codice vendor di basso livello dal framework di sistema Android e consentendo una consegna più semplice degli aggiornamenti di sicurezza, vedi Here comes Treble: A modular base for Android e Treble Plus One Equals Four
  • SELinux aggiornato per funzionare con Treble. La policy SELinux consente ai produttori e ai fornitori di SOC di aggiornare le proprie parti della policy indipendentemente dalla piattaforma e viceversa, vedi Security-Enhanced Linux in Android
  • Ulteriore hardening dello stack multimediale: spostamento dei Hardware Abstraction Layers (HALs) mobili dall'esecuzione in un processo condiviso all'esecuzione nei propri processi sandbox
  • Per consentire l'installazione di app da fonti sconosciute (cioè non da Google Play), le app necessitano di un'autorizzazione esplicita concessa dall'utente per la particolare app nelle impostazioni di Android (e gli utenti possono revocare tale autorizzazione e gestirla per app in qualsiasi momento), vedi User opt-in for unknown apps and sources section of Publish your app e Security section of Android 8.0 Behavior Changes for All Apps
  • BiometricPrompt
    FingerprintManager
    deprecata
    Show a biometric authentication dialog
    Android 8.0
    8.1
    9.0
    aggiornamento di sicurezza di maggio 2020
    StrandHogg Attack / Task Affinity Vulnerability
    StrandHogg 2.0 Exploit Explained - Why Users and Android App Developers should care
    Strandhogg Vulnerability
  • Introdotto Project Mainline (solo i dispositivi rilasciati con questa versione supportano project Mainline, quelli aggiornati a essa non possono riceverlo), basato su Treble, introdotto con Android 9 (API 26). Questo semplifica e accelera ulteriormente gli aggiornamenti di Android. Gli aggiornamenti Mainline, più comunemente noti come Google Play System Updates, rendono possibile consegnare più rapidamente selezionati componenti AOSP (l'elenco dei componenti aggiornabili cresce con le versioni più recenti di Android), senza bisogno di un aggiornamento OTA completo dal produttore del telefono, vedi Fresher OS with Projects Treble and Mainline e What Are Google Play System Updates on Android, and Are They Important?
  • I Toast con viste personalizzate (impostate tramite setView) non possono più essere lanciati dallo sfondo. Questo serve a mitigare alcuni attacchi Tapjacking che si basavano su tali viste per oscurare la UI di un'app vittima. Si noti che l'intero metodo setView è deprecato in Android 11 (API 30). Vedi documentation of setView method of Toast
  • sezione sull'opt-out nella tua app in produzione di Android storage use cases and best practices
  • Nuova opzione per concedere solo il permesso di accesso alla posizione approssimativa
  • Nuovi indicatori di privacy nella barra di stato per indicare all'utente quando un'app usa la fotocamera o il microfono
  • Introdotta l'API BiometricManager.Strings che fornisce stringhe localizzate per le app che usano BiometricPrompt per l'autenticazione.
  • Aggiunto il supporto per i sensori di impronte digitali sotto il display
  • Introdotto Fingerprint Android Interface Definition Language (AIDL)
  • Il flag FLAG_SECURE viene aggiunto per i prompt di credenziali biometriche o del dispositivo (PIN, pattern o password), sia per lo sblocco del dispositivo che per BiometricPrompt nelle app: questo significa che non è possibile catturare screenshot di queste schermate e che appaiono annerite anche nelle condivisioni dello schermo; vedere codice sorgente per com.android.systemui.biometrics.AuthContainerView su Android Code Search
  • Introdotti i Private Compute Services come partizione sicura per l'elaborazione di dati sensibili degli utenti sul dispositivo, utilizzati da funzionalità basate sull'intelligenza artificiale come Live Caption, Now Playing e Smart Reply. Google li definisce come "un ambiente di elaborazione dati sicuro e isolato all'interno del sistema operativo Android che ti dà il controllo sui dati al suo interno, ad esempio decidendo se, come e quando condividerli con altri". Vedere Presentazione dei Private Compute Services di Android, Google spiega ufficialmente come funziona Android Private Compute Core e white paper sull'architettura di Android Private Compute Core
  • Supporto del linguaggio Rust per lo sviluppo della piattaforma
  • I Toast sono limitati a due righe di testo e mostrano l'icona dell'applicazione in modo che gli utenti possano identificare quale app li mostra; vedere sezione Toast redesign di Behavior Changes: app destinate ad Android 12 e Panoramica sui Toast
  • canali di notifica
    codice sorgente di NotificationManagerService
  • Aggiunta una richiesta per singolo utilizzo per le app che richiedono l'accesso a tutti i log del dispositivo, dando agli utenti la possibilità di consentire o negare l'accesso; vedere Gestire i log del dispositivo su Android
  • Introdotto l'Android Virtualization Framework (AVF), che riunisce diversi hypervisor in un unico framework con API standardizzate.
  • Introdotto lo schema di firma APK v3.1; tutte le nuove rotazioni delle chiavi che usano apksigner useranno lo schema di firma v3.1 come predefinito per la rotazione mirata ad Android 13 e versioni successive.
  • Introdotte le Impostazioni con restrizioni per impedire alle app sideloadate (installate senza usare l'API di installazione basata su sessioni) di ottenere permessi considerati particolarmente pericolosi da Google (gli utenti possono comunque concedere manualmente questi permessi nelle Impostazioni di Android). Attualmente questo si applica all'Accessibilità e alla presenza di un listener di notifiche; vedere La funzione Restricted setting di Android 13 bloccherà le app dannose dall'accesso alle notifiche. Tieni comunque presente che le app dannose a conoscenza di questa restrizione possono aggirarla installando un'altra app tramite la suddetta API di installazione basata su sessioni dopo essere state installate, quindi le restrizioni non si applicano alla seconda app.
  • Aggiunto il supporto per più IMEI
  • AES-HCTR2 è ora la modalità preferita per la cifratura dei nomi dei file sui dispositivi con istruzioni crittografiche accelerate.
  • Se un'app è destinata ad Android 14 e usa Dynamic Code Loading (DCL), tutti i file caricati dinamicamente devono essere contrassegnati come di sola lettura; in caso contrario, il sistema lancerà un'Exception; vedere sezione Safer dynamic code loading di Behavior changes: app destinate ad Android 14 o versioni successive
  • Aggiunto il supporto per l'aggiornamento dei certificati radice tramite Project Mainline o, più comunemente noti come Google Play System Updates, quindi non è più necessario un aggiornamento OTA completo di Android per introdurre nuovi certificati CA o rimuovere quelli revocati; vedere Android 14 rende aggiornabili i certificati radice tramite Google Play per proteggere gli utenti da CA dannose
  • sezione Other changes di Behavior changes: app destinate ad Android 15 o versioni successive
  • Le finestre non visibili ora non vengono più prese in considerazione per l'avvio di Activity in background. Questo mitiga gli attacchi Denial of Service (DoS) e le pubblicità popup, oltre a fornire una mitigazione per il tapjacking totale o parziale e per il phishing a schermo intero; vedere sezione Other changes di Behavior changes: app destinate ad Android 15 o versioni successive
  • Nuove capacità di rilevamento per StrictMode (questo sarà applicato per impostazione predefinita in Android 16): gli Intent destinati a componenti specifici devono corrispondere con precisione alle specifiche intent-filter del componente di destinazione. Se invii un intent per avviare l'activity di un'altra app, il componente dell'intent di destinazione deve allinearsi con gli intent-filter dichiarati dall'activity ricevente, e gli Intent senza un'azione (azione impostata su null) non corrisponderanno più ad alcun intent-filter. Questo significa che gli intent usati per avviare activity o servizi devono avere un'azione chiaramente definita; vedere sezione Safer Intents di Behavior changes: app destinate ad Android 15 o versioni successive
  • Il creatore del PendingIntent viene trattato come mittente dell'intent contenitore, non come mittente del pending intent; vedere sezione Safer Intents di Behavior changes: app destinate ad Android 15 o versioni successive
  • Google Play Protect richiede la conferma tramite dati biometrici o credenziali del dispositivo (PIN, password o pattern usati per sbloccare il dispositivo) prima di installare app sideloadate destinate ad Android 10 (API 29) o versioni precedenti. Questo fa parte di uno sforzo continuo di Play Protect per combattere le app dannose, con probabili ulteriori prompt simili in arrivo (possibilmente anche senza richiedere una nuova versione del sistema operativo); vedere Google aggiungerà un ulteriore livello di protezione durante l'installazione di app losche (APK teardown)
  • D'ora in poi, non fornire le credenziali corrette a un BiometricPrompt per molte (5) volte blocca il dispositivo stesso. Se una credenziale biometrica (ad es. impronta digitale) non viene riconosciuta per così tante volte, il dispositivo può essere sbloccato solo con una credenziale del dispositivo sicura (PIN, pattern o password). Inoltre, se anche quella è già stata usata senza successo, è necessario attendere un timeout di 60 secondi prima di poter sbloccare il dispositivo. Questo comporta anche un cambiamento nel comportamento del BiometricPrompt: non può più "ripiegare" sulle credenziali del dispositivo dopo il fallimento biometrico per completare comunque l'autenticazione dell'utente. Nota che l'utente può comunque usare le credenziali del dispositivo per scelta tramite un pulsante sul prompt se tale autenticatore è consentito (e se non ha già fallito il prompt troppe volte). Quando il dispositivo viene bloccato, il prompt verrà annullato e sarà necessario attivare un nuovo prompt dopo lo sblocco del dispositivo per completare l'autenticazione. Vedere Android 15 fa sì che i ladri non possano prosciugare il tuo conto bancario se rubano il tuo telefono sbloccato
  • Sezione Implementazione
  • Quando un'app richiede le autorizzazioni per foto e video, gli utenti che scelgono di limitare l'accesso ai supporti selezionati vedranno tutte le foto di proprietà dell'app preselezionate nel selettore di foto. Gli utenti possono deselezionare uno qualsiasi di questi elementi preselezionati, revocando così l'accesso dell'app a quelle foto e a quei video, vedi Sezione sulle foto di proprietà dell'app di Modifiche del comportamento: app che hanno come target Android 16 o versioni successive

  • Aggiunto il supporto per i certificati di attestazione KeyMint (precedentemente Keymaster) versione 4.0. I certificati KeyMint 4.0 includono un nuovo campo moduleHash nella struttura KeyDescription, che può essere utilizzato per verificare l'integrità dei moduli APEX caricati, vedi Sezione sull'integrità del dispositivo delle note di rilascio di Android 16 e Attestazione di chiavi e ID

  • Consente di aderire alla Certificate Transparency, che è disabilitata per impostazione predefinita, ma sarà abilitata in Android 17, vedi Sezione sull'esclusione dalla certificate transparency della configurazione di sicurezza di rete