Saludos amigos, la semana pasada hablábamos del parche de VMware para ESXi llamado en VMware VMSA-2018-0004:
Este parche que incluía también la corrección de microcodigo del procesador ha estado ocasionando problemas, y ha sido Intel quien ha dado la voz de alarma, por lo que VMware eliminaba este parche de su portal de descargas y lanzaba este KB para los clientes que tengan procesadores Intel Haswell o Broadwell, adjunto la tabla de procesadores a los que si habéis aplicado el parche del otro día, necesitáis seguir leyendo:
| VCG Processor Series/Family | Encoded CPUID Family. Model. Stepping | Processor SKU Stepping | Microcode Revision | ||
| Intel Xeon E3-1200-v3 Intel i3-4300 Intel i5-4500-TE Intel i7-4700-EQ |
0x000306C3 | C0 | 0x00000023 | ||
| Intel Xeon E5-1600-v2 Intel Xeon E5-2400-v2 Intel Xeon E5-2600-v2; Intel Xeon E5-4600-v2 |
0x000306E4 | C1/M1/S1 | 0x0000042A | ||
| Intel Xeon E5-1600-v3 Intel Xeon E5-2400-v3 Intel Xeon E5-2600-v3; Intel Xeon E5-4600-v3 |
0x000306F2 | C0/C1, M0/M1, R1/R2 | 0x0000003B | ||
| Intel Xeon E7-8800/4800-v3 | 0x000306F4 | E0 | 0x00000010 | ||
| Intel Xeon E3-1200-v4 | 0x00040671 | G0 | 0x0000001B | ||
| Intel Xeon E5-1600-v4 Intel Xeon E5-2600-v4; Intel Xeon E5-4600-v4 |
0x000406F1 | B0/M0/R0 | 0x0B000025 | ||
| Intel Xeon E7-8800/4800-v4 | 0x000406F1 | B0/M0/R0 | 0x0B000025 | ||
| Intel Xeon Gold 61/00/5100, Silver 4100, Bronze 3100 (Skylake-SP) Series | 0x00050654 | H0 | 0x0200003A | ||
| Intel Xeon Platinum 8100 (Skylake-SP) Series | 0x00050654 | H0 | 0x0200003A | ||
| Intel Xeon D-1500 | 0x00050663 | V2 | 0x07000011 | ||
| Intel Xeon E3-1200-v5 | 0x000506E3 | R0/S0 | 0x000000C2 | ||
| Intel Xeon E3-1200-v6 | 0x000906E9 | B0 | 0x0000007C |
William Lam al rescate
Con este cacao bueno que VMware e Intel han montado lanzando KBs y patches que afectan negativamente a ciertos modelos, etc. Lo mejor que nos podía pasar es que William Lam lanzara unos Scripts para comprobar todo y quedarnos tranquilos.
Instalando PowerCLI con un solo click
En caso de que no tuviéramos ya la última versión de PowerCLI, aquí los pasos de cómo instalarlo:

