Attacco Man-in-the-Disk colpisce il sistema Android

DiMarco Nisticò

PUBBLICATO IL 20 Ago 2018 ALLE 09:00 - AGGIORNATO IL 4 Aprile 2020 ALLE 17:59 #sicurezza

L’attacco Man-in-the-Disk è l’ultima scoperta effettuata dai ricercatori di Check Point, azienda specializzata nella cybersecurity. Vediamo insieme come funziona.

Il sistema Android è certamente considerato uno tra i più personalizzabili che ci sia. E’ possibile impostarlo in maniera tale da poterlo adattare alle nostre esigenze. Bastano pochi minuti per poter avere in mano un dispositivo che riprenda il nostro stile di utilizzo. C’è da dire però che in quanto a sicurezza bisogna fare ancora dei passi avanti. Nonostante l’uscita di Android 9.0 Pie, il sistema operativo in questione continua ad essere vittima di attacchi informatici che potrebbero mettere a rischio i dati personali degli utenti. Durante il corso degli ultimi mesi abbiamo trattato diversi articoli che riguardavano la sicurezza informatica, da kit fai da te a falle di sicurezza su dispositivi LG.

Il primo consiglio è sicuramente quello di tenere costantemente aggiornato il proprio smartphone, installando eventuali aggiornamenti software, che potrebbero risolvere proprio dei problemi relativi alla sicurezza. In secondo luogo, ma non meno importante, evitare caldamente di installare applicazioni di dubbia provenienza. E’ esattamente questo genere di contenuti che permette agli hacker di poter prendere il controllo di un dispositivo e fargli fare qualunque cosa, dall’invio di malware o anche l’installazione di una botnet.

L’ultima scoperta dell’azienda Check Point riguarda la gestione dell’archiviazione esterna del sistema Android da parte delle applicazioni installate.

Android e l’attacco Man-in-the-Disk

Conoscerete, anche attraverso alcune nostre pagine, il cosiddetto Man-in-the-Middle, attacco informatico che prevede il dirottamento del traffico tra due dispositivi verso una terza persona esterna. In questi ultimi giorni si sta diffondendo un nuovo tipo di attacco, chiamato Man-in-the-Disk. 

Protezione Android Sandbox

Prima di parlare di questo problema, apriamo una piccola parentesi. Il sistema Android presenta una funzionalità denominata Sandbox. In pratica il sistema operativo isola le risorse necessarie delle varie applicazioni in esecuzione, attraverso la creazione di un ID unico (UID). In questo modo ogni applicazione possiede un proprio processo, andando a proteggere sia il sistema che le stesse applicazioni da possibili attacchi esterni. A questo punto Android utilizza l’UID per generare una protezione di tipo Sandbox. Dunque una possibile applicazione malevola non dovrebbe poter leggere eventuali dati di altre applicazioni, come anche informazioni sensibili sul sistema stesso.

External Storage

Parliamo ora della memoria esterna (External Storage)Con memoria esterna si intende uno spazio di archiviazione che non è regolato dal sistema di protezione Sandbox di Android. In questo campo rientrano, ad esempio, le schede microSD, che condividono la memoria tra tutte le applicazioni installate. Le applicazioni che vengono installate nella memoria esterna dovrebbero possedere un sistema di protezione e crittografia che ne impedirebbe l’accesso. Secondo la documentazione Android di Google, queste sono le linee guida per gli sviluppatori:

  • Eseguire la convalida dell’input quando si gestiscono i dati di archiviazione esterna
  • Non archiviare eseguibili o file di classi nella External Storage
  • I file dell’External Storage devono essere signati e verificati in maniera crittografica per un avvio dinamico

In poche parole, ogni app installata nella memoria esterna deve essere protetta in modo tale che nessun malintenzionato possa accedere ai dati di tale applicazione. Il problema qual è? Che svariate applicazioni, anche ufficiali di aziende molto note, non rispecchiano le linee guida menzionate sopra, esponendo gli utenti a rischi considerevoli. Alcune delle app coinvolte sono Google Translate, Yandex Translate, Google Voice Typing, LG Application Manager, LG World, Google Text-to-Speech e Xiaomi Browser. Dunque non si tratta di una vulnerabilità riguardante applicazioni poco affidabili ma di programmi che sono stati scaricati ed installati milioni di volte, esponendo migliaia di utenti ad eventuali attacchi.

Funzionamento del Man-in-the-Disk

Uno degli attacchi in questione è proprio il Man-in-the-Disk, che permette a dei malintenzionati di entrare e confondersi con i dati memorizzati nella memoria esterna.

Attacco Man-in-the-Disk su sistema Android

Prendiamo ad esempio il caso di un semplice aggiornamento di un applicazione. Per poter aggiornare un’app, quest’ultima dovrà effettuare una richiesta ad un server esterno. Tale richiesta passerà prima per la External Storage, che andrà ad archiviare inizialmente sia il codice originale che quello aggiornato richiesto dall’utente.

E’ a questo punto che entra il gioco il Man-in-the-Disk. Infatti è qui che un possibile hacker può andare a modificare la natura di quell’aggiornamento, sostituendolo ad esempio con un software malevolo che può risultare perfettamente normale agli occhi dell’utente, magari presentando un’icona molto simile a quella del programma originale. In questo modo l’utente riterrà l’aggiornamento comunque attendibile e lo installerà, non sapendo che ha invece installato una vera e propria minaccia per il proprio dispositivo.

Da questo punto in poi il malintenzionato ha il pieno controllo della memoria esterna, con la possibilità di poter manipolare e modificare i dati archiviati nella memoria esterna. Gli effetti di questo attacco molto essere molteplici e variare a seconda delle intenzioni di chi effettua l’attacco. Si può passare da un semplice virus ad un vero e proprio miner che può agire all’insaputa dell’utente, andando a danneggiare irrimediabilmente il dispositivo.

I ricercatori di Check Point hanno potuto testare questa vulnerabilità con l’utilizzo alcune delle applicazioni menzionate sopra, andando a sfruttare questa falla per bloccare il funzionamento di tutte le applicazioni presenti nella memoria esterna. Compromettendo opportunamente alcuni file delle applicazioni è possibile mandare in crash ogni file o programma presente nell’External Storage, obbligando l’utente a formattare o reinstallare tutto sul sistema Android.

Il fatto è che molte di queste applicazioni vengono preinstallate sui dispositivi, dando accessi che l’utente non ha modo nè di modificare nè di rifiutare, aprendo una finestra di opportunità per gli hacker.

Purtroppo l’utente non può fare molto per proteggersi da questo attacco, se non aggiornare costantemente le app installate e sperare che venga rilasciato un aggiornamento che risolva il problema. In teoria dovrebbero essere gli sviluppatori stessi che dovrebbero fare in modo che le applicazioni siano sicure e che non offrano possibilità a persone esterne di prendere il controllo dei nostri dati. Purtroppo in molti casi può avvenire l’irreparabile.

Fonte: Check Point

Di Marco Nisticò

Sviluppatore informatico, cerco sempre di stare al passo con i tempi in un mondo ormai circondato dalla tecnologia.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.