Die Schwachstelle wurde von Federico Kirschbaum, Head of Security Lab bei XBOW, einer autonomen Cybersicherheits-Testplattform, entdeckt und am 1. Mai 2026 gemeldet. Sie nutzt eine gefährliche Kombination aus TLS-Protokollfehler und fehlerhafter Memory-Management bei der BDAT-Verarbeitung (Binary Data Transmission).
Der technische Hintergrund ist komplex, aber kritisch: Wenn ein Client während einer unvollendeten BDAT-Nachrichtenübertragung eine TLS-Benachrichtigung zum Verbindungsabbau (close_notify alert) sendet und anschließend noch einzelne Bytes im Klartext auf derselben TCP-Verbindung sendet, schreibt Exim in einen bereits freigegebenen Speicherbereich. Dies führt zu einer Heap-Corruption – eine der gefährlichsten Formen von Memory-Bugs.
Kirschbaum erklärte das Angriffszenario: Beim TLS-Shutdown gibt Exim seinen TLS-Transfer-Buffer frei, doch ein verschachtelter BDAT-Receiver kann weiterhin eingehende Bytes verarbeiten und dabei die ungetc()-Funktion aufrufen, die ein einzelnes Zeichen in die freigegebene Region schreibt. Dieses Ein-Byte-Schreiben beschädigt die Metadaten des Memory-Allocators und ermöglicht dem Angreifer weitere Angriffsprimitive.
XBOW beschrieb die Lücke als “einen der hochwertigsten Bugs, die je in Exim gefunden wurden”. Das Besorgniserregende: Die Auslösung erfordert fast keine spezielle Konfiguration auf dem Server. Ein Angreifer benötigt lediglich die Fähigkeit, eine TLS-Verbindung zu etablieren und die CHUNKING (BDAT) SMTP-Erweiterung zu nutzen.
Die Behebung erfolgte in Version 4.99.3. Das Fix stellt sicher, dass der Input-Processing-Stack ordnungsgemäß zurückgesetzt wird, wenn eine TLS-close-Benachrichtigung während eines aktiven BDAT-Transfers empfangen wird. Es gibt keine bekannten Workarounds – ein Update ist zwingend erforderlich.
Dies ist nicht das erste kritische Use-After-Free-Problem in Exim. Ende 2017 patzte das Projekt CVE-2017-16943 (CVSS 9.8), das unautentifizierten Angreifern bereits Remote Code Execution über manipulierte BDAT-Befehle ermöglichte. Das Muster wiederholter kritischer Memory-Bugs sollte Administratoren zum Überprüfen ihrer Systeme bewegen.
