Alcuni dei migliori smartphone di punta di Samsung sono stati spediti con un importante difetto di sicurezza che potrebbe consentire ai cybercriminali una “banale decrittazione” di chiavi segrete e criptate, hanno avvertito gli esperti. Complessivamente, circa 100 milioni di dispositivi sono ritenuti a rischio, compresi i dispositivi di punta come i modelli Samsung Galaxy S21 e S20, insieme ai vecchi smartphone di fascia alta tra cui S8, S9 e S10.
La falla è stata scoperta da un gruppo di ricercatori di cybersicurezza, Alon Shakevsky, Eyal Ronen e Avishai Wool, dell’Università di Tel Aviv in Israele. Il loro lavoro ha portato alla scoperta di più vulnerabilità, tra cui CVE-2021-25444 e CVE-2021-25490, così come la successiva patch di ottobre 2021.
Crittografia mal implementata
Ecco i dettagli della falla, descritti il più brevemente possibile:
Le funzioni secondarie sensibili su praticamente tutti gli smartphone Android sono separate dalle “normali” applicazioni Android, attraverso il cosiddetto Trusted Execution Environment (TEE), supportato dalla tecnologia TrustZone di Arm. TEE fondamentalmente esegue il proprio sistema operativo, chiamato TrustZone Operating System (TZOS), mentre i singoli fornitori decidono se implementare o meno funzioni crittografiche all’interno del sistema operativo.
Allo stesso tempo, c’è l’Android Keystore, che offre una gestione delle chiavi crittografiche supportata dall’hardware attraverso il Keymaster Hardware Abstraction Layer (HAL), che Samsung ha implementato attraverso Keymaster TA – una Trusted Application su TrustZone.
Questo dà ai telefoni Samsung la possibilità di utilizzare i calcoli crittografici TEE in altre applicazioni che operano su Android.
Le chiavi crittografiche, o blob, memorizzate dal Keymaster TA, sono criptate tramite AES-GCM e memorizzate nel file system di Android. Il problema è che – mentre questi dovrebbero essere leggibili solo all’interno del TEE, in pratica – non è così.
Samsung ha implementato Keymaster TA in modo scadente in S8, S9, S10, S20 e S21, permettendo ai ricercatori di reingegnerizzare l’app Keymaster e ottenere le chiavi dai blob chiave protetti dall’hardware.
Commentando i risultati su Twitter, il professore associato di informatica presso il Johns Hopkins Information Security Institute, Matthew Green, ha detto che Samsung avrebbe potuto derivare una chiave diversa per ogni chiave protetta. “Ma invece Samsung fondamentalmente non lo fa. Poi permettono al codice dell’app-layer di scegliere le IV di crittografia. Questo permette una decrittazione banale”, ha dichiarato.