Vulnerabilidad explotable de forma remota en el agente OMI, impuesto en entornos Linux de Microsoft Azure

Los clientes de la plataforma en la nube Microsoft Azure que utilizan Linux en máquinas virtuales han enfrentado una vulnerabilidad crítica (CVE-2021-38647) que permite la ejecución remota de código con privilegios de root. La vulnerabilidad se ha denominado OMIGOD y es notable porque el problema se encuentra en la aplicación OMI Agent, que se instala discretamente en entornos Linux.

OMI Agent se instala y activa automáticamente al utilizar servicios como Azure Automation, Azure Automatic Update, Azure Operations Management Suite, Azure Log Analytics, Azure Configuration Management, Azure Diagnostics y Azure Container Insights. Por ejemplo, los entornos Linux en Azure que tienen habilitada la monitorización son vulnerables. El agente es parte del paquete abierto OMI (Open Management Infrastructure Agent) con la implementación de la pila DMTF CIM/WBEM para la gestión de la infraestructura de TI.

OMI Agent se instala en el sistema bajo el usuario omsagent y crea configuraciones en /etc/sudoers para ejecutar una serie de scripts con privilegios de root. Durante la operación de algunos servicios, se crean sockets de red que escuchan en los puertos de red 5985, 5986 y 1270. Un escaneo en el servicio Shodan muestra la existencia en la red de más de 15,000 entornos Linux vulnerables. Actualmente, ya está disponible en acceso público un prototipo funcional de un exploit que permite ejecutar su código con privilegios de root en sistemas similares.

El problema se agrava porque en Azure no está claramente documentado el uso de OMI y OMI Agent se instala sin previo aviso: es suficiente con aceptar los términos del servicio seleccionado al configurar el entorno y OMI Agent se activará automáticamente, es decir, la mayoría de los usuarios ni siquiera sospechan de su existencia.

El método de explotación es trivial: basta con enviar una solicitud XML al agente, eliminando el encabezado responsable de la autenticación. OMI utiliza autenticación al recibir mensajes de control, verificando que el cliente tiene derecho a enviar ciertos comandos. La esencia de la vulnerabilidad es que al eliminar el encabezado 'Authentication' en el mensaje, que se encarga de la autenticación, servidor considera que la verificación fue exitosa, acepta el mensaje de control y permite la ejecución de comandos con privilegios de root. Para ejecutar comandos arbitrarios en el sistema, es suficiente utilizar en el mensaje el comando estándar ExecuteShellCommand_INPUT. Por ejemplo, para ejecutar la utilidad «id», basta con enviar la solicitud: curl -H «Content-Type: application/soap+xml;charset=UTF-8» -k —data-binary «@http_body.txt» https://10.0.0.5:5986/wsman …

id

0

La empresa Microsoft ya ha lanzado la actualización OMI 1.6.8.1 que corrige la vulnerabilidad, pero aún no se ha entregado a los usuarios de Microsoft Azure (en nuevos entornos todavía se está instalando la versión anterior de OMI). La autoactualización del agente no es compatible, por lo que los usuarios deben realizar la actualización del paquete manualmente, utilizando los comandos «dpkg -l omi» en Debian/Ubuntu o «rpm -qa omi» en Fedora/RHEL. Como solución temporal de protección, se recomienda bloquear el acceso a los puertos de red 5985, 5986 y 1270.

Además de CVE-2021-38647, en OMI 1.6.8.1 también se han corregido tres vulnerabilidades (CVE-2021-38648, CVE-2021-38645 y CVE-2021-38649), que permiten a un usuario local no privilegiado ejecutar su código con privilegios de root.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster