Existe una grave vulnerabilidad 0day en el sistema Windows de Microsoft, que podría poner en peligro la seguridad de Web3
Recientemente, un parche de seguridad publicado por Microsoft ha reparado una vulnerabilidad de escalada de privilegios en el sistema operativo Windows que estaba siendo aprovechada por los hackers. Esta vulnerabilidad existe principalmente en versiones tempranas del sistema Windows y no puede ser activada en Windows 11.
Este tipo de vulnerabilidad de escalado de privilegios win32k ha existido durante mucho tiempo. En el contexto actual, donde las diversas medidas de protección de seguridad se están mejorando constantemente, es digno de atención cómo los atacantes continúan aprovechando esta vulnerabilidad. Hemos realizado un análisis en profundidad de esta vulnerabilidad en un entorno de Windows Server 2016.
Los vulnerabilidades 0day se refieren a fallos en el sistema que no han sido divulgados ni reparados, y que pueden ser aprovechados sigilosamente por los hackers, teniendo un gran potencial destructivo. A través de esta vulnerabilidad 0day a nivel del sistema Windows, los hackers podrían obtener el control total del sistema.
Una vez que el sistema es controlado por hackers, las consecuencias incluyen, pero no se limitan a, la filtración de información personal, la pérdida de datos por fallos del sistema, pérdidas financieras, la inserción de malware, entre otros. Para los usuarios individuales, las claves privadas de criptomonedas pueden ser robadas y los activos digitales transferidos; en un ámbito más amplio, esta vulnerabilidad incluso podría afectar a todo el ecosistema Web3 que opera sobre la infraestructura de Web2.
Al analizar el código del parche, descubrimos que el problema radica en que el conteo de referencias de un objeto se ha procesado una vez más. Según los comentarios en el código fuente anterior, se sabe que el código anterior solo bloqueaba el objeto de la ventana y no bloqueaba el objeto del menú dentro del objeto de la ventana, lo que provocaba que el objeto del menú pudiera ser referenciado incorrectamente.
Hemos construido una estructura de menú anidado especial de múltiples capas para activar esta vulnerabilidad. Al diseñar cuidadosamente los atributos del menú y las relaciones de referencia, es posible liberar con éxito un objeto de menú específico cuando ciertas funciones devuelven la capa de usuario, lo que lleva a que el código siguiente haga referencia a un objeto inválido.
La clave para aprovechar esta vulnerabilidad radica en cómo controlar el parámetro cbwndextra para que tenga un valor especialmente grande. Finalmente, elegimos lograr este objetivo manipulando la memoria de diseño y controlando los datos de memoria de los objetos adyacentes.
Para construir una explotación de vulnerabilidades estable, hemos diseñado un método especial de disposición de la memoria, que incluye múltiples objetos de ventana y objetos de clase de ventana en secuencia. Al liberar y volver a ocupar objetos específicos, se puede lograr el control de parámetros clave.
En cuanto a la lectura y escritura de primitivas, utilizamos GetMenuBarInfo() para realizar lecturas arbitrarias y SetClassLongPtr() para realizar escrituras arbitrarias. Aparte de la operación de escritura que reemplaza TOKEN, todas las demás escrituras se completan utilizando el objeto de clase del primer objeto de ventana mediante desplazamiento.
Aunque Microsoft está intentando reestructurar el código relacionado con win32k utilizando Rust, estas vulnerabilidades siguen representando una grave amenaza para los sistemas Windows existentes. El proceso de explotación de vulnerabilidades es relativamente sencillo y se basa principalmente en la filtración de la dirección del manejador de la pila de escritorio.
Suponemos que el descubrimiento de esta vulnerabilidad puede deberse a tecnologías de detección de cobertura de código más avanzadas. En el futuro, la detección de este tipo de vulnerabilidades, además de centrarse en los puntos clave de las funciones que desencadenan la vulnerabilidad, también debería prestar atención a la detección de la disposición anómala de la memoria y la lectura y escritura de datos.
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.
20 me gusta
Recompensa
20
8
Compartir
Comentar
0/400
ForumLurker
· hace8h
¿Otra vez va a actualizar el sistema?
Ver originalesResponder0
SurvivorshipBias
· hace11h
¡Me voy a Mac, adiós!
Ver originalesResponder0
MEVHunter
· hace15h
Otra oportunidad de Arbitraje no viene con las manos vacías.
Ver originalesResponder0
ConsensusDissenter
· hace15h
Novato, deja de actuar, no afecta.
Ver originalesResponder0
MEVSandwichVictim
· hace15h
¿Por qué de nuevo es un agujero de Win? Me siento nervioso.
Ver originalesResponder0
GasFeeTears
· hace16h
¿Es absurdo, otra vez me están sacando gas?
Ver originalesResponder0
tokenomics_truther
· hace16h
Tengo miedo, tengo miedo, voy a hacer una copia de seguridad de la billetera.
La amenaza de vulnerabilidades 0day de Windows a la seguridad del activo Web3: expertos explican los principios del ataque.
Existe una grave vulnerabilidad 0day en el sistema Windows de Microsoft, que podría poner en peligro la seguridad de Web3
Recientemente, un parche de seguridad publicado por Microsoft ha reparado una vulnerabilidad de escalada de privilegios en el sistema operativo Windows que estaba siendo aprovechada por los hackers. Esta vulnerabilidad existe principalmente en versiones tempranas del sistema Windows y no puede ser activada en Windows 11.
Este tipo de vulnerabilidad de escalado de privilegios win32k ha existido durante mucho tiempo. En el contexto actual, donde las diversas medidas de protección de seguridad se están mejorando constantemente, es digno de atención cómo los atacantes continúan aprovechando esta vulnerabilidad. Hemos realizado un análisis en profundidad de esta vulnerabilidad en un entorno de Windows Server 2016.
Los vulnerabilidades 0day se refieren a fallos en el sistema que no han sido divulgados ni reparados, y que pueden ser aprovechados sigilosamente por los hackers, teniendo un gran potencial destructivo. A través de esta vulnerabilidad 0day a nivel del sistema Windows, los hackers podrían obtener el control total del sistema.
Una vez que el sistema es controlado por hackers, las consecuencias incluyen, pero no se limitan a, la filtración de información personal, la pérdida de datos por fallos del sistema, pérdidas financieras, la inserción de malware, entre otros. Para los usuarios individuales, las claves privadas de criptomonedas pueden ser robadas y los activos digitales transferidos; en un ámbito más amplio, esta vulnerabilidad incluso podría afectar a todo el ecosistema Web3 que opera sobre la infraestructura de Web2.
Al analizar el código del parche, descubrimos que el problema radica en que el conteo de referencias de un objeto se ha procesado una vez más. Según los comentarios en el código fuente anterior, se sabe que el código anterior solo bloqueaba el objeto de la ventana y no bloqueaba el objeto del menú dentro del objeto de la ventana, lo que provocaba que el objeto del menú pudiera ser referenciado incorrectamente.
Hemos construido una estructura de menú anidado especial de múltiples capas para activar esta vulnerabilidad. Al diseñar cuidadosamente los atributos del menú y las relaciones de referencia, es posible liberar con éxito un objeto de menú específico cuando ciertas funciones devuelven la capa de usuario, lo que lleva a que el código siguiente haga referencia a un objeto inválido.
La clave para aprovechar esta vulnerabilidad radica en cómo controlar el parámetro cbwndextra para que tenga un valor especialmente grande. Finalmente, elegimos lograr este objetivo manipulando la memoria de diseño y controlando los datos de memoria de los objetos adyacentes.
Para construir una explotación de vulnerabilidades estable, hemos diseñado un método especial de disposición de la memoria, que incluye múltiples objetos de ventana y objetos de clase de ventana en secuencia. Al liberar y volver a ocupar objetos específicos, se puede lograr el control de parámetros clave.
En cuanto a la lectura y escritura de primitivas, utilizamos GetMenuBarInfo() para realizar lecturas arbitrarias y SetClassLongPtr() para realizar escrituras arbitrarias. Aparte de la operación de escritura que reemplaza TOKEN, todas las demás escrituras se completan utilizando el objeto de clase del primer objeto de ventana mediante desplazamiento.
Aunque Microsoft está intentando reestructurar el código relacionado con win32k utilizando Rust, estas vulnerabilidades siguen representando una grave amenaza para los sistemas Windows existentes. El proceso de explotación de vulnerabilidades es relativamente sencillo y se basa principalmente en la filtración de la dirección del manejador de la pila de escritorio.
Suponemos que el descubrimiento de esta vulnerabilidad puede deberse a tecnologías de detección de cobertura de código más avanzadas. En el futuro, la detección de este tipo de vulnerabilidades, además de centrarse en los puntos clave de las funciones que desencadenan la vulnerabilidad, también debería prestar atención a la detección de la disposición anómala de la memoria y la lectura y escritura de datos.