Actualización urgente de Exim frente a CVE-2026-45185 en GnuTLS

Foto del autor

CyberSecureFox Editorial Team

El proyecto Exim ha publicado una actualización de seguridad de emergencia que corrige la vulnerabilidad CVE-2026-45185 de tipo use-after-free, la cual provoca corrupción de la memoria en el heap y, potencialmente, permite la ejecución de código arbitrario en el servidor de correo. La vulnerabilidad afecta a todas las versiones de Exim desde la 4.97 hasta la 4.99.2 inclusive, compiladas con soporte para GnuTLS (parámetro de compilación USE_GNUTLS=yes). Para explotarla, al atacante le basta con establecer una conexión TLS y utilizar la extensión SMTP CHUNKING (BDAT); no se requiere ninguna configuración especial del servidor. La corrección está disponible en la versión 4.99.3, no existen medidas de mitigación alternativas y los administradores deben actualizar de inmediato.

Mecanismo de la vulnerabilidad

Según el boletín oficial de seguridad de Exim, la vulnerabilidad aparece durante el procesamiento del cuerpo del mensaje transmitido mediante el comando BDAT, cuando el cliente envía la notificación TLS close_notify antes de finalizar la transferencia de datos y, a continuación, envía el byte final en texto claro dentro de la misma conexión TCP. Esta secuencia provoca que Exim escriba datos en un búfer de memoria que ya se había liberado al finalizar la sesión TLS, lo que causa corrupción del heap (heap corruption).

De acuerdo con el investigador Federico Kirschbaum, de la empresa XBOW, quien descubrió la vulnerabilidad, al terminar la sesión TLS Exim libera el búfer de transmisión, pero el manejador anidado de recepción BDAT sigue procesando los bytes entrantes y llama a la función ungetc(), que escribe un carácter (\n) en una zona de memoria ya liberada. Esta escritura de un solo byte alcanza los metadatos del asignador, altera su estructura interna y, presumiblemente, permite al atacante obtener primitivas adicionales para una explotación posterior.

Versiones afectadas y condiciones de explotación

  • Versiones afectadas: Exim 4.97 — 4.99.2 inclusive
  • Condición: compilación con el parámetro USE_GNUTLS=yes
  • No afectadas: compilaciones que usan OpenSSL u otras bibliotecas TLS
  • Requisitos para el atacante: capacidad de establecer una conexión TLS y usar la extensión CHUNKING (BDAT)
  • Versión corregida: Exim 4.99.3
  • Estado de explotación: no hay datos sobre explotación activa en ataques reales en el momento de la publicación; la vulnerabilidad no figura en el catálogo CISA KEV

Por qué esta vulnerabilidad es especialmente peligrosa

Exim es uno de los agentes de transferencia de correo (MTA) más extendidos en sistemas tipo Unix. Los servidores de correo, por su naturaleza, son accesibles desde internet y aceptan conexiones entrantes de clientes arbitrarios, lo que los convierte en un objetivo atractivo. La barrera para explotar CVE-2026-45185 es extremadamente baja: el atacante no necesita autenticación, no se requiere una configuración no estándar del servidor; basta con una conexión TLS estándar con soporte de BDAT, que está habilitado por defecto en las versiones modernas de Exim.

También resulta especialmente relevante que la vulnerabilidad esté ligada a una biblioteca TLS concreta. Muchas distribuciones Linux proporcionan paquetes de Exim compilados precisamente con GnuTLS (por ejemplo, Debian y sus derivados han utilizado tradicionalmente GnuTLS). Los administradores deben comprobar con qué biblioteca TLS se ha compilado su instancia de Exim ejecutando el comando exim -bV y fijándose en la línea que indica la biblioteca TLS.

Contexto histórico

No es la primera vez que se descubren vulnerabilidades críticas de tipo use-after-free en Exim relacionadas con el manejo de BDAT. En 2017 se corrigió la vulnerabilidad CVE-2017-16943 (CVSS 9.8) en el demonio SMTP, que según los investigadores permitía a atacantes no autenticados lograr ejecución remota de código mediante comandos BDAT especialmente elaborados. La reaparición de una vulnerabilidad de la misma clase en el mismo componente nueve años después señala la complejidad sistémica de gestionar de forma segura los estados derivados de la interacción entre TLS y la recepción en flujo de datos en la base de código de Exim.

Recomendaciones

  1. Actualice Exim inmediatamente a la versión 4.99.3. Según el boletín, no existen soluciones alternativas ni correcciones temporales de configuración que eliminen la vulnerabilidad.
  2. Identifique la biblioteca TLS utilizada: ejecute exim -bV | grep TLS. Si en la salida aparece GnuTLS, su servidor es vulnerable.
  3. Realice una auditoría de la accesibilidad del servidor SMTP desde internet. Restrinja el acceso a los puertos 25/465/587 a nivel de firewall siempre que sea posible sin interrumpir el funcionamiento de la infraestructura de correo.
  4. Revise los registros en busca de sesiones TLS anómalas con finalización prematura combinada con comandos BDAT; esto puede indicar intentos de explotación.
  5. Considere recompilar con OpenSSL como medida temporal si no es posible actualizar rápidamente a la versión 4.99.3; las compilaciones con OpenSSL no se ven afectadas por esta vulnerabilidad.

La corrección incluida en la versión 4.99.3 garantiza el restablecimiento adecuado de la pila de procesamiento de entrada al recibir la notificación TLS close_notify durante una transferencia BDAT activa, evitando el uso de punteros obsoletos. Dada la ausencia de medidas de protección alternativas, la baja barrera de explotación y la disponibilidad pública de los detalles técnicos de la vulnerabilidad, la actualización de Exim a la versión 4.99.3 debe considerarse una tarea de máxima prioridad para todas las organizaciones que utilicen este MTA con GnuTLS.


CyberSecureFox Editorial Team

El equipo editorial de CyberSecureFox cubre noticias de ciberseguridad, vulnerabilidades, campañas de malware, actividad de ransomware, AI security, cloud security y security advisories de proveedores. Los materiales se preparan a partir de official advisories, datos de CVE/NVD, alertas de CISA, publicaciones de proveedores e informes públicos de investigadores. Los artículos se revisan antes de su publicación y se actualizan cuando aparece nueva información.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.