Global Preloader
Vulnerabilidad
(12/Mar/2018) Vulnerabilidad en EXIM permite ejecución remota de código

Vulnerabilidad en EXIM permite ejecución remota de código

Exim es uno de los servidores de correo electrónico de código abierto más populares, estando disponible tanto para sistemas tipo UNIX como para Windows. Desarrollado por la Universidad de Cambridge en 1995, es en la actualidad el MTA por defecto de Debian y otras distribuciones GNU/Linux.

El fallo descubierto se encontraría en la función 'b64decode', utilizada por métodos de autenticación como 'CRAM-MD5' (utilizado por defecto). Cualquier método de autenticación que haga uso de dicha función es vulnerable. El fallo sería explotable mediante un base64 inválido especialmente manipulado, el cual provocaría un desbordamiento en el buffer.

La vulnerabilidad se aprovecha del tamaño de buffer que asigna la función, el cual es de '3*(len/4)+1'. Normalmente esto no sería un problema, pero si se utiliza un base64 inválido de tamaño '4n+3', la función asignará un tamaño de '3n+1', pero utilizará '3n+2'. Esto acaba provocando que el buffer se desborde por un byte.

La vulnerabilidad se encuentra presente desde la primera versión de EXIM y afectaría al menos a 400 mil servidores que ejecutan este servidor de correo.

Un investigador de Devco.re (Meh Chang) reportó el día 5 de febrero el descubrimiento de esta vulnerabilidad en las listas de correo de seguridad de EXIM, identificándose al día siguiente con el CVE-2018-6789, y lanzándose una versión ya parcheada (4.90.1) el día 10 del mismo mes. Según el mismo sitio web de Exim, todas las versiones anteriores a dicha versión deben considerarse obsoletas.