Importaremos los módulos del script de William:
C:\Users\Administrator\Downloads> Import-Module .\VerifyESXiMicrocodePatch.ps1 -Force Security warning Run only scripts that you trust. While scripts from the internet can be useful, this script can potentially harm your computer. If you trust this script, use the Unblock-File cmdlet to allow the script to run without this warning message. Do you want to run C:\Users\Administrator\Downloads\VerifyESXiMicrocodePatch.ps1? [D] Do not run [R] Run once [S] Suspend [?] Help (default is "D"): R
Y ahora ya podremos continuar con los siguientes pasos.
Comprobando Spectre y el estado de Intel Sighting
Vamos por partes, lo primero que haremos será descargar el script de William llamado VerifyESXiMicrocodePatch.ps1 que contiene las siguientes funciones para lanzar:
- Verify-ESXiMicrocodePatch
- Verify-ESXiMicrocodePatchAndVM
Verificando nuestros ESXi con Verify-ESXiMicrocodePatch
Verify-ESXiMicrocodePatch sólo verifica que el microcódigo ESXi ha sido aplicado (esto podría haber sido una actualización de BIOS/Firmware del proveedor de hardware) pero como he mencionado anteriormente, también está incluido dentro del parche ESXi. También verifica que una de las tres nuevas características de la CPU está expuesta al host ESXi y también verá una columna Afectada para cada host ESXi.
Podemos lanzarlo de tres maneras diferentes:
- Si no pasamos ningún parámetro, entonces consultará todos los hosts ESXi para un determinado entorno vSphere cuando esté conectado a un vCenter Server o a un host ESXi específico si está conectado directamente a un host.
- Podremos limitar el alcance al proporcionar un Cluster vSphere específico usando el parámetro -ClusterName
- O, finalmente, podemos comprobar un host ESXi particular usando el parámetro -VMhostName
Por ejemplo, este es el resultado del comando en mi entorno de dos Hosts, en este resultados vemos cosas muy interesantes. Por un lado tengo los dos Host parcheados para Spectre, el Supermicro ha incluido el microcodigo para el procesador y vemos las nuevas instrucciones de la CPU todas disponibles, con lo que estoy protegido. Por suerte ninguno de los dos tiene el IntelSigthing, aunque el HP no ha sido suficiente el parche de VMware y habrá que esperar que HP lanza nueva BIOS para corregir Spectre en sus CPU:
C:\Users\Administrator\Downloads> Verify-ESXiMicrocodePatch VMHost CPU IBRPresent IBPBPresent STIBPresent Affected IntelSighting ------ --- ---------- ----------- ----------- -------- ------------- esxi-zlon-001.zimbra.io Intel(R) Xeon(R) CPU E3-1230 V2 @ 3.30GHz False False False True False esxi-zlon-002.zimbra.io Intel(R) Xeon(R) CPU D-1540 @ 2.00GHz True True True False False
Verificando nuestras GuestVM con Verify-ESXiMicrocodePatchandVM
Verify-ESXiMicrocodePatchAndVM puede ejecutarse de tres maneras también:
- Si no pasa ningún parámetro, entonces consultará todos los VMs para un entorno vSphere dado, ya sea que se esté conectando a un servidor vCenter Server o directamente a un host ESXi específico.
- Podemos limitar el alcance proporcionando un vSphere Cluster específico usando el parámetro -ClusterName
- O, finalmente, podemos comprobar un VM particular usando el parámetro -VMName
Este es el resultado de mis VMs, el script solo comprueba las que están en Poweron, para que aparezcan no vulnerables tendremos que:
- Tener parcheado el microcodigo del procesador
- Tener parcheado cada OS que tenemos en las VM, Windows, Linux, etc.
- Hacer un power cycle de las VM, no sirve con un reboot del sistema operativo
Una vez cumplimos con esto, las VM pueden acceder a los nuevos valores del microcodigo, como vemos aquí:
C:\Users\Administrator\Downloads> Verify-ESXiMicrocodePatchAndVM VM IBRPresent IBPBPresent STIBPresent vHW Affected -- ---------- ----------- ----------- --- -------- AD True True True vmx-11 False HTML5 FLING True True True vmx-11 False PFSENSE-FW True True True vmx-13 False PHP-IPAM True True True vmx-11 False PRTG True True True vmx-11 False TIG-MONITOR True True True vmx-11 False VCSA_6.5 True True True vmx-10 False Veeam-B&R-v9 True True True vmx-11 False w2016 True True True vmx-13 False ZMLD01 True True True vmx-11 False ZMMB01 True True True vmx-11 False ZMMT01 True True True vmx-11 False
Solución temporal para aquellos afectados por Intel Sighting
VMware, en su KB 52345, nos menciona un proceso que podemos realizar de manera manual en todos los Hosts ESXi a los que hemos aplicado el parche VMSA-2018-0004 y que estén afectados por el bug que Intel ha encontrado, los pasos son estos:
- En cada host ESXi afectado, añadir la siguiente línea en el fichero /etc/vmware/config:
cpuid.7.edx = "----:00--:----:----:----:----:----:----"
Espero que os guste y seguiré informando sobre este importante tema.

Como siempre una vez mas un post espectacular amigo 😉