Se è vero che i dispositivi Android sono attualmente i più diffusi e venduti, è altrettanto vero che sono tra i più insicuri. Come l’esperienza ci insegna, di vulnerabilità negli ultimi anni ce ne sono state molte. Quella trovata in MediaProjection è la nuova falla da aggiungere all’elenco, e non l’ultima.

Il bug è presente nelle versioni Lollipop, Marshmallow e Nougat, mentre in Oreo è già stato fixato. Non c’è però da stare tranquilli: circa il 77% dei dispositivi ne è affetto.

Il pericolo degli screenshot

MediaProjection è un servizio che permette di catturare screenshot e registrare l’audio di sistema, presente in Android fin dalla nascita. Nelle prime versioni, occorreva avere i permessi di root per utilizzarlo. A partire da Lollipop (5.0), però, il servizio è diventato accessibile a chiunque, e quindi anche ai malintenzionati. Essi infatti possono rubare screenshot e accedere alle informazioni sensibili, quali password e credenziali.

Il limite dell’utilizzo è dato dal fatto che l’utente visualizza una notifica che gli comunica che l’applicazione sta utilizzando il servizio. Tuttavia, l’ostacolo è facilmente aggirabile dall’hacker in quanto, dal momento che il messaggio viene visualizzato in un momento predefinito e immutabile, egli è in grado di mascherarlo.

MediaProjection e la richiesta dei permessi. La falla fa leva sull'overlay degli screen di Android.
Il messaggio di richiesta dei permessi mostrato da MediaProjection, che un malintenzionato può nascondere. Credits: http://thdev.tech

La tecnica usata per farlo è chiamata tap-jacking, ed è utilizzata già da diversi anni a causa della sua semplicità. Ciò che si fa è mostrare a schermo un messaggio per coprire l’originale, impedendo quindi all’utente di sapere cosa stia succedendo. La notifica viene infatti oscurata da schermate superiori, sfruttando gli overlay screen di Android. L’utente quindi non si accorge di ciò che accade, e il malintenzionato agisce liberamente.

Una storia costellata da vulnerabilità

MediaProjection non è l’unica falla trovata in Android, e sicuramente non sarà l’ultima. A cominciare dalla famosa Stagefright, presente nella versione 2.2, risalente al 2015. Qui la falla era presente in MediaServer, il framework che si occupava dei file multimediali. L’attaccante, tramite MMS, era in grado di inviare un file con un set di istruzioni che, se eseguite, gli permettevano di entrare in possesso del contenuto del dispositivo, ed operare modifiche sui file.

La ricezione di un MMS e attivazione di Stagefright
Stagefright in azione. La ricezione del contenuto multimediale fa sì che il codice malevolo venga eseguito. Credits: pro3xplain.com

Simili a questa erano le vulnerabilità CVE-2016-3861 e CVE-2016-3862, rese note nel Settembre 2016. La prima era insita in libutils, la stessa libreria su cui faceva leva Stagefright, e riguardava il sistema di conversione da UTF-16 a UTF-8. La seconda permetteva di eseguire codice inviando un’immagine in formato JPEG, inserito nei dati EXIF (i metadati del file grafico). Tramite buffer overflow, si iniettava il codice malevolo in una zona di memoria con istruzioni eseguibili.

Un mese dopo fece la sua comparsa DRAMMER, la prima vulnerabilità che faceva leva su componenti hardware. La falla era legata alla gestione delle memorie DRAM, e consentiva di manipolare i dati in memoria. La manipolazione avveniva tramite un bit-flip all’interno dei dati. Ciò poteva essere usato in maniera deterministica per modificare i contenuti.

Nel Novembre 2016 venne trovata una falla in Hover, il sensore di prossimità. Esso permetteva di eseguire comandi muovendo le mani vicino allo schermo, senza toccarlo. Il problema risiedeva nel fatto che i comandi venivano registrati in un log. Risultato? Nacque un keylogger, Hoover, in grado di memorizzare i comandi effettuati e i tasti selezionati, registrando la posizione del dito (o di un pennino). Si stimò che la sua precisione fosse del 79% nel caso di password, e del 95% in caso di email o messaggio, grazie al sistema di correzione automatico.

Schema di funzionamento di Hoover
Schema del funzionamento del keylogger Hoover, che sfruttava la vulnerabilità in Hover. Credits: securityinfo.it

Infine, nel Maggio 2017, il mondo conobbe Cloak&Dagger. Simile a MediaProjection, consentiva di nascondere comportamenti malevoli in schermate apparentemente innocue. Tra i possibili scenari c’era la registrazione di tasti digitali ed esecuzione di applicazioni con permessi illimitati.

Come proteggersi?

La soluzione è, in generale, sempre la stessa: mantenere aggiornati i dispositivi. Le vulnerabilità che colpiscono i telefoni Android possono essere eliminate del tutto soltanto con le patch rilasciate. Qualsiasi altro accorgimento può allontanare per un po’ la minaccia, ma non garantisce totale sicurezza.

Rimane però il problema della frammentazione dei dispositivi Android, causata dalla presenza di diversi produttori. Gli aggiornamenti non sono mai sincroni e unificati e, eccezion fatta per i Nexus (che sono appunto di proprietà Google), i tempi di attesa degli update per gli altri dispositivi sono molto vari e dilatati.

Fate sempre attenzione quindi a come utilizzate il vostro smartphone, rimanete informati e aggiornate immediatamente il device in presenza di update, soprattutto quando si tratta di sicurezza.