En este otro post os explico un poco sobre la vulnerabilidad de log4j2 y como la he buscado yo en Windows.
Como sabéis VMware estaba afectado.
Estaba recopilando información del KB y he visto que en el blog de RAGASYS SISTEMAS han sido más rápidos que yo, lo explican fenomenal paso por paso.
Como es algo bastante importante voy a publicar mis pasos también, por si alguien lo necesita y haya una difusión más amplia. también me he encontrado algún fallito en el reinicio de los servicio despues de ejecutar ese script.
Como indica en el kB nos vamos a descargar el script de Python desde aquí
Buscamos la ruta donde hayamos descargado el script de Python en nuestro pc y abrimos un Notepad o algo similar yo he usado el Notepad++
Accedemos por ssh a nuestro vcsa y vamos a /tmp y creamos un fichero nuevo con vi
vi vmsa-2021-0028-kb87081.py
Copiamos el contenido de nuestro Notepad en el fichero creado en el vcsa
Y lo guardamos con: wq!
Ejecutamos el script de Python con:
python vmsa-2021-0028-kb87081.py
Nos informa que va a reiniciar todos los servicios, le decimos que yes
Automáticamente nos va a parar los servicios y a corregir las vulnerabilidades de nuestro vcsa y volverá a arrancar los servicios.
Este proceso ha tardado unos 10 minutos más o menos quizás algo más no so estreséis si os tarda como indica en la imagen está corrigiendo ciertos ficheros y volviendo a arrancar el vcsa.
He hecho varios vcenter hoy y me he encontrado errores a veces en el servicio de vmon, por si no lo sabéis es el que inicia y detiene los servicios de vCenter Server y supervisa el estado de la API del servicio.
Que no cunda el pánico, suele ser por la versión de vcenter que tenéis, si falla en servicio tocaría revisarlo manualmente.
Para ello nos vamos al KB que nos indica en el fallo.
Vamos a ir a fichero en concreto donde corregimos la vulnerabilidad
vi /usr/lib/vmware-vmon/java-wrapper-vmon
comprobamos que al final del fichero tenemos cambiado esta línea
exec $java_start_bin $jvm_dynargs $security_dynargs $original_args
por estas 2 líneas
log4j_arg="-Dlog4j2.formatMsgNoLookups=true" exec $java_start_bin $jvm_dynargs $log4j_arg $security_dynargs $original_args
revisamos el propietario y los permisos
chown root:cis /usr/lib/vmware-vmon/java-wrapper-vmon chmod 754 /usr/lib/vmware-vmon/java-wrapper-vmon
Paramos los servicio
service-control --stop –all
Y los arrancamos
service-control --start –all
Es posible que el servicio se queda sin arrancar incluso después de para los servicios ya según que veris onde vcsa he tenido que reiniciarlo por completo.
reboot
como ultima comprobación voy a revisar que veo todo en mi vcenter
y podemos comprobar lo servicio en la web de administracion de nuestro vcsa
Con esto tenemos corregido la vulnerabilidad de log4j2 en nuestro vcenter
Espero que os sirva
ACTUALIZACION: Esto esta siendo un locura. vmware actualiza su kb con un nuevo script en otro kb que hay que ejecutar llamado (la web va bastante saturadita) remove_log4j_class.py al finalizar
ha habido con indicaba mucho errores relacionado son el servicio vmon y el servicio de analítica este nuevo script lo corrige
Los pasos son los siguientes:
Descargamos el script adjunto a este KB (remove_log4j_class.py)
Iniciamos sesión en vCSA usando un cliente SSH (usando Putty.exe o cualquier cliente SSH similar)
Transferimos el archivo a la carpeta / tmp en vCenter Server Appliance usando WinSCP
Nota: Es necesario habilitar el shell bash antes de que WinSCP funcione. 4. Ejecute el script copiado en el paso 1: python remove_log4j_class.py
o bien hacemos lo mismo abrimos un fichero vi en temp con creamos uno nuevo y ejecutamos el script python
remove_log4j_class.py
El script detendrá todos los servicios de vCenter, continuará con la eliminación de JndiLookup.class de todos los archivos jar en el dispositivo y finalmente iniciará todos los servicios de vCenter. Los archivos que modifica el script se informarán como «ARCHIVO VULNERABLE» a medida que se ejecuta el script.