
VULNERABILIDAD: CVE-2019-1132 exploit para Windows
En RET SOLUCIONES la seguridad informática es nuestro pilar más importante. Por eso, contamos con un amplio portafolio que incluye servicios y soluciones especializados para proteger tus equipos.
Por otra parte, compartimos contenido de interés que te permite conocer las amenazas e implementar las medidas necesarias para contrarrestarlas.
En esta ocasión, vamos a centrarnos en un exploit para una zero-day (CVE-2019-1132) detectado y analizado por los investigadores del laboratorio ESET en junio del 2019.
Luego de este descubrimiento se reportó al Centro de Respuesta de Seguridad de Microsoft, quienes repararon la vulnerabilidad y lanzaron el parche correspondiente.
Descripción
Aprovecha vulnerabilidad de escalada de privilegios local, desreferencia de puntero NULL (nulo) en el componente win32k.sys, utilizando objetos del tipo menú emergente.
- Nombre: CVE-2019-1132
- Tipo: Exploit
- Ataques: altamente dirigidos
- Origen: Europa del Este
- Similares: Exploit del grupo Sednit (2017)
- Sistema operativo: Windows
Versiones que afecta el CVE-2019-1132
- Windows 7 for 32-bit Systems Service Pack 1
- Windows 7 for x64-based Systems Service Pack 1
- Windows Server 2008 for 32-bit Systems Service Pack 2
- Windows Server 2008 for Itanium-Based Systems Service Pack 2
- Windows Server 2008 for x64-based Systems Service Pack 2
- Windows Server 2008 R2 for Itanium-Based Systems Service Pack 1
- Windows Server 2008 R2 for x64-based Systems Service Pack 1
Proceso del CVE-2019-1132
- Crea ventana para la primera etapa del ataque con objetos del menú emergente.
- Agrega elementos del menú utilizando funciones CreatePopupMenu y AppendMenu.
- Configura los hooks WH_CALLWNDPROC y EVENT_SYSTEM_MENUPOPUPSTART.
- Crea otra ventaba para la segunda etapa de la explotación.
- Despliega un menú utilizando la función TrackPopupMenu.
- Ejecuta el código hookeado a EVENT_SYSTEM_MENUPOPUPSTART.
- Envía la secuencia de mensajes MN_SELECTITEM, MN_SELECTFIRSTVALIDITEM y MN_OPENHIERARCHY al menú para intenta abrirse como el primer ítem disponible en el menú.
- Manipula el mensaje el mensaje WM_NCCREATE en el hook WH_CALLWNDPROC para capturar el momento de creación del menú inicial y su submenú.
- Envía el mensaje MN_CANCELMENUS (0x1E6) al primer menú para cancelarlo (tagPOPUPMENU‑>ppopupmenuRoot es igual a 0).
- Utiliza este elemento en esta estructura del kernel desreferencia de puntero NULL.
- Asigna una nueva página en la dirección 0x0.
- Trata a esta dirección como un objeto tagPOPUPMENU.
- Llama a la función HMValidateHandle no exportada en la librería user32.dll para filtrar la dirección de memoria del kernel de la estructura tagWND utilizando la segunda ventana.
- Crea un falso objeto tagPOPUPMENU en la página nula.
- Envía un mensaje MN_BUTTONDOWN a un submenú.
- Ejecuta la función win32k!xxxMNOpenHierarchy.
- Pasa un objeto creado a la página nula a win32k!HMAssignmentLock.
- Envía un mensaje específico a la segunda ventana para ejecutar WndProc en modo kernel.
- Reemplaza el token del proceso actual con el token del sistema.
- Agrega la revisión de un puntero NULL en la función win32k!xxxMNOpenHierarchy.
Conclusión
Se recomienda actualizarse a un sistema operativo más reciente teniendo en cuenta que el exploit aprovecha vulnerabilidades de versiones anteriores de Windows.
Las cuales se corrigieron desde Windows 8 al no permitirle a un proceso de usuario mapear la página nula. Igualmente, esta mejora se implementó en Windows 7 x64.
Además, esta recomendación es crítica porque el soporte para Windows 7 Service Pack 1 finaliza el 14 de enero del 2020. Es decir, que no se desarrollarán más parches para las vulnerabilidades dejando el equipo expuesto a amenazas. ¡La solución está en tus manos!
¿Necesitas licenciamiento para actualizar tus equipos? Contáctanos.

Soy experto en seguridad informática y especialista certificado ESET. Me apasiona aprender de forma autodidacta todo lo relacionado con sistemas, tecnología y sci-fi.
¿Quieres compartir tu opinión?
No publicamos correos electrónicos | Campos requeridos (*)