news

iOS 26.4.2 e iOS 18.7.8: il bug che tratteneva le notifiche cancellate

CVE-2026-28950 nel componente Notification Services conservava frammenti di notifica sul dispositivo anche dopo la cancellazione. Apple ha rilasciato il fix il 22 aprile con un backport anche per iOS 18.

Il 22 aprile Apple ha rilasciato iOS 26.4.2 e iOS 18.7.8 per correggere CVE-2026-28950, un bug nel componente Notification Services che conservava sul dispositivo le notifiche già marcate per la cancellazione. Il rilascio è arrivato a pochi giorni dalla pubblicazione di un articolo di 404 Media che documentava come l’FBI avesse estratto messaggi Signal dal database interno delle notifiche di un iPhone — inclusi messaggi di un’app che l’utente aveva poi rimosso dal dispositivo.

Il problema

iOS mantiene un database interno in cui vengono registrate le notifiche ricevute. Le notifiche cancellate avrebbero dovuto essere rimosse da quel record; un errore nella logica di logging le tratteneva invece sul dispositivo. Apple descrive la correzione come “migliorata redazione dei dati” e indica che il fix rimuove retroattivamente anche i frammenti già memorizzati nei dispositivi che ricevono l’aggiornamento.

Apple ha classificato l’impatto come “basso”, il che riflette il fatto che sfruttare il bug richiede accesso fisico al dispositivo o una compromissione preventiva del sistema. Lo scenario forense — un’autorità con strumenti di estrazione appropriati — è esattamente il tipo di contesto in cui questo dato diventa rilevante.

Cosa finisce nel database delle notifiche

Il database delle notifiche di iOS contiene il testo dell’alert, il titolo, il corpo della notifica e talvolta payload aggiuntivi. Questo contenuto viene dalla request APNs che il server dell’app invia ad Apple e da eventuali modifiche apportate da una UNNotificationServiceExtension prima della visualizzazione.

I dati inseriti nel payload APNs non restano solo nella memoria temporanea del dispositivo: vengono scritti in un database persistente che, a causa di CVE-2026-28950, poteva sopravvivere alla cancellazione della notifica da parte dell’utente. Non si tratta di un bug da correggere nel codice dell’app — la patch è nell’OS. Ma è un promemoria concreto sul ciclo di vita dei dati inviati nei campi alert.body, alert.title e payload personalizzati: finiscono sul dispositivo in una forma più duratura di quanto molti sviluppatori assumano.

Pattern per ridurre la superficie

Il pattern corretto per le app che gestiscono contenuto sensibile è usare notifiche con payload APNs minimale insieme a una UNNotificationServiceExtension che decifra o arricchisce il contenuto localmente prima della visualizzazione. In questo modo il payload che viaggia via APNs non contiene il testo leggibile, e quello che arriva nel database delle notifiche è il dato cifrato, non il plaintext.

Signal usa questo meccanismo: il payload APNs originale non contiene il testo del messaggio. Nel caso descritto dall’FBI, il database conteneva comunque dati di anteprima — effetto di CVE-2026-28950 che tratteneva frammenti anche dopo che l’app aveva gestito e cancellato la notifica. La combinazione di payload minimale e fix applicato è quindi più robusta della sola progettazione difensiva del payload.

Dispositivi coperti

iOS 26.4.2 è disponibile per iPhone 11 e successivi, iPad Pro 12.9" terza generazione e successivi, iPad Pro 11" prima generazione e successivi, iPad Air terza generazione e successivi, iPad ottava generazione e successivi, iPad mini quinta generazione e successivi.

iOS 18.7.8 copre i dispositivi ancora su iOS 18 — iPhone XR, XS, XS Max e tutti i modelli da iPhone 11 in poi che non sono stati aggiornati a iOS 26. È il secondo backport di sicurezza per iOS 18 nel giro di un mese: il precedente, iOS 18.7.7, aveva chiuso la catena DarkSword che concatenava sei vulnerabilità tra WebKit e il kernel. CVE-2026-28950 è un tipo di problema diverso — non un exploit remoto attivo, ma un errore di retention dei dati — e Apple ha scelto comunque di fare il backport.


Da verificare nelle prossime settimane: se Apple rilascerà un aggiornamento equivalente per macOS e watchOS, dove Notification Services ha una struttura analoga. Al momento non è stato annunciato nulla per quelle piattaforme.

Luca
Luca

Sviluppatore software, utente Apple dal 2012. Scrivo di news e strumenti per chi sviluppa su piattaforme Apple.

Chi sono →