
PoC para la CVE-2025-7771 para modificar la Protección PPL
Una herramienta de prueba de concepto para gestionar los niveles de protección de Procesos Ligeros Protegidos (PPL) en Windows Server 2022 mediante la explotación de vulnerabilidades en el controlador ThrottleStop (CVE-2025-7771).
Esta herramienta demuestra una elevación de privilegios a través de capacidades arbitrarias de lectura/escritura de memoria física expuestas por el controlador ThrottleStop. Permite modificar los niveles de protección de procesos manipulando directamente las estructuras de memoria del kernel.
PPLmanager.exe -p <pid> -v <protection_level>
-p <pid> - ID del proceso a modificar-v <protection_level> - Valor del nivel de protección en hexadecimal-h - Mostrar mensaje de ayudaCompile con Visual Studio usando el archivo de solución proporcionado:
ThrottleStopPPL.sln
El controlador vulnerable ThrottleStop puede extraerse de ThrottleStop.exe mediante Resource Hacker.
Cree e inicie el servicio del controlador:
sc create ThrottleStop binPath="<Path to driver>" type=kernel
sc start ThrottleStop
0x80006498 - Lectura arbitraria de memoria0x8000649C - Escritura arbitraria de memoria0x80006430 - Lectura arbitraria de puerto0x80006434 - Escritura arbitraria de puertoEsto es una prueba de concepto con fines exclusivamente educativos y de investigación. Úselo de manera responsable y únicamente en sistemas que le pertenezcan o sobre los que tenga permiso explícito para realizar pruebas.
Este proyecto está inspirado en el ThrottleStopPoC original de @fxrstor.
Solo con fines educativos y de investigación.
| Valor | Nivel de protección | Descripción |
|---|
| 0x72 | PS_PROTECTED_SYSTEM | Proceso protegido del sistema |
| 0x62 | PS_PROTECTED_LSA | Proceso protegido de LSA |
| 0x52 | PS_PROTECTED_WINDOWS | Proceso protegido de Windows |
| 0x61 | PS_PROTECTED_WINTCB_LIGHT | Proceso protegido ligero de Windows TCB |
| 0x51 | PS_PROTECTED_WINDOWS_LIGHT | Proceso protegido ligero de Windows |
| 0x41 | PS_PROTECTED_LSA_LIGHT | Proceso protegido ligero de LSA |
| 0x31 | PS_PROTECTED_ANTIMALWARE_LIGHT | Proceso protegido ligero antimalware |
| 0x12 | PS_PROTECTED_AUTHENTICODE | Proceso protegido de Authenticode |
| 0x11 | PS_PROTECTED_AUTHENTICODE_LIGHT | Proceso protegido ligero de Authenticode |
| 0x00 | NO_PROTECTION | Sin protección |