V konfiguracích DHCP serveru Kea, vyvíjeného konsorciem ISC jako náhrady klasického ISC DHCP, používaných různými distribucemi, byly odhaleny zranitelnosti, které v některých situacích umožňují lokálnímu uživateli provést kód s právy roota nebo přepsat jakýkoli soubor v systému:
- CVE-2025-32801 — umožňuje lokálnímu uživateli získat root privilegium v systémech, kde je Kea spuštěna pod uživatelským účtem root, nebo plnou kontrolu nad serverem Kea v systémech, které spouští Kea pod uživatelským účtem s omezenými právy. Útok se provádí skrze volání REST API, které poskytuje služba kea-ctrl-agent a která ve výchozím nastavení přijímá požadavky přes localhost:8000. Ve většině konfigurací je REST API dostupné pro všechny místní uživatele systému bez nutnosti autentizace.
Exploataci lze provést zasláním příkazu set-config, který umožňuje spravovat nastavení všech služeb Kea. Mezi jiným lze příkaz použít k změně parametru „hooks-libraries“, který ovlivňuje načítání dodatečných knihoven-zpracovatelů. Útočník může dosáhnout spuštění svého kódu v kontextu služeb Kea prostřednictvím substituce své knihovny, jejíž funkce s atributem „constructor“ bude vyvolána při otevření knihovny funkcí dlopen(). curl -X POST -H "Content-Type: application/json" \ -d ‘{ "command": "config-set", "arguments": { "Control-agent": {"hooks-libraries": [{"library": "/home/someuser/libexploit.so"}] }}}’ \ localhost:8000
- CVE-2025-32802 — zranitelnost umožňuje použít příkaz config-write v REST API k přepsání jakéhokoli souboru v systému, jak dovolují práva uživatele, pod kterým je Kea spuštěna. Útočník může kontrolovat zapisovaný obsah, avšak data jsou zapisována ve formátu JSON a musí obsahovat platná nastavení Kea. Nicméně není vyloučeno, že toto může být dostatečné pro spuštění příkazů s právy roota prostřednictvím manipulace s soubory v adresáři /etc/profile.d. curl -X POST -H "Content-Type: application/json" \ -d ‘{ "command": "config-write", "arguments": { "filename": "/etc/evil.conf" } }’ \ localhost:8000
Samostatně jsou zmíněny různé scénáře použití příkazu config-write pro změnu nastavení Kea. Například je možné přesměrovat logy do libovolného místa v souborovém systému, organizovat spoofing řízení UNIX socketů služeb nebo zablokovat funkci Kea.
- CVE-2025-32803 — logy (/var/log/kea*.log) a soubory /var/lib/kea/*.cvs, obsahující informace o přiřazení IP adress (DHCP pronájem) a související data, jsou dostupná všem pro čtení.
Spuštění Kea s právy root je běžné v distribucích Arch Linux, Gentoo, openSUSE Tumbleweed (do 23. května), FreeBSD, NetBSD (pkgsrc) a OpenBSD. V Debianu, Ubuntu a Federaci byl servis spuštěn pod samostatným nepřiděleným uživatelským účtem. V Gentoo je balíček s Kea dostupný pouze ve unstable repozitáři pro architekturu amd64. V Ubuntu, na rozdíl od jiných systémů, byl servis kea-ctrl-agent spuštěn pouze v případě, že byly v nastavení zadány přístupové údaje k REST API prostřednictvím hesla. Aktualizace balíčků v distribucích lze sledovat na stránkách: Debian, Ubuntu, RHEL, openSUSE, Fedora, Gentoo, ALT Linux, Arch, FreeBSD, OpenBSD a NetBSD.
Dále lze zmínit zranitelnost (CVE-2025-23394), která se projevuje v balíčku s IMAP serverem Cyrus, dodávaném projektem openSUSE v repozitářích Tumbleweed a Factory. Tato zranitelnost umožňuje místnímu uživateli zvýšit privilegium z uživatele cyrus na root. Zranitelnosti byla přiřazena kritická úroveň nebezpečnosti (9.8 z 10), avšak je nepřiměřeně nadhodnocena, protože pro útok jsou potřebná práva cyrus, která lze získat zneužitím jiné zranitelnosti v cyrus-imapd.
Problém je způsoben chybou při práci se symbolickými odkazy ve skriptu daily-backup.sh, specifickém pro distribuce SUSE/openSUSE. Podstata zranitelnosti spočívá v tom, že skript daily-backup.sh je spuštěn s právy root, ale zapisuje do adresáře /var/lib/imap, kde může vytvářet soubory nepřidělený uživatel cyrus. Útok spočívá v vytvoření symbolického odkazu, který ukazuje na systémový soubor (například lze vytvořit symbolický odkaz /var/lib/imap/mailboxes.txt, který ukazuje na /etc/shadow). Zranitelnost byla odstraněna ve verzi balíčku cyrus-imapd 3.8.4-2.1.
Zdroj: opennet.ru
