Vulnerabilità in WhatsApp, basta una GIF per rubare dati dallo smartphone

WhatsApp per Android ha una vulnerabilità critica di tipo Double-free (“a doppia liberazione di memoria”) che, se sfruttata con successo, potrebbe consentire ai criminal hacker di compromettere i dispositivi Android, prenderne il controllo e rubare file e messaggi di chat semplicemente inviando un’immagine GIF contenente un codice di payload malevolo.

I dettagli della vulnerabilità in WhatsApp per Android

La vulnerabilità non risiede nel codice sorgente di WhatsApp ma in una libreria open source utilizzata dalla Galleria di WhatsApp ed in particolare nel modo in cui l’app genera un’anteprima per i file multimediali come immagini, video e GIF (che tra l’altro rappresentano uno dei contenuti più condivisi dagli utenti non solo su WhatsApp).

In particolari condizioni d’uso, il difetto di sicurezza causa una corruzione della memoria dello smartphone mandandolo in crash oppure, come nel caso di WhatsApp, consentendo ai criminal hacker di ottenere l’accesso al dispositivo con privilegi utente elevati.

La caratteristica di questa particolare vulnerabilità Double-free è dunque quella di consentire ai criminal hacker di sfruttare sia un exploit di tipo RCE (Remote Code Execution) per l’esecuzione del payload malevolo sia di tipo PoE (Privilege Escalation) nel contesto del processo di esecuzione di WhatsApp e quindi con i permessi che l’applicazione ha sul dispositivo.

In questo modo, il payload malevolo ha tutti i permessi di accesso in lettura e scrittura alla memoria dello smartphone (sia quella interna sia quella esterna su SD card) e al database dei messaggi. E avrà anche tutte le autorizzazioni già concesse a WhatsApp dall’utente, inclusa la registrazione audio, l’accesso alla telecamera, l’accesso al file system, alla sandbox stessa dell’app e così via.

Per sfruttare questa vulnerabilità, un aggressore non deve fare altro che inviare un’immagine in formato GIF sul dispositivo Android della vittima utilizzando qualsiasi canale di comunicazione (quindi non necessariamente la chat di WhatsApp) e attendere che l’utente semplicemente apra la Galleria dell’app di messaggistica per condividere un qualsiasi contenuto con un amico.

Infatti, poiché il bug risiede nella libreria usata da WhatsApp per mostrare l’anteprima dei file multimediali, l’utente non deve inviare nulla perché la semplice apertura della Galleria di WhatsApp nella quale adesso è memorizzata anche la GIF malevola inviata dai criminal hacker (e usata quindi come grimaldello) innescherà automaticamente la vulnerabilità.

Da questo momento, l’aggressore riesce a stabilire un collegamento diretto con il dispositivo della vittima e a prenderne il controllo.

L’unica accortezza che gli aggressori devono seguire, qualora decidessero di inviare la GIF alle loro vittime sfruttando una piattaforma di messaggistica come WhatsApp o Messenger, è quella di condividerla come documento e non come file multimediale: l’algoritmo di compressione delle immagini utilizzato dalle app di messaggistica per velocizzare la condivisione di questo tipo di file, infatti, potrebbe danneggiare il payload nascosto nell’immagine e quindi impedire di fatto lo sfruttamento della vulnerabilità.

Ecco come correggere la vulnerabilità

La vulnerabilità interessa la versione 2.19.230 di WhatsApp e le precedenti in esecuzione su Android 8.1 e 9.0, mentre non è possibile innescarla su Android 8.0 e su release inferiori del sistema operativo mobile di Google in quanto il dispositivo si bloccherebbe prima che venga eseguito il payload malevolo per una diversa gestione delle chiamate alle librerie di sistema.

La vulnerabilità è stata segnalata a Facebook, proprietaria di WhatsApp, alla fine di luglio di quest’anno ma l’azienda ha incluso una patch di sicurezza soltanto nella versione 2.19.244 dell’app rilasciata a settembre.

Per proteggersi da questa vulnerabilità e mettere in sicurezza lo smartphone è dunque necessario aggiornare WhatsApp il prima possibile all’ultima versione disponibile su Google Play.

Tuttavia, poiché la vulnerabilità risiede in una libreria open source, è possibile che anche altre applicazioni Android siano esposte ad attacchi simili. Per questo motivo, lo sviluppatore della libreria interessata, chiamata Android GIF Drawable, ha rilasciato a sua volta la versione 1.2.18 che corregge la vulnerabilità Double-free.

WhatsApp per iOS non è, ovviamente, interessato da questa vulnerabilità.