30 ene. 2020

Vulnerabilidad crítica en OpenSMTPd de OpenBSD

Existe vulnerabilidad crítica en el servidor de correo de OpenSMTPd, está presente en muchos sistemas basados ​​en Unix y puede explotarse para ejecutar comandos de shell con privilegios de root.

Este componente es una implementación gratuita del protocolo SMTP, es parte del proyecto OpenBSD y tiene una versión portátil que es compatible con otros sistemas operativos: FreeBSD, NetBSD, macOS, Linux (Alpine, Arch, Debian, Fedora, CentOS). El fallo parece afectar a la versión 6.6 de OpenBSD y funciona contra la configuración por defecto tanto de la interfaz local como del servicio habilitado a la escucha.

Bug explotable tanto local como remotamente

El bug identificado como CVE-2020-7247 permite escalamiento de privilegios locales y ejecución remota de código. El error está en la función "smtp_mailaddr ()" que valida las direcciones del remitente y el destinatario y fue introducido en el código OpenSMTPD en mayo de 2018. Los atacantes pueden aprovecharlo de forma local o remota para ejecutar comandos arbitrarios con privilegios de root en un sistema vulnerable:
  • localmente, en la configuración predeterminada de OpenSMTPD, que escucha en la interfaz de loopback y solo acepta correo del localhost;
  • local y remotamente, en la configuración predeterminada "uncommented" de OpenSMTPD, que escucha en todas las interfaces y acepta correo externo.
Esto esto es posible al pasar un comando en el campo "MAIL FROM", que especifica la dirección de correo electrónico del remitente.

El informe técnico publicado por Qualys explica que "smtp_mailaddr ()" se comporta erróneamente cuando la parte local de una dirección no es válida (por ejemplo, tiene caracteres no aceptados) y el nombre de dominio está vacío. Un atacante puede usar caracteres que no estén en la lista blanca (MAILADDR_ALLOWED) ni que escapados (MAILADDR_ESCAPE) para agregar ejecución shell al comando MDA.
Cualquier comando de shell con caracteres que no están definidos en MAILADDR_ESCAPE debería funcionar.

Debido a algunas limitaciones, los investigadores de vulnerabilidad de Qualys crearon una prueba de concepto (PoC) utilizando una técnica similar a al del gusano Morris. Una de las restricciones era un límite de 64 caracteres para los comandos y la otra era que los caracteres "$" y "|" se convertían a ":". Estos problemas se eliminaron al ejecutar el cuerpo del correo como un script en Sendmail, que fue lo que hizo el gusano Morris cuando comenzó a propagarse en noviembre de 1988.

Los desarrolladores de OpenSMTPD ya desarrollaron un parche y existe una actualización de OpenSMTPD 6.6.2p1.

Actualización 26/02: El equipo de Q/ualys Research Labs acaba de anunciar el descubrimiento de una nueva vulnerabilidad crítica de OpenSMTPD (CVE-2020-8794) que está siendo explotado in-the-wild. Esta nueva vulnerabilidad se debe a un componente del cliente de OpenSMTPD introducida hace casi 5 años, basándose en un problema de lectura fuera de límites. Los atacantes podrían ejecutar código arbitrario en los servidores vulnerables con privilegios de root, o de cualquier otro usuario, con el envío de mensajes SMTP con un diseño específico. Para realizar el ataque se podría usar la configuración predeterminada del sistema, o aprovechar el mecanismo de devolución de correo electrónico. Se debe actualizar a OpenSMTPD 6.6.4p1.

Fuente: BC

0 comentarios:

Publicar un comentario

Gracias por dejar un comentario en Segu-Info
Si vas a dejar una consulta, procura tener habilitado tu perfil en Blogger o deja una forma de contacto.

Gracias por comentar!