Bola vydaná oprava poštového servera Exim 4.99.1, ktorá rieši zraniteľnosť (CVE-2025-67896), umožňujúcu vzdialenému útočníkovi poškodiť obsah pamäte mimo vyhradeného zásobníka. Problém by mohol byť využitý na vzdialené vykonávanie kódu na serveri, avšak zatiaľ nebol vytvorený funkčný exploit.
Zraniteľnosť sa nachádza v kóde pre prácu s internou databázou (Hints DB) založenou na SQLite, ktorá sa používa na uchovávanie dočasných informácií, stavu doručenia správ a informácií o intenzite odosielania e-mailov. Problém je spôsobený tým, že záznamy z databázy boli priamo transformované do vnútornej štruktúry „dbdata_ratelimit_unique“ bez riadneho overenia. Došlo k situácii, keď bol vytvorený pevný poľový „bloom“ s veľkosťou 40 bajtov, a obsah poľa „bloom_size“, určujúceho počet zapisovaných do poľa prvkov, závisel od veľkosti údajov v databáze. Útočník mohol spôsobiť zápis mimo vyhradeného zásobníka tým, že do databázy uložil dáta (využitím ďalšej zraniteľnosti), pri ktorých malo pole „bloom_size“ hodnotu zjavne väčšiu ako veľkosť poľa.
Problém sa prejavuje vo vydaniach Exim 4.99 a 4.98.2 a týka sa len konfigurácií s ACL ratelimit, v ktorých sa používajú parametre „unique“ alebo „per_addr“ (napríklad „warn ratelimit = 100 / 1h / per_addr / $sender_address“ alebo „warn ratelimit = 100 / 1h / per_rcpt / unique=$sender_address“). Navyše, na uskutočnenie útoku musí byť Exim zostavený s podporou SQLite (USE_SQLITE=yes), aktivovanou v konfiguračnom súbore (hints_database = sqlite). V zraniteľných konfiguráciách pri spustení „exim -bV“ sa zobrazuje „Hints DB: Using sqlite3“.
Z väčších distribúcií boli problémové verzie používané v Debian 13, Ubuntu 25.10, SUSE/openSUSE, Arch Linux, Fedora a FreeBSD. RHEL a odvozené distribúcie nie sú postihnuté problémom, pretože Exim nie je súčasťou ich oficiálneho repozitára balíkov (v EPEL zatiaľ nebolo vydané aktualizované balenie exim).
Taktiež sa zaznamenáva objavenie nového vektora na zneužitie zraniteľnosti CVE-2025-26794, odstránenej vo februárovom vydaní Exim 4.98.1. Zraniteľnosť umožňuje SQL kód injekciu do vnútornej databázy (Hints DB). Predtým pridaná oprava nezakryla jednoduché úvodzovky. Príklad príkazu MAIL FROM, ktorý vedie k injekcii SQL kódu: „MAIL FROM:<„x’/****/UNION/****/SELECT/****/X'<hex_blob>’—„@attacker.com>“. Táto zraniteľnosť môže byť použiteľná ako počiatočný článok na vytvorenie podmienok na vznik vyššie uvedeného pretečenia vyrovnávacej pamäte.
Zdroj: opennet.ru
