Gli sviluppatori del server di posta Exim hanno rilasciato un aggiornamento correttivo Exim 4.99.3, che elimina una vulnerabilità in alcune configurazioni dell'agente di posta. Il problema è identificato con l'ID interno EXIM-Security-2026-05-01.1; nel comunicato ufficiale è menzionato anche come CVE-TBD.
La vulnerabilità appartiene alla categoria Remote Use-After-Free e si manifesta durante l'analisi del corpo del messaggio BDAT quando si utilizza TLS attraverso GnuTLS. BDAT è utilizzato nell'estensione SMTP CHUNKING per trasmettere il corpo della email in blocchi. Secondo la descrizione di Exim, l'errore potrebbe essere causato quando il client, durante la trasmissione di BDAT, invia la notifica TLS close_notify prima del completamento della trasmissione del corpo, e quindi aggiunge un byte aggiuntivo all'interno della stessa connessione TCP.
In tale sequenza, Exim potrebbe scrivere dati in un buffer di memoria che era già stato liberato alla conclusione della sessione TLS. Questo porta alla corruzione della heap e può potenzialmente essere usato per eseguire codice. Nel comunicato si sottolinea che l'attaccante deve solo avere la possibilità di stabilire una connessione TLS e utilizzare l'estensione SMTP CHUNKING / BDAT.
Il problema riguarda Exim 4.97, 4.98, 4.99, 4.99.1 e 4.99.2, ma solo le build compilate con supporto GnuTLS. Nella documentazione ufficiale, è formulato come configurazioni con USE_GNUTLS=yes; le build che usano OpenSSL o altre librerie TLS non sono affette da questa vulnerabilità. Inoltre, nel comunicato di Exim si specifica che sono vulnerabili le configurazioni dove vengono dichiarati STARTTLS e CHUNKING.
La correzione è inclusa in Exim 4.99.3. Secondo quanto dichiarato dagli sviluppatori, la patch garantisce un ripristino pulito dello stack di gestione dell'input al ricevimento di TLS close_notify durante la trasmissione attiva di BDAT, prevenendo ulteriori utilizzi di puntatori obsoleti. Non ci sono ulteriori modi conosciuti per chiudere completamente il problema, oltre all'aggiornamento.
Gli sviluppatori di Exim hanno ricevuto il rapporto di errore il 1 maggio 2026 da Federico Kirschbaum di XBOW Security. Dopo aver esaminato il report, la correzione è stata preparata in repository privati; il 7 maggio è stata informata la distribuzione tramite una lista di distribuzione chiusa, il 10 maggio hanno ricevuto accesso limitato alle correzioni, e il 12 maggio 2026 sono state pubblicate le raccomandazioni e il rilascio stesso con la correzione.
Si raccomanda agli amministratori dei server di posta di controllare la versione di Exim in uso e il backend TLS della build. Se server funziona con Exim dalla versione 4.97 fino alla 4.99.2 inclusa, compilato con GnuTLS e annuncia STARTTLS insieme a CHUNKING; il progetto Exim raccomanda di passare il prima possibile a Exim 4.99.3 una versione successiva. I codici sorgente corretti sono disponibili nel ramo exim-4.99+fixes e nel tag exim-4.99.3, oltre che in archivi tarball su normali piattaforme di download di Exim.
Fonte: linux.org.ru
