Spyware WhatsApp: perché bastava una telefonata per avere i nostri dati?

Facciamo chiarezza in merito al recente spyware che ha colpito WhatsApp: ecco perché agli hacker bastava una semplice telefonata.

Spyware WhatsApp: perché bastava una telefonata per avere i nostri dati?
Articolo a cura di

Una delle notizie più popolari delle ultime ore in ambito tech è stata sicuramente la scoperta di uno spyware legato a WhatsApp, che ha consentito ai malintenzionati di accedere ai messaggi, alle chiamate, al microfono, alla fotocamera e a molti altri dati degli ignari utenti semplicemente tramite una "telefonata truffa".
Il Gruppo Facebook ha già confermato l'esistenza dello spyware tramite una pagina dedicata al problema di sicurezza di WhatsApp e attraverso un comunicato pubblicato sulle pagine del Financial Times, facendo sapere agli utenti che il relativo aggiornamento di sicurezza è già stato rilasciato e consigliando loro di procedere all'installazione dell'ultima versione dell'applicazione.
Tuttavia, al momento non è ancora possibile sapere né il numero di utenti colpiti né chi sono questi ultimi, visto che sicuramente ci saranno indagini interne in corso da parte del Gruppo Facebook.

D'altronde la questione è delicata, visto che sembra ci siano di mezzo motivazioni politiche. "L'attacco possiede tutte le caratteristiche per essere stato effettuato da una nota società che fornisce spyware ad alcuni governi", ha dichiarato l'azienda statunitense dopo l'attacco. Facebook non ha quindi fatto nomi in tal senso, ma la stampa internazionale ha subito associato questa descrizione all'azienda israeliana NSO Group, anche se al momento in cui scriviamo non sono emerse, perlomeno pubblicamente, prove certe e la società coinvolta ha dichiarato che lo spyware Pegasus non può essere utilizzato liberamente e si deve per forza ottenere l'autorizzazione delle agenzie di intelligence e delle forze dell'ordine per fare una cosa simile. Insomma, la situazione è ancora molto confusa, ma andiamo a fare un po' di chiarezza in merito allo spyware.

Ma è possibile che si riesca ad accedere ai nostri dati tramite una semplice telefonata?

Dopo lo spargersi della notizia, numerose persone hanno iniziato a esprimere perplessità in merito ai metodi di sicurezza utilizzati da WhatsApp, mentre ad altre è sembrato impossibile che una semplice telefonata potesse dare in mano agli hacker tutti questi dati. Ebbene, in questo caso la stampa non sta esagerando: era davvero possibile che dei malintenzionati facessero questo, ma vanno fatte alcune precisazioni.
Innanzitutto, stiamo parlando di telefonate VoIP (Voice over IP), ovvero di chiamate effettuate tramite l'utilizzo di una connessione a Internet. Si tratta quindi di quelle telefonate che vengono effettuate direttamente tramite WhatsApp e non delle normali chiamate che avvengono tramite i minuti offerti dall'operatore telefonico.

La possibilità di effettuare chiamate VoIP tramite WhatsApp è stata introdotta nel 2015 e finora non aveva mai avuto problemi di sicurezza in tal senso. D'altronde, scoprire una falla di questo tipo non è certamente un gioco da ragazzi e bisogna disporre di professionisti e di parecchie risorse. Insomma, l'ipotesi di Facebook che si tratti di qualche azienda legata ad alcuni governi risulta piuttosto plausibile all'atto pratico.

Ma perché bastava una telefonata VoIP per accedere ai dati? Ebbene, il metodo scoperto e utilizzato dai malintenzionati era quello di mandare in overflow il buffer di WhatsApp che gestisce le chiamate VoIP, ovvero una zona intermediaria di memoria, spesso utilizzata per velocizzare la trasmissione dei dati.
In parole povere, gli hacker inviavano dei pacchetti SRTCP (solitamente vengono utilizzati dall'app per criptare i dati), che però in questo caso erano appositamente modificati e contenevano dati di dimensioni maggiori al buffer, in modo da mandare quest'ultimo in overflow (condizione che si verifica quando si eccede il limite della capacità di una memoria). La condizione di errore del buffer permetteva quindi ai malintenzionati di sovrascrivere la zona di memoria immediatamente adiacente a quest'ultimo, andando a far eseguire del codice malevolo da remoto.

Per fare questo, non serviva nemmeno che l'ignaro utente rispondesse alla telefonata, visto che la memoria veniva sovrascritta anche in caso di chiamata rifiutata. Insomma, è chiaro che chi ha architettato questo metodo non è di certo uno sprovveduto.
Come fatto notare anche dai ricercatori di Check Point, l'ultimo aggiornamento dell'app di WhatsApp ha quindi aggiunto dei controlli nel codice per evitare che i pacchetti troppo grandi vadano a causare nuovamente l'overflow del buffer.

Le versioni di WhatsApp vulnerabili a questo meccanismo erano le seguenti: tutte le build precedenti alla 2.19.134 per Android, alla 2.19.44 per WhatsApp Business per Android, alla 2.19.51 per iOS e WhatsApp Business per iOS, alla 2.18.348 per Windows Phone e alla 2.18.15 per Tizen. Per vedere la versione della vostra app, dovete recarvi nelle Impostazioni di WhatsApp, accedere alla scheda "Aiuto" e in seguito alle informazioni dell'app. Se avete una delle versioni descritte in precedenza non dovete preoccuparvi, mentre se disponete di una build inferiore vi consigliamo di scaricare l'ultima versione dell'app dallo store digitale del vostro smartphone.

In ogni caso, se non avete ancora ricevuto telefonate strane tramite le chiamate di WhatsApp e avete già provveduto ad aggiornare l'app, non c'è motivo per preoccuparsi.
Tuttavia, come avrete forse già intuito, non esiste al momento un metodo certo per capire se si è stati colpiti da questo spyware o meno. Infatti, dovranno essere effettuate delle complesse analisi da parte di Facebook per capirlo. In ogni caso, stando ad alcune indiscrezioni riportate dal Financial Times, sembra che questa falla di sicurezza sia stata utilizzata principalmente per ottenere i dati di persone ben specifiche (come giornalisti, avvocati e dissidenti) e quindi è piuttosto difficile che si sia trattato di un attacco su larga scala.