En las configuraciones de servidores DHCP Kea utilizadas por varias distribuciones, desarrolladas por el consorcio ISC como un reemplazo del clásico ISC DHCP, se han identificado vulnerabilidades que, en ciertas situaciones, permiten a un usuario local ejecutar código con privilegios de root o sobrescribir cualquier archivo en el sistema:
- CVE-2025-32801 — permite a un usuario local obtener privilegios de root en sistemas donde Kea se ejecuta bajo el usuario root, o tomar control total del servidor Kea en sistemas que ejecutan Kea bajo un usuario con privilegios restringidos. El ataque se lleva a cabo accediendo a la API REST proporcionada por el servicio kea-ctrl-agent, que por defecto acepta solicitudes a través de localhost:8000. En la mayoría de las configuraciones, la API REST está disponible para todos los usuarios locales del sistema sin necesidad de autenticación.
La explotación se realiza mediante el envío del comando set-config, que permite gestionar la configuración de todos los servicios de Kea. Entre otras cosas, el comando se puede utilizar para cambiar el parámetro 'hooks-libraries', que afecta la carga de bibliotecas de manejo adicionales. El atacante puede lograr la ejecución de su código en el contexto de los servicios de Kea mediante la sustitución de su propia biblioteca, cuya función con el atributo 'constructor' será llamada al abrir la biblioteca con la función 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 — la vulnerabilidad permite utilizar el comando config-write en la API REST para sobrescribir cualquier archivo en el sistema, en función de los permisos del usuario bajo el cual se ejecuta Kea. El atacante puede controlar el contenido que se escribe, pero los datos se registran en formato JSON y deben incluir configuraciones correctas de Kea. Sin embargo, no se puede descartar que esto pueda ser suficiente para ejecutar comandos con privilegios de root manipulando archivos en el directorio /etc/profile.d. curl -X POST -H 'Content-Type: application/json' \ -d '{ "command": "config-write", "arguments": { "filename": "/etc/evil.conf" } }' \ localhost:8000
Se mencionan varios escenarios para usar el comando config-write para cambiar la configuración de Kea. Por ejemplo, se pueden redirigir los archivos de registro a cualquier lugar del sistema de archivos, organizar el spoofing de sockets UNIX para servicios o bloquear la operación de Kea.
- CVE-2025-32803 — los registros ( /var/log/kea*.log), así como los archivos /var/lib/kea/*.cvs, contienen información sobre la vinculación direcciones IP (arrendamiento DHCP) y los datos asociados son accesibles para todos en modo lectura.
Ejecutar Kea con privilegios de root es común en las distribuciones Arch Linux, Gentoo, openSUSE Tumbleweed (hasta el 23 de mayo), FreeBSD, NetBSD (pkgsrc) y OpenBSD. En Debian, Ubuntu y Fedora, el servicio se ejecutó bajo un usuario no privilegiado separado. En Gentoo, el paquete con Kea está disponible solo en el repositorio inestable para la arquitectura amd64. En Ubuntu, a diferencia de otros sistemas, el servicio kea-ctrl-agent solo se iniciaba si se especificaba en la configuración el acceso a la API REST mediante contraseña. Se puede hacer un seguimiento de la publicación de actualizaciones de paquetes en las distribuciones en las páginas: Debian, Ubuntu, RHEL, openSUSE, Fedora, Gentoo, ALT Linux, Arch, FreeBSD, OpenBSD y NetBSD.
Además, se puede mencionar la vulnerabilidad (CVE-2025-23394), que se manifiesta en el paquete del servidor IMAP Cyrus, suministrado por el proyecto openSUSE en los repositorios Tumbleweed y Factory. Esta vulnerabilidad permite a un usuario local elevar sus privilegios de cyrus a root. Se ha asignado un nivel de gravedad crítico (9.8 de 10), pero está injustificadamente sobreevaluado, ya que para el ataque se requieren derechos de cyrus, que se pueden obtener a través de la explotación de otra vulnerabilidad en cyrus-imapd.
El problema se debe a un error al trabajar con enlaces simbólicos en el script daily-backup.sh, específico de las distribuciones SUSE/openSUSE. La esencia de la vulnerabilidad es que el script daily-backup.sh se ejecuta con privilegios de root, pero realiza una escritura en el directorio /var/lib/imap, en el cual puede crear archivos un usuario no privilegiado como cyrus. El ataque implica crear un enlace simbólico que apunte a un archivo del sistema (por ejemplo, se puede crear un enlace simbólico /var/lib/imap/mailboxes.txt que apunte a /etc/shadow). La vulnerabilidad ha sido corregida en la versión del paquete cyrus-imapd 3.8.4-2.1.
Fuente: opennet.ru
