Hola a tod@s
En este post veremos como poder ejecutar una solución temporal a las vulnerabilidades críticas de Apache Log4j, identificadas por CVE-2021-44228 y CVE-2021-45046 que afectan a productos Vmware. Esta entrada se enfocará en vCenter server 7.
Haciendo uso de estas vulnerabilidades una persona mal intencionada -con acceso de red a un producto Vmware-, puede realizar una ejecución remota de código a través de Apache Log4j para obtener el control total del sistema de destino.
Podemos ver más detalles de las vulnerabilidades en la “NATIONAL VULNERABILITY DATABASE“:
Vamos a VMware Security Solutions para poder ver más detalles: VMware Response to Apache Log4j Remote Code Execution Vulnerabilities (CVE-2021-44228, CVE-2021-45046)
Si bajamos en la página hasta “Response Matrix“, podemos ver más detalles de cada producto de VMware. En nuestro caso nos interesa poder ver el Workarounds para poder solucionar estas vulnerabilidades.
Como podemos ver el KB87081, es el Workarounds para solucionar las vulnerabilidades en VMware vCenter Server 7.x, 6.7.x, 6.5.x.
Si revisamos los detalles de este KB, VMware nos recomienda ejecutar el procedimiento “Automated Workaround (Recommended)“, así que revisaremos como ejecutarlo paso a paso.
Nota: VMware creo un script unificado para las vulnerabilidades CVE-2021-44228 y CVE-2021-45046 llamado “vc_log4j_mitigator.py”. Este script reemplaza la necesidad de ejecutar remove_log4j_class.py y vmsa-2021-0028-kb87081.py de forma independiente, sin embargo, no es necesario ejecutar el script “vc_log4j_mitigator.py” si ya ejecutamos los anteriores en nuestro vCenter. En el caso de no estar seguros podemos ejecutar el script “vc_log4j_mitigator.py” con la opción “–dryrun” para comprobar si nuestro entorno todavía tiene archivos vulnerables.
Para comenzar descargamos el archivo “vc_log4j_mitigator.py” desde la página de VMware KB87081, como se muestra en la imagen en un servidor con acceso a nuestro vCenter server.
Ahora usando WinSCP nos conectamos a nuestro vCenter server para poder subir el script que descargamos.
Cargamos el archivo “vc_log4j_mitigator.py” al directorio /tmp.
Nota: En caso que tengamos problemas con acceder por SCP con WinSCP, podemos realizar los pasos descritos en el VMware KB 2107727.
Ingresamos por SSH a la IP de nuestro vCenter Server Appliance. Ejecutamos los siguientes comandos en caso de que no tengamos habilitada la SHELL.
# shell.set –enable True
# shell
Ejecutamos el script que cargamos en el directorio /tmp con el comando.
# python vc_log4j_mitigator.py
Nota: Este script detendrá todos los servicios de vCenter, actualizará todos los archivos necesarios con el indicador formatMsgNoLookups, eliminará los JndiLookup.class de todos los archivos jar/war del appliancey, y finalmente iniciará todos los servicios de vCenter. Los archivos que modifica el script se notificarán a medida que se ejecute el script.
Esperamos que termine de ejecutarse el script Cuando finalice, podemos ver la cantidad de archivos que se modificaron. Veremos que vuelve a subir los servicios y el resultado.
Listo! Con estos simples pasos tenemos una solución alternativa para las vulnerabilidades CVE-2021-44228 y CVE-2021-45046. Ahora con la salida de vSphere 7.0 Update 3c estas vulnerabilidades están resultas.
Mantener nuestra infraestructura VMware con los parches correspondientes de seguridad, teniendo en lo posible las redes segmentadas nos ayuda a mitigar los riesgos y proteger nuestra infraestructura virtual.
Espero que esta información pueda ser de ayuda, y cualquier duda o sugerencia la dejan en los comentarios. Saludos.