Eine korrigierte Version des Mailservers Exim 4.99.1 wurde veröffentlicht, die eine Sicherheitsanfälligkeit (CVE-2025-67896) behebt, die es einem entfernten Angreifer ermöglicht, den Speicherinhalt außerhalb des zugewiesenen Puffers zu manipulieren. Potenziell könnte dieses Problem für die entfernte Ausführung von Code auf dem Server genutzt werden, jedoch wurde bisher kein funktionierender Exploit entwickelt.
Die Sicherheitsanfälligkeit ist im Code zur Arbeit mit der internen Datenbank (Hints DB) auf Basis von SQLite vorhanden, die zur Speicherung temporärer Informationen, des Zustands der Nachrichtenübermittlung und von Informationen zur Intensität des Versands von E-Mails verwendet wird. Das Problem entsteht, weil Einträge aus der Datenbank direkt in die interne Struktur „dbdata_ratelimit_unique“ ohne angemessene Prüfung umgewandelt wurden. Es entstand eine Situation, in der ein fester Array „bloom“ mit einer Größe von 40 Byte erstellt wurde, während der Inhalt des Feldes „bloom_size“, das die Anzahl der im Array zu speichernden Elemente bestimmt, von der Größe der Daten in der Datenbank abhing. Ein Angreifer konnte einen Schreibvorgang außerhalb des zugewiesenen Puffers organisieren, indem er Daten (unter Verwendung einer weiteren Sicherheitsanfälligkeit) in die Datenbank einfügte, bei denen das Feld „bloom_size“ einen Wert annahm, der bewusst größer war als die Größe des Arrays.
Das Problem tritt in den Versionen Exim 4.99 und 4.98.2 auf und betrifft nur Konfigurationen mit ACL ratelimit, in denen die Parameter „unique“ oder „per_addr“ verwendet werden (zum Beispiel „warn ratelimit = 100 / 1h / per_addr / $sender_address“ oder „warn ratelimit = 100 / 1h / per_rcpt / unique=$sender_address“). Darüber hinaus muss Exim für einen Angriff mit Unterstützung für SQLite (USE_SQLITE=yes) kompiliert werden, was in der Konfigurationsdatei aktiviert sein muss (hints_database = sqlite). In der anfälligen Konfiguration wird bei der Ausführung von „exim -bV“ ausgegeben „Hints DB: Using sqlite3“.
Von namhaften Distributionen wurden die problematischen Versionen in Debian 13, Ubuntu 25.10, SUSE/openSUSE, Arch Linux, Fedora und FreeBSD verwendet. RHEL und derivatische Distributionen sind nicht betroffen, da Exim nicht in deren Standard-Paketrepository enthalten ist (im EPEL wurde das Update für das Paket exim bisher nicht veröffentlicht).
Es wird auch ein neuer Vektor für die Ausnutzung der Schwachstelle CVE-2025-26794 festgestellt, die in der Februarausgabe von Exim 4.98.1 behoben wurde. Diese Schwachstelle ermöglicht die Einspeisung von SQL-Code in die interne Datenbank (Hints DB). Der zuvor vorgenommene Fix hat einfache Anführungszeichen nicht maskiert. Ein Beispiel für den Befehl MAIL FROM, der zur Einspeisung von SQL-Code führt: „MAIL FROM:<„x’/**/UNION/**/SELECT/**/X'<hex_blob>’—„@attacker.com>“. Diese Schwachstelle kann als Ausgangspunkt für die Erzeugung der oben beschriebenen Pufferüberlaufbedingungen verwendet werden.
Quelle: opennet.ru
