Roundcube 1.6.19 e 1.7.4: XSS, SSRF e 12 vulnerabilità
“`html
Il 6 settembre 2026 il team di Roundcube ha rilasciato due aggiornamenti di sicurezza critici: Roundcube 1.6.19 (per la linea LTS) e Roundcube 1.7.4. Questo rilascio non è un semplice bugfix: copre ben 12 vulnerabilità che toccano praticamente ogni componente sensibile di una webmail moderna, dal parsing MIME alla gestione degli allegati TNEF, fino al proxy per i contenuti remoti. Se gestisci un’installazione Roundcube, questo articolo ti spiega cosa è successo, perché è importante e cosa fare subito.
Perché questo rilascio è un caso di studio interessante
Le webmail come Roundcube non sono semplici client di posta: sono applicazioni web complesse che devono interpretare formati di file eterogenei, renderizzare HTML e CSS provenienti da fonti non fidate, gestire proxy per contenuti remoti e interfacciarsi con database per rubriche e identità utente. Ogni componente rappresenta una potenziale superficie d’attacco.
Il rilascio di 1.6.19 e 1.7.4 dimostra bene questo concetto: le vulnerabilità corrette non sono isolate, ma si intrecciano tra loro. Un singolo allegato malevolo può attraversare più livelli dell’applicazione, combinando tecniche diverse per ottenere un impatto ben più severo della somma delle singole falle.
Le vulnerabilità principali corrette
Vediamo nel dettaglio le classi di attacco più rilevanti risolte in questo aggiornamento.
XSS zero-click tramite allegati TNEF (winmail.dat)
Una delle falle più preoccupanti riguarda il parsing dei file TNEF (il formato winmail.dat usato da alcuni client Outlook). Un attaccante può costruire metadati malevoli che, una volta processati da Roundcube, generano un URL non correttamente sanitizzato nella preview dell’allegato.
- Precondizione: la vittima apre semplicemente la mail, spesso senza bisogno di cliccare su nulla (da qui il termine “zero-click”).
- Impatto: esecuzione di JavaScript nel contesto della sessione utente, con conseguente furto di cookie o token di sessione.
XSS nell’editor tramite contenuti text/enriched
Anche le parti MIME di tipo text/enriched possono veicolare codice malevolo se non filtrate correttamente prima di essere mostrate nell’editor di Roundcube, portando a esecuzione di script nell’interfaccia utente.
Bypass del blocco remote-content e CSS injection
Diverse tecniche permettono di aggirare i controlli che dovrebbero impedire il caricamento automatico di immagini o risorse esterne nelle email (una protezione anti-tracking fondamentale). Tra queste:
- CSS declaration smuggling: dati che dovrebbero rimanere in un contesto controllato “sfuggono” e vengono interpretati come proprietà CSS eseguibili.
- Escape su FuncIRI: tecniche di encoding che confondono i filtri di sicurezza nelle URL usate dentro proprietà CSS come
url(). - SVG con animazioni SMIL: l’uso di animazioni SVG per innescare il caricamento di risorse remote, aggirando i controlli statici tradizionali.
SSRF nel proxy CSS tramite indirizzi IPv6-mapped-IPv4
Questa è probabilmente la vulnerabilità più tecnica del lotto. Il proxy che gestisce le risorse CSS remote valida gli indirizzi IP per bloccare l’accesso a reti interne (come 127.0.0.1). Il problema è che rappresentazioni alternative degli indirizzi, in formato IPv6 che “mappa” un indirizzo IPv4 tramite notazione esadecimale, non venivano riconosciute correttamente dalla funzione di validazione.
Il risultato è un classico SSRF (Server-Side Request Forgery): un attaccante può forzare il server Roundcube a effettuare richieste verso risorse interne della rete, potenzialmente scansionando porte o accedendo a servizi amministrativi non esposti pubblicamente.
Header injection su subject, nome visualizzato e organizzazione
Campi come il subject della mail o il nome dell’organizzazione nell’identità utente possono contenere sequenze CRLF (ritorno a capo) che, se non filtrate, permettono di iniettare header email aggiuntivi. Questo apre la porta a manipolazioni del messaggio o, nei casi peggiori, a tecniche di mail relay.
Accesso cross-user nella rubrica basata su SQL
Chi utilizza un address book basato su database SQL (anziché file locali) potrebbe essere esposto a un problema di controllo degli accessi: la logica che gestisce l’appartenenza ai gruppi di contatti non verificava correttamente la proprietà, permettendo potenzialmente a un utente di modificare i gruppi di contatti di un altro utente.
Bypass di is_local_url() con FQDN e punto finale
Un ultimo dettaglio tecnico ma significativo: la funzione che determina se un URL punta a una risorsa “locale” (e quindi da bloccare) non gestiva correttamente i nomi di dominio completi terminanti con un punto (es. example.com.), permettendo di aggirare la policy di blocco.
Come un attaccante può concatenare queste falle
La vera pericolosità di questo aggiornamento non sta nelle singole vulnerabilità, ma in come possono essere combinate. Ecco uno scenario realistico:
- Un attaccante invia una mail con un allegato TNEF contenente un nome file manipolato.
- Roundcube costruisce un URL di preview basato su quel nome file, introducendo uno stored XSS zero-click.
- Lo script iniettato include del CSS con tecniche di escape che bypassano il blocco remote-content.
- Il proxy CSS viene istruito a effettuare una richiesta verso un indirizzo interno mascherato in formato IPv6-mapped-IPv4.
- Il risultato finale è un SSRF completo, partito da una semplice email aperta dalla vittima.
Questo tipo di catena di attacco è esattamente il motivo per cui gli amministratori di sistema dovrebbero trattare questo aggiornamento con la massima priorità.
Cosa fare subito: mitigazioni e best practice
Se gestisci un’installazione Roundcube, ecco le azioni concrete da intraprendere.
Aggiornamento immediato
- Aggiorna a Roundcube 1.6.19 se utilizzi la linea LTS, oppure a 1.7.4 per la versione più recente.
- Verifica che eventuali pacchetti distribuiti dalla tua distro Linux o dal tuo hosting abbiano già integrato queste patch.
Riduzione della superficie d’attacco
- Disabilita il parsing TNEF/winmail.dat se non strettamente necessario per la tua utenza.
- Limita o disabilita la preview automatica di contenuti HTML e SVG, preferendo la visualizzazione in testo semplice come default.
- Applica whitelist rigorose al proxy per i contenuti remoti, o disabilitalo del tutto se non essenziale.
Hardening e monitoraggio
- Verifica che tutti i metadata (subject, nome visualizzato, organizzazione) vengano sanitizzati prima di finire negli header email.
- Controlla i log del proxy CSS per individuare richieste sospette verso indirizzi IP privati o loopback.
- Monitora le attività anomale sulla rubrica condivisa, specialmente modifiche massive ai gruppi di contatti.
- Valuta l’adozione di un WAF con regole specifiche contro CRLF injection e CSS escape sospetti.
Conclusione
Il rilascio di Roundcube 1.6.19 e 1.7.4 rappresenta un promemoria importante: le webmail moderne sono sistemi complessi dove parsing di formati ricchi, rendering HTML/CSS, gestione di proxy per contenuti remoti e database si intrecciano continuamente. Come abbiamo visto, una singola email ben costruita può attraversare più livelli applicativi, concatenando uno stored XSS zero-click, un bypass delle protezioni remote-content e un SSRF verso risorse interne.
La raccomandazione è chiara: aggiornare immediatamente alle versioni patchate, rivedere le policy relative a TNEF, SVG e contenuti remoti, e rafforzare i controlli di accesso sulla rubrica condivisa. In un ecosistema dove la posta elettronica resta uno dei vettori d’attacco più sfruttati, mantenere aggiornato il proprio client webmail non è un’opzione, ma una necessità operativa.
“`