Uno smartphone Android può essere privato della connessione mobile tramite un SMS appositamente preparato, senza che l’utente debba aprire il messaggio, cliccare su un link o anche visualizzare la notifica. Il bug fa collassare il processo di sistema della telefonia, interrompe le chiamate in corso, incluse quelle verso i servizi di emergenza, e una serie di messaggi può bloccare il dispositivo in un ciclo di malfunzionamenti e riavvii.
Un ricercatore indipendente ha rivelato la vulnerabilità il 29 ottobre, dopo diversi mesi di discussione privata con Google. L’attacco è stato chiamato SMS of Death e appartiene alla categoria Zero Click, poiché non richiede alcuna interazione da parte del proprietario dello smartphone per attivare l’errore.
Il problema risiede nel gestore WAP Push, un vecchio meccanismo di consegna di dati di servizio tramite rete mobile. Gli operatori e le applicazioni hanno storicamente utilizzato WAP Push, ad esempio, per lavorare con gli MMS e le impostazioni dei servizi mobili. Il messaggio dannoso viene trasmesso come data SMS su una porta di servizio e non appare nell’elenco normale delle conversazioni, quindi il proprietario non vede né il testo né il numero del mittente.
L’errore si verifica all’interno del componente WapPushOverSms durante la lettura della lunghezza dell’intestazione WAP. Android riceve inizialmente un valore numerico in formato 64-bit, poi lo converte in un intero con segno a 32-bit senza verificare il range valido. Un valore appositamente selezionato diventa negativo dopo la conversione, e il sistema tenta di creare un array di dimensione negativa. Java genera l’eccezione NegativeArraySizeException, dopodiché il processo com.android.phone si arresta in modo anomalo.
Il riavvio del processo richiede solo uno-due secondi, ma anche un’interruzione così breve è sufficiente per interrompere una chiamata vocale in corso. L’invio ripetuto trasforma l’errore in un rifiuto di servizio remoto. Nei test del ricercatore, un SMS danneggiato in alcuni casi ha causato problemi di connessione periodici per una settimana, mentre circa 20 messaggi hanno reso lo smartphone praticamente inutilizzabile per un periodo prolungato.
Un ulteriore problema è creato dalla stessa logica di consegna degli SMS. In caso di arresto anomalo del processo, lo smartphone potrebbe non riuscire a confermare la ricezione del messaggio, dopodiché la rete mobile invierà nuovamente il pacchetto danneggiato. Una copia rimane anche nella coda interna di Android e viene elaborata nuovamente dopo il riavvio. Di conseguenza, un singolo messaggio dannoso può innescare un nuovo malfunzionamento senza ulteriori invii da parte dell’attaccante.
Il ricercatore ha riprodotto l’errore su un Pixel 9 con firmware di aprile 2026, nonché su diversi modelli Samsung Galaxy e Galaxy A. Durante i test, il malfunzionamento si è verificato ogni volta. Il codice vulnerabile è stato riprodotto a partire da Android 12 fino ad Android 16, e l’autore della ricerca attribuisce al range interessato Android 12-17. La correzione è stata rilasciata per Android 14-17.
In caso di ciclo prolungato di malfunzionamenti, Android potrebbe attivare il meccanismo integrato Rescue Party. Il sistema tenta di ripristinare automaticamente il funzionamento del dispositivo, applicando gradualmente misure più radicali. L’ultima fase porta lo smartphone in modalità di ripristino e propone un reset alle impostazioni di fabbrica, il che per un utente non preparato potrebbe comportare la perdita di dati locali.
Il reset completo non è sempre necessario. Le voci danneggiate possono essere eliminate dalla coda interna degli SMS tramite Android Debug Bridge, ma per il ripristino sarà necessario un computer, l’accesso a ADB e un breve intervallo di tempo in cui Android riesce a caricarsi prima del successivo malfunzionamento. Per un utente comune dello smartphone, questo metodo è difficile da utilizzare senza preparazione tecnica.
Google ha preparato una correzione il 15 giugno. Gli sviluppatori non si sono limitati a verificare il valore numerico originale. La patch intercetta RuntimeException durante l’elaborazione di WAP Push e rimuove il messaggio danneggiato dalla base interna, affinché Android non tenti di analizzare lo stesso pacchetto dopo una nuova consegna o un successivo avvio.
Secondo i dati dell’autore della ricerca, la correzione è stata inclusa nel rilascio di ottobre di Android per le versioni 14-17. Il bollettino ufficiale di ottobre non descrive separatamente SMS of Death, quindi è meglio che i proprietari degli smartphone si orientino sul firmware più recente del produttore specifico, e non solo sul numero di versione di Android. I dispositivi con Android 12 e 13 potrebbero rimanere senza correzione se il produttore non rilascia più patch o non trasferisce la protezione autonomamente.
Il ricercatore ha anche pubblicato una dimostrazione funzionante dell’attacco. Il programma genera un WAP Push danneggiato e invia il pacchetto al numero di telefono selezionato, quindi i dettagli tecnici sono già pubblicamente disponibili. Non ci sono informazioni confermate sull’uso di SMS of Death in attacchi reali, ma la pubblicazione del codice funzionante semplifica la verifica dei dispositivi vulnerabili e contemporaneamente abbassa la soglia per possibili malintenzionati.
Ricercatore di sicurezza informatica con esperienza nell’analisi delle vulnerabilità, nella mitigazione del rischio cyber, nelle attività di red teaming ed ethical hacking e nella protezione di sistemi complessi. Specializzato in penetration testing e Threat Intelligence, contribuisce al rafforzamento della resilienza digitale di infrastrutture e reti aziendali.
Aree di competenza: Penetration Testing, Threat Intelligence, Red Teaming, Vulnerability Assessment, Incident Response