
Exploit de escalada de privilégio local para CVE-2025-62676.
Exploit de PoC de escalonamento de privilégio local para CVE-2025-62676 / EUVD-2025-206993 que tem como alvo o FortiClient VPN executado no Windows. Executa um payload no contexto de SYSTEM a partir de um contexto de usuário normal por meio de uma escrita arbitrária de arquivo XML. O PoC foi testado contra a versão 7.4.0 do FortiClient no Windows 11 Pro. As seguintes versões são vulneráveis de acordo com o fornecedor:
A vulnerabilidade foi reportada através da Trend Micro Zero Day Initiative: https://www.zerodayinitiative.com/advisories/ZDI-26-115/
Comunicado oficial da Fortinet: https://fortiguard.fortinet.com/psirt/FG-IR-25-661
nuget restore.git clone --recursive.cmd /c whoami > C:\whoami.txt. Para alterar isso, modifique dllmail.cpp no projeto ExecDLL.CloudExperienceHostBroker.exe foi executado desde a última reinicialização antes de executar o PoC. Reinicie a máquina e inicie a tarefa CreateObjectTask manualmente (Start-ScheduledTask -TaskPath \Microsoft\Windows\CloudExperienceHost -TaskName CreateObjectTask). Consulte Detalhes Técnicos para mais detalhes.

O FortiClient cria um pipe nomeado FC_{F18F86FD-7503-4564-80CF-B6B199519837} que usuários comuns podem usar para se comunicar. A comunicação é restrita a processos executados a partir da pasta do programa FortiClient (C:\Program Files\Fortinet\FortiClient), mas isso pode ser contornado injetando código no processo em execução FortiTray.exe, que está sendo executado a partir da pasta do programa. Através deste pipe nomeado, é possível iniciar uma instância do FCConfig.exe executando como SYSTEM com argumentos controlados pelo usuário.
Ao especificar uma operação não reconhecida (-o A), o FCConfig.exe lerá um arquivo alvo (-f ARQUIVO) e então o escreverá de volta no mesmo local (não está claro por que isso acontece). Ao definir o alvo como uma junção/symlink que aponta para um arquivo específico e configurar um oplock no arquivo, é possível fazer com que o processo siga o symlink, leia o arquivo e dispare o oplock. O symlink pode então ser modificado para apontar para um local diferente. Quando o oplock é liberado, o FCConfig.exe seguirá o symlink para o novo destino e escreverá o arquivo lá, resultando em uma escrita arbitrária de arquivo. O arquivo precisa ser XML válido (parece passar por um formatador XML).
Para transformar a escrita arbitrária de arquivo XML em execução de código privilegiado, um manifesto de aplicação é escrito para redirecionar o carregamento de uma DLL para um processo executando como SYSTEM. C:\Windows\System32\CloudExperienceHostBroker.exe foi escolhido para isso:
\Microsoft\Windows\CloudExperienceHost\CreateObjectTask.SYSTEM.TrustedInstaller).O PoC explora a vulnerabilidade usando os seguintes passos:
oleaut32.dll que contém um payload.oleaut32.dll para "ExecDLL".FortiTray.exe que envia um comando para o pipe nomeado FC_{F18F86FD-7503-4564-80CF-B6B199519837} com os argumentos -f APPLICATION_MANIFEST_PATH -o A.FCConfig.exe disparar o oplock.C:\Windows\System32\CloudExperienceHostBroker.exe.manifest.FCConfig.exe agora lerá o manifesto de aplicação e o escreverá no novo destino do symlink.\Microsoft\Windows\CloudExperienceHost\CreateObjectTask. O CloudExperienceHostBroker.exe será executado como SYSTEM, o informará ao sistema para carregar "ExecDLL" em vez de , e "ExecDLL" será carregada e executada no contexto de .CloudExperienceHostBroker.exe.manifestoleaut32.dllSYSTEM