Safari, RCE da regex: heap overflow e named groups duplicate
Apple ha corretto una falla RCE in Safari (CVSS 8.8): heap overflow nel parsing di regex con named groups duplicate. Attivabile visitando una pagina.
Contenuto

Apple ha rilasciato un aggiornamento correttivo per una vulnerabilità di esecuzione remota di codice in Safari, resa pubblica il 12 maggio 2026 nell'ambito della disclosure coordinata ZDI-26-313. La falla, un heap-based buffer overflow con punteggio CVSS 8.8, risiede nel motore di parsing delle espressioni regolari con named groups duplicate e si attiva quando l'utente visita una pagina malevola. Il pericolo sta nella combinazione tra una feature JavaScript e un errore di validazione dei limiti di memoria, che trasforma la normale navigazione in un vector RCE efficace contro l’ecosistema Apple.
- ZDI-26-313 descrive un heap-based buffer overflow nel parsing delle regular expression con named groups duplicate, con conseguente esecuzione di codice arbitrario nel processo corrente.
- Il vector di attacco è di tipo network, richiede interazione utente (UI:R) e ha un punteggio di gravità CVSS 8.8, classificato come Alto.
- Apple ha già distribuito un aggiornamento per correggere la vulnerabilità, sebbene il bollettino non specifichi le versioni esatte interessate.
- Non risulta al momento confermato uno sfruttamento attivo in-the-wild né è stato assegnato un identificativo CVE.
Heap overflow nel parser regex: il meccanismo della falla
La vulnerabilità risiede nel motore di gestione delle espressioni regolari di Safari e interessa il parsing dei named groups duplicati, una costrutto sintattico delle specifiche ES2018. Secondo l’advisory ZDI-26-313, il problema nasce dalla mancata validazione della lunghezza dei dati forniti dall’utente prima della copia in un buffer allocato sull’heap. Questo genera un heap-based buffer overflow sfruttabile per sovrascrivere aree di memoria contigue ed eseguire codice arbitrario nel processo corrente. L’errore non riguarda la logica delle regex, ma l’assenza di boundary check nel passaggio dal parser alla memoria dinamica.
"The specific flaw exists within the handling of regular expression named groups. The issue results from the lack of proper validation of the length of user-supplied data prior to copying it to a heap-based buffer." — Zero Day Initiative, advisory ZDI-26-313
Quando il parser di Safari elabora espressioni con named groups duplicati, la mancata verifica dello spazio necessario in memoria heap permette una sovrascrittura controllata dall’input esterno. Da qui, la corruzione di aree adiacenti può essere strumentalizzata per alterare il flusso di esecuzione del processo browser, convertendo una routine di parsing in un vector RCE.
Perché la sola visita a una pagina web attiva l'exploitation
Il vector di attacco completo, codificato nel punteggio CVSS 8.8 con metrica AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H, rende la falla insidiosa per il social engineering. L’attaccante non necessita di credenziali né di condizioni di rete particolari: basta indurre la vittima a visitare una pagina web contenente una regex malevola o ad aprire un file compromesso. L’interazione utente, sebbene richiesta, è minimale e coincide con la normale navigazione quotidiana. Questa configurazione abbassa la barriera all’exploitation e amplifica il rischio per chi usa Safari su macOS e iOS.
Il social engineering rappresenta il veicolo più probabile: un messaggio, un QR code o un post su social media che reindirizza verso un dominio apparentemente lecito. Una volta caricata la pagina, il codice JavaScript contenente la regex malevola entra in esecuzione nel contesto del processo Safari senza ulteriori avvisi. L’utente non deve compiere azioni consapevoli oltre alla navigazione, il che rende la minaccia estremamente efficace contro target poco attenti e ambienti corporate con policy di browsing permissive.
La disclosure coordinata e la patch di Apple
Trend Micro Zero Day Initiative ha ricevuto la segnalazione il 26 marzo 2026 e gestito la pubblicazione coordinata il 12 maggio 2026, quando l’advisory ZDI-26-313 è divenuto pubblico. Il testo ufficiale afferma che «Apple has issued an update to correct this vulnerability», ma non dettaglia build né versioni interessate di macOS, iPadOS e iOS. La disclosure coordinata suggerisce che Apple abbia integrato la correzione prima del rilascio del dettaglio tecnico, riducendo la finestra di rischio. Resta non verificabile se l’update abbia raggiunto tutte le versioni supportate simultaneamente.
La Zero Day Initiative di Trend Micro opera come broker di vulnerabilità che gestisce la comunicazione tra ricercatori indipendenti e vendor. La scelta di una finestra di circa sette settimane tra segnalazione e pubblicazione rientra nelle prassi di disclosure coordinata che concedono al vendor il tempo di testare e distribuire la correzione. Durante questo lasso, i dettagli tecnici restano riservati, riducendo la probabilità che attori malevoli replicino l’exploit prima dell’arrivo della patch tra gli utenti.
Limiti della ricostruzione: CVE e versioni non confermate
Il dossier tecnico presenta alcune lacune rilevanti per la gestione del rischio aziendale. Non è stato attribuito alcun identificativo CVE alla vulnerabilità, complicando la tracciabilità nei sistemi di vulnerability management e nei feed di threat intelligence. Inoltre, l’advisory non elenca quali versioni di Safari, macOS o iOS siano effettivamente affette, né quali release ricevano la patch correttiva. Senza queste informazioni, i team di sicurezza devono fare affidamento sul codice ZDI-26-313 per tracciare la falla, allungando i tempi di assessment.
Non risulta confermato, al momento della pubblicazione, uno sfruttamento attivo in-the-wild. L’assenza di questa evidenza non esclude il rischio, ma impedisce di classificare la minaccia come 0-day sotto attacco con exploit pubblico. Questi limiti rendono indispensabile l’installazione preventiva dell’aggiornamento su ogni dispositivo Apple della flotta, senza attendere ulteriori conferme dal threat landscape.
Cosa fare adesso
La risposta alla vulnerabilità si articola in azioni immediate e monitoraggi successivi, dato che il bollettino lascia aperti alcuni punti di gestione del rischio.
- Installare immediatamente l’aggiornamento Apple per Safari e i sistemi operativi associati su ogni endpoint macOS, iOS e iPadOS, verificando la disponibilità nella sezione Aggiornamento Software. Non è possibile stabilire quali versioni specifiche siano vulnerabili: l’unico approccio prudente è assumere l’esposizione su tutti i dispositivi fino a prova contraria.
- Monitorare gli alert dei sistemi EDR e dei gateway web alla ricerca di anomalie nel rendering di pagine con payload regex complessi, fino a conferma di piena copertura della patch su tutta la flotta. Questa misura serve a rilevare tentativi di exploitation che potrebbero precedere o seguire l’installazione delle correzioni.
- Avvisare gli utenti corporate del rischio di cliccare link non verificati, poiché la sola visita a una pagina malevola è condizione sufficiente per attivare la catena di exploitation. L’awareness deve essere riorientata dal phishing tradizionale al pericolo di navigazione passiva su siti compromessi.
- Tracciare l’eventuale assegnazione di un CVE dedicato e le successive analisi del vendor per mappare le versioni esatte patchate. Solo quando Apple chiarirà quali build sono interessate sarà possibile completare la verifica di conformità e identificare i dispositivi rimasti indietro.
La scoperta di ZDI mette in luce come le feature linguistiche evolute del web, apparentemente innocue, possano nascondere flaw di memory safety devastanti quando l’implementazione del browser trascura i controlli sui limiti dei dati utente. Per Safari, la fiducia consolidata nell’ecosistema Apple non costituisce mitigazione tecnica: il motore regex resta codice nativo esposto a input arbitrari.
Il caso rafforza la necessità di trattare ogni parsing di contenuto esterno come superficie d’attacco critica, indipendentemente dalla percezione di sicurezza dell’utente finale. Aziende e utenti avanzati dovrebbero trattare l’update come prioritaro: anche senza evidenze pubbliche di exploitation, la natura network-accessible della falla rende l’ecosistema Apple un bersaglio attraente per future campagne mirate.
Domande frequenti
Il problema è nei named groups in sé o nel parser Safari?
La sintassi dei named groups duplicati è parte dello standard ES2018; il pericolo nasce dall’implementazione Safari che non valida la lunghezza dei dati prima di copiarli in memoria heap. Altri motori JavaScript possono gestire la stessa regex senza conseguenze.
Perché il CVSS è 8.8 e non 9.8 se l’impatto è totale?
Il vector include la metrica UI:R (User Interaction Required), che vincola il punteggio pur mantenendo impatto alto su confidenzialità, integrità e disponibilità. Senza quella barriera interattiva, il calcolo salirebbe verso valori critici.
Basta l’aggiornamento Apple o servono contromisure di rete?
L’installazione della patch resta la mitigazione prioritaria e definitiva. I filtri URL e l’Isolamento Browser aziendale costituiscono stratificazioni difensive utili, ma non sostituiscono la correzione del motore regex.
Le informazioni sono state verificate sulle fonti citate e aggiornate al momento della pubblicazione.