CVE-2023-29336 Win32k Privilege Escalation Vulnerability (PoC)


El parche de seguridad reciente de Microsoft descubrió una vulnerabilidad crítica de escalada de privilegios dentro de win32k, que ya ha sido explotada en ataques del mundo real. Si bien esta vulnerabilidad parece no ser explotable en la versión del sistema Win11, representa un riesgo significativo para los sistemas anteriores.

La explotación de tales vulnerabilidades tiene un historial notorio y, en este análisis, profundizamos en los métodos empleados por los ciber atacantes para explotar esta vulnerabilidad específica. Esta vulnerabilidad recibió una puntuación CVSSv3 de 7,8 y se explotó como un zero day. La explotación de esta vulnerabilidad permitiría a un atacante obtener privilegios de nivel de SISTEMA en un host afectado.

En los últimos años, hemos visto múltiples días cero de Win32k explotados en la naturaleza. En el lanzamiento del martes de parches de enero de 2022, Microsoft parchó CVE-2022-21882. Según se informa, CVE-2022-21882 fue una omisión de parche para CVE-2021-1732, otra vulnerabilidad de día cero de Win32k EoP de febrero de 2021.

En octubre de 2021, Microsoft parchó CVE-2021-40449, otro día cero de Win32k vinculado a un troyano de acceso remoto conocido como MysterySnail y, según se informa, fue un bypass de parche para CVE-2016-3309. No está claro si CVE-2023-29336 también es un bypass de parche. 

Proof of Concept Implementation (PoC)

Al abordar la explotación de esta vulnerabilidad, es esencial realizar evaluaciones preliminares para evitar invertir mucho tiempo en soluciones que pueden no eludir problemas críticos. Este proceso es común cuando se analizan otras pruebas de concepto (PoC) o exploits de vulnerabilidades.

De forma general y sin profundizar tanto a nivel del exploit, un enfoque implicaría ejecutar shellcode. Sin embargo, decidimos no seguir con este enfoque debido a los posibles desafíos asociados con la ejecución de puntos de entrada de shellcode y mecanismos de seguridad como SMEP en versiones superiores de Windows donde existe esta vulnerabilidad.

La explotación de esta vulnerabilidad particular generalmente no plantea desafíos significativos. Además de explorar diligentemente diferentes métodos para obtener control sobre la primera operación de escritura utilizando los datos reocupados de la memoria liberada, normalmente no hay necesidad de nuevas técnicas de explotación. Este tipo de vulnerabilidad se basa en gran medida en las direcciones de manejo. Si bien puede haber algunas modificaciones, si este problema no se aborda a fondo, sigue siendo un riesgo de seguridad para los sistemas más antiguos.

El análisis de esta vulnerabilidad nos lleva a especular que su descubrimiento puede depender de pruebas exhaustivas de cobertura de código. Al garantizar que la API del sistema alcance el punto de vulnerabilidad más profundo a lo largo de la ruta de ejecución de la función de destino, esta vulnerabilidad podría identificarse potencialmente a través de técnicas de fuzzing. La realización de pruebas y análisis exhaustivos del código juega un papel crucial en el descubrimiento de vulnerabilidades similares de esta naturaleza. Las vulnerabilidades de Win32k son bien conocidas en la historia, sin embargo, en la última versión de vista previa de Windows 11, Microsoft intentó refactorizar esta parte del código del kernel usando Rust. Esto puede eliminar tales vulnerabilidades en el nuevo sistema en el futuro.

Referencias:

Analysis of CVE-2023-29336 Win32k Privilege Escalation (numencyber.com)
https://github.com/numencyber/Vulnerability_PoC/blob/main/CVE-2023-29336/poc.cp

El nombre es requerido.
El email es requerido.
El email no es válido.
El comentario es requerido.
El captcha es requerido.



Comentarios