Corretta la vulnerabilità RCE di Drupal, nessuna patch per le branch precedenti
La vulnerabilità RCE di Drupal nel modulo Field UI del core può consentire la remote code execution, permettendo potenzialmente a un aggressore di eseguire comandi software sul server del sito web. Drupal ha pubblicato le correzioni il 14 ottobre nelle versioni 11.4.10, 11.3.19 e 10.6.19. Il Drupal Security Team ha assegnato a CVE-2026-108097 un punteggio di 19 su 25 nella scala di rischio del progetto, collocandola nella categoria critica.
Drupal afferma che gli aggressori non possono raggiungere il codice vulnerabile attraverso il solo core. Lo sfruttamento dipende invece dai contributed modules, ossia estensioni opzionali sviluppate al di fuori del core di Drupal, o potenzialmente da codice personalizzato che espone la funzione interessata. Il bollettino non identifica i contributed modules coinvolti, ma conferma che sono noti diversi percorsi di attacco e che almeno uno non richiede all'aggressore di effettuare il login. È quindi importante esaminare l'intero insieme di moduli e integrazioni personalizzate di un sito, anziché considerare l'aggiornamento del core come l'unico aspetto da affrontare.
Le correzioni supportate sono Drupal 11.4.10 per la branch 11.4.x, 11.3.19 per la 11.3.x e 10.6.19 per la 10.6.x. Anche Drupal 12.0.0-beta2 contiene la correzione, sebbene questa beta non sia destinata ai siti web di produzione. Non è disponibile alcuna release corretta per Drupal 11.2.x e versioni precedenti, Drupal 10.5.x e versioni precedenti, oppure Drupal 8 e 9, perché queste branch hanno raggiunto end of life. I siti che le utilizzano ancora devono passare a una branch supportata. La copertura di sicurezza sia per la 11.3.x sia per la 10.6.x terminerà nel dicembre 2026.
Il numero di installazioni non supportate è significativo. Nella settimana iniziata il 4 ottobre, 151.442 dei 531.499 siti web che hanno comunicato a drupal.org la propria versione di Drupal core utilizzavano una branch che il bollettino indica come interessata, ma per la quale non è stata pubblicata alcuna correzione. Ciò rappresenta il 28,5% dei siti che hanno inviato i dati. Field UI viene inoltre installato dal profilo di installazione Standard di Drupal, quindi i siti creati con tale profilo generalmente dispongono del modulo, a meno che un amministratore non lo abbia rimosso.
Gli amministratori che non possono effettuare immediatamente l'aggiornamento possono disinstallare Field UI, il cui machine name è formato dalle parole field e ui unite da un underscore. Drupal afferma che la rimozione protegge il sito mentre viene predisposto l'aggiornamento, ma durante questo periodo le pagine amministrative utilizzate per gestire i campi e la loro visualizzazione non saranno disponibili. Drupal Steward, un servizio web application firewall che utilizza regole scritte dal Security Team, blocca già alcuni percorsi noti verso la vulnerabilità. Acquia, Pantheon, Ironstar e Skpr gestiscono questo servizio per i propri clienti, ma il bollettino sottolinea che non copre ogni possibile percorso e non sostituisce l'aggiornamento.
Al momento della pubblicazione, Drupal classificava la vulnerabilità come priva di exploit code disponibile pubblicamente. Al 15 ottobre non ne era comparso alcuno e né il bollettino né le segnalazioni pubbliche avevano descritto attacchi che la sfruttassero. Il Security Team aveva annunciato il rilascio previsto il 12 ottobre e aveva consigliato agli amministratori di riservare il tempo necessario, perché exploit funzionanti avrebbero potuto essere creati nel giro di ore o giorni. L'avvertimento rifletteva esperienze recenti: a maggio, Drupal aveva osservato tentativi di sfruttamento entro due giorni dalla divulgazione di una vulnerabilità di Structured Query Language injection nel core, limitata ai siti che utilizzavano il database relazionale open source impiegato da molte applicazioni web; successivamente, la US Cybersecurity and Infrastructure Security Agency aveva inserito quella precedente vulnerabilità nel proprio catalogo delle vulnerabilità sfruttate.
La debolezza risiedeva nel modo in cui Field UI costruiva le tabelle amministrative a partire dai render arrays, strutture array PHP che Drupal converte in pagine web. Prima della correzione, la fase di preparazione di una tabella passava qualsiasi PHP callable memorizzato nella proprietà region callback di una riga alla funzione PHP di invocazione dei callable basata su array, facendo eseguire quel callable senza verificarne la natura. Un PHP callable è un riferimento a codice che l'applicazione può eseguire.
Il renderer di Drupal rifiuta i render callback non attendibili dalla versione 8.8 del 2019, in seguito a precedenti bollettini di sicurezza che avevano dimostrato come il sistema di rendering potesse invocare callback arbitrari con eccessiva facilità. In questo caso, il renderer considerava attendibili i metodi dell'elemento table stesso, consentendo quindi l'esecuzione della fase di preparazione della tabella senza mai applicare il controllo di sicurezza al secondo callable avviato da quella fase. La chiamata interessata era presente almeno da Drupal 8.9.0 del 2020.
In Drupal 11.4.10, il codice della tabella non esegue più quel callback. Ottiene direttamente da ciascuna riga la relativa regione e, se il valore non corrisponde a una regione nota, utilizza al suo posto la regione nascosta della tabella o la sua prima regione. Il core utilizzava la proprietà region callback soltanto nei form di visualizzazione di Field UI. Il codice personalizzato che assegnava questa proprietà a una riga di una tabella Field UI non riceverà più il callback dopo l'aggiornamento; Pantheon consiglia quindi di verificare le pagine Manage fields e Manage display e di controllare il codice personalizzato interessato.
Un'estensione correlata appartenente ai contributed modules, Entity List, ha ricevuto un bollettino critico separato relativo a una remote code execution, identificata come CVE-2026-108099. Presenta le stesse condizioni di sfruttamento, compreso un percorso noto che non richiede il login. Entity List 3.0.10 applica una modifica che rispecchia la correzione di Field UI. L'aggiornamento di Drupal core non aggiorna separatamente questo modulo. Nella settimana iniziata il 4 ottobre, 90 siti hanno segnalato di utilizzare Entity List.
Le stesse release di Drupal core correggono anche due vulnerabilità di cross-site scripting classificate come moderatamente critiche, che potrebbero consentire l'esecuzione di contenuti dannosi all'interno del browser di un visitatore. CVE-2026-108515 interessa il modulo Link, mentre CVE-2026-108514 interessa il modulo Navigation. Entrambe richiedono almeno un utente che abbia effettuato il login. Drupal 7 ha raggiunto end of life su drupal.org nel gennaio 2025, sebbene Pantheon affermi che il proprio accordo di supporto a lungo termine per Drupal 7 con Tag1 Consulting abbia pubblicato Drupal 7.107 con un backport della correzione di Field UI.
Per le organizzazioni che necessitano di assistenza nella gestione dei sistemi collegati alla manutenzione dei siti web, AEU-I offre servizi IT, infrastruttura e consulenza con la sicurezza al primo posto. Indipendentemente dai servizi di supporto o dalle regole del firewall, gli operatori dei siti Drupal interessati devono installare la release corretta appropriata, aggiornare separatamente Entity List dove presente e successivamente verificare le pagine di gestione dei campi e il relativo codice personalizzato.