
Exploit di escalation dei privilegi locale per CVE-2025-62676.
Exploit PoC di escalation dei privilegi locale per CVE-2025-62676 / EUVD-2025-206993 che mira a FortiClient VPN in esecuzione su Windows. Esegue un payload nel contesto di SYSTEM da un contesto utente normale tramite una scrittura arbitraria di file XML. Il PoC è stato testato contro FortiClient versione 7.4.0 su Windows 11 Pro. Le seguenti versioni sono vulnerabili secondo il fornitore:
La vulnerabilità è stata segnalata tramite Trend Micro Zero Day Initiative: https://www.zerodayinitiative.com/advisories/ZDI-26-115/
Avviso ufficiale da Fortinet: https://fortiguard.fortinet.com/psirt/FG-IR-25-661
nuget restore.git clone --recursive.cmd /c whoami > C:\whoami.txt. Per modificarlo, modifica dllmail.cpp nel progetto ExecDLL.CloudExperienceHostBroker.exe è stato eseguito dall'ultimo riavvio prima di eseguire il PoC. Riavvia la macchina e avvia manualmente l'attività CreateObjectTask (Start-ScheduledTask -TaskPath \Microsoft\Windows\CloudExperienceHost -TaskName CreateObjectTask). Vedi Dettagli tecnici per maggiori dettagli.

FortiClient crea una named pipe FC_{F18F86FD-7503-4564-80CF-B6B199519837} a cui gli utenti normali possono comunicare. La comunicazione è limitata ai processi in esecuzione dalla cartella del programma FortiClient (C:\Program Files\Fortinet\FortiClient), ma questo può essere aggirato iniettando codice nel processo in esecuzione FortiTray.exe, che è in esecuzione dalla cartella del programma. Attraverso questa named pipe, è possibile lanciare un'istanza di FCConfig.exe in esecuzione come SYSTEM con argomenti controllati dall'utente.
Specificando un'operazione non riconosciuta (-o A), FCConfig.exe leggerà un file di destinazione (-f FILE) e poi lo riscriverà nella stessa posizione (non è chiaro il motivo di questo comportamento). Impostando la destinazione su un symlink/junction che punta a un file specifico e impostando un oplock sul file, è possibile far sì che il processo segua il symlink, legga il file e attivi l'oplock. Il symlink può quindi essere modificato per puntare a una posizione diversa. Quando l'oplock viene rilasciato, FCConfig.exe seguirà il symlink verso la nuova destinazione e scriverà il file lì, risultando in una scrittura arbitraria di file. Il file deve essere XML valido (sembra passare attraverso un formattatore XML).
Per trasformare la scrittura arbitraria di file XML in esecuzione di codice privilegiato, viene scritto un manifesto dell'applicazione per reindirizzare un caricamento DLL per un processo in esecuzione come SYSTEM. C:\Windows\System32\CloudExperienceHostBroker.exe è stato scelto per questo:
\Microsoft\Windows\CloudExperienceHost\CreateObjectTask.SYSTEM.TrustedInstaller).Il PoC sfrutta la vulnerabilità utilizzando i seguenti passaggi:
oleaut32.dll che contiene un payload.oleaut32.dll a "ExecDLL".FortiTray.exe che invia un comando alla named pipe FC_{F18F86FD-7503-4564-80CF-B6B199519837} con gli argomenti -f APPLICATION_MANIFEST_PATH -o A.FCConfig.exe attivi l'oplock.C:\Windows\System32\CloudExperienceHostBroker.exe.manifest.FCConfig.exe leggerà ora il manifesto dell'applicazione e lo scriverà nella nuova destinazione del symlink.\Microsoft\Windows\CloudExperienceHost\CreateObjectTask. CloudExperienceHostBroker.exe verrà ora eseguito come SYSTEM, dirà al sistema di caricare "ExecDLL" anziché , e "ExecDLL" verrà caricato ed eseguito nel contesto di .CloudExperienceHostBroker.exe.manifestoleaut32.dllSYSTEM