
Exploit de escalada de privilegios local para CVE-2025-62676.
PoC de escalada de privilegios local para CVE-2025-62676 / EUVD-2025-206993 que apunta a FortiClient VPN ejecutándose en Windows. Ejecuta una carga útil en el contexto de SYSTEM desde un contexto de usuario normal mediante una escritura arbitraria de archivos XML. El PoC se ha probado contra FortiClient versión 7.4.0 en Windows 11 Pro. Las siguientes versiones son vulnerables según el proveedor:
La vulnerabilidad fue reportada a través de Trend Micro Zero Day Initiative: https://www.zerodayinitiative.com/advisories/ZDI-26-115/
Advertencia oficial de Fortinet: https://fortiguard.fortinet.com/psirt/FG-IR-25-661
nuget restore.git clone --recursive.cmd /c whoami > C:\whoami.txt. Para cambiarlo, modifique dllmail.cpp en el proyecto ExecDLL.FortiLPE.exe´.CloudExperienceHostBroker.exe se ha ejecutado desde el último reinicio antes de ejecutar el PoC. Reinicie la máquina e inicie la tarea CreateObjectTask manualmente (Start-ScheduledTask -TaskPath \Microsoft\Windows\CloudExperienceHost -TaskName CreateObjectTask). Consulte Detalles técnicos para más detalles.

FortiClient crea una tubería con nombre FC_{F18F86FD-7503-4564-80CF-B6B199519837} con la que los usuarios normales pueden comunicarse. La comunicación está restringida a procesos que se ejecutan desde la carpeta del programa FortiClient (C:\Program Files\Fortinet\FortiClient), pero esto se puede eludir inyectando código en el proceso en ejecución FortiTray.exe, que se ejecuta desde la carpeta del programa. A través de esta tubería con nombre, es posible lanzar una instancia de FCConfig.exe ejecutándose como SYSTEM con argumentos controlados por el usuario.
Al especificar una operación no reconocida (-o A), FCConfig.exe leerá un archivo objetivo (-f FILE) y luego lo escribirá de vuelta en la misma ubicación (no está claro por qué sucede esto). Al establecer el objetivo como un junction/symlink que apunta a un archivo específico y establecer un oplock en el archivo, es posible hacer que el proceso siga el symlink, lea el archivo y active el oplock. El symlink puede modificarse para que apunte a una ubicación diferente. Cuando se libera el oplock, FCConfig.exe seguirá el symlink hacia el nuevo destino y escribirá el archivo allí, resultando en una escritura arbitraria de archivos. El archivo debe ser XML válido (parece que pasa por un formateador XML).
Para convertir la escritura arbitraria de archivos XML en ejecución de código privilegiado, se escribe un manifiesto de aplicación para redirigir la carga de un DLL para un proceso que se ejecuta como SYSTEM. Se eligió C:\Windows\System32\CloudExperienceHostBroker.exe para esto:
\Microsoft\Windows\CloudExperienceHost\CreateObjectTask.SYSTEM.TrustedInstaller).El PoC explota la vulnerabilidad mediante los siguientes pasos:
oleaut32.dll que contiene una carga útil.oleaut32.dll a "ExecDLL".FortiTray.exe que envía un comando a la tubería con nombre FC_{F18F86FD-7503-4564-80CF-B6B199519837} con los argumentos -f APPLICATION_MANIFEST_PATH -o A.FCConfig.exe active el oplock.C:\Windows\System32\CloudExperienceHostBroker.exe.manifest.FCConfig.exe ahora leerá el manifiesto de aplicación y lo escribirá en el nuevo destino del symlink.\Microsoft\Windows\CloudExperienceHost\CreateObjectTask. CloudExperienceHostBroker.exe se ejecutará ahora como SYSTEM, CloudExperienceHostBroker.exe.manifest le indicará al sistema que cargue "ExecDLL" en lugar de oleaut32.dll, y "ExecDLL" se cargará y ejecutará en el contexto de SYSTEM.