Análisis de vulnerabilidades de nivel 0day en sistemas Windows: los atacantes pueden controlar completamente los sistemas antiguos

robot
Generación de resúmenes en curso

Análisis de la vulnerabilidad 0day a nivel de sistema de Microsoft Windows: se puede controlar completamente el sistema

Recientemente, Microsoft lanzó un parche de seguridad que corrige una vulnerabilidad de elevación de privilegios en Win32k que está siendo explotada de manera maliciosa. Esta vulnerabilidad solo existe en versiones anteriores del sistema operativo Windows y no puede ser activada en Windows 11. Este artículo analizará cómo los atacantes podrían seguir aprovechando esta vulnerabilidad en el contexto actual de una protección de seguridad en constante mejora.

Contexto de la vulnerabilidad

Esta es una vulnerabilidad de 0day a nivel del sistema Windows, que permite a los hackers obtener el control total de Windows. Los daños tras el control incluyen el robo de información personal, la pérdida de datos por fallos del sistema, pérdidas financieras, la inserción de malware, entre otros. Desde el robo de claves privadas y la transferencia de activos digitales, hasta la posible afectación de todo el ecosistema Web3 que opera sobre la infraestructura basada en Web2.

Numen exclusivo: la vulnerabilidad 0day de Microsoft puede desmantelar la capa física + del sistema en el juego de Web3

Análisis de parches

El análisis del parche revela que se trata de un problema de conteo de referencias de objetos que ha sido mal gestionado. A través de los comentarios en el código fuente anterior, se puede deducir que el código anterior solo bloqueaba el objeto de la ventana, sin bloquear el objeto del menú dentro del objeto de la ventana, lo que podría provocar que el objeto del menú sea referenciado incorrectamente.

Numen exclusivo: la vulnerabilidad 0day de Microsoft puede desmantelar la partida de Web3 a nivel de sistema + físico

Principio de vulnerabilidad

Un análisis más detallado revela que el menú que se pasa a xxxEnableMenuItem() generalmente ya ha sido bloqueado en la función de nivel superior. Y hay dos posibilidades para el menú que devuelve la función MenuItemState en xxxEnableMenuItem: el menú principal de la ventana o un submenú dentro del menú.

Numen exclusivo: el 0day de Microsoft puede desmantelar la jugada de Web3 a nivel de sistema + físico

Validación de concepto ( PoC ) implementación

PoC ha construido una estructura de menú especial de cuatro capas y ha establecido algunas condiciones específicas para la detección en la función xxxEnableMenuItem. El paso clave es eliminar la relación de referencia entre el menú C y el menú B y liberar el menú C cuando xxxRedrawTitle devuelve la capa de usuario. De esta manera, cuando se hace referencia al menú C en la función xxxEnableMenuItem posteriormente, el objeto ya no es válido.

Numen exclusivo: la vulnerabilidad 0day de Microsoft puede desmantelar el tablero de Web3 a nivel de sistema y físico

Explotación de vulnerabilidades ( Exp ) implementación

Existen principalmente dos formas de aprovechar la vulnerabilidad: ejecutar código shellcode o utilizar primitivas de lectura y escritura para modificar la dirección del token. Considerando la compatibilidad, se eligió la segunda opción. En general, se divide en dos pasos: controlar el valor de cbwndextra mediante la vulnerabilidad UAF y luego establecer primitivas de lectura y escritura estables.

Los puntos clave incluyen:

  1. Objeto de menú ocupado y liberado a través del objeto de nombre de clase de ventana
  2. Encuentra la ubicación donde se puede escribir datos en la función xxxRedrawWindow.
  3. Construir un diseño de memoria estable, incluyendo tres objetos HWND consecutivos.
  4. Utilizar GetMenuBarInfo() y SetClassLongPtr() para implementar la lectura y escritura de primitivos.

Numen exclusivo: vulnerabilidad 0day de Microsoft puede desmantelar el juego Web3 a nivel de sistema + físico

Numen exclusivo: la vulnerabilidad 0day de Microsoft puede desmantelar la mesa de Web3 a nivel de sistema y físico

Numen exclusivo: la vulnerabilidad 0day de Microsoft puede desmantelar el juego de Web3 a nivel de sistema y físico

Resumen

  1. Microsoft está reescribiendo el código relacionado con Win32k en Rust, en el futuro este tipo de vulnerabilidades podrían ser eliminadas.
  2. El proceso de explotación de vulnerabilidades no es muy difícil, se basa principalmente en la filtración de la dirección del manejador de la pila de escritorio.
  3. La detección de vulnerabilidades puede depender de una mejor cobertura de código.
  4. La detección de configuraciones de memoria anómalas y la lectura/escritura de datos en ventanas ayuda a descubrir vulnerabilidades similares.

Aunque estas vulnerabilidades se están reparando gradualmente en los nuevos sistemas, siguen siendo un riesgo de seguridad para los sistemas antiguos. Es importante mejorar los mecanismos de detección y protección de vulnerabilidades.

Numen Exclusivo: Vulnerabilidad 0day de Microsoft puede desmantelar la configuración de Web3 a nivel de sistema y físico

TOKEN5.16%
Ver originales
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
  • Recompensa
  • 4
  • Compartir
Comentar
0/400
UncleLiquidationvip
· hace9h
El viejo sistema ni siquiera lo usan los perros.
Ver originalesResponder0
CommunityLurkervip
· hace9h
Otra oportunidad de ganar dinero ha llegado.
Ver originalesResponder0
ser_ngmivip
· hace9h
También es que el retraso de Microsoft puede hacer que se presenten este tipo de vulnerabilidades.
Ver originalesResponder0
AirdropHunter9000vip
· hace10h
¿El viejo sistema aún no se ha actualizado? Si no haces nada, no morirás.
Ver originalesResponder0
Opere con criptomonedas en cualquier momento y lugar
qrCode
Escanee para descargar la aplicación Gate
Comunidad
Español
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)