
PoC di escalation dei privilegi locale per Windows CVE-2026-66804 che utilizza il DLL planting CrossDevice e l'impersonificazione dei token SigmaPotato per generare un processo SYSTEM.
Proof of concept per un LPE CrossDevice/FrameServer che ho segnalato a MSRC e che ha ricevuto CVE-2026-66804. La vulnerabilità interessa Windows 10 e Windows 11.
Windows registra questo server COM a livello di sistema:
HKLM\SOFTWARE\Classes\CLSID\{E9F83CF2-E0C0-4CA7-AF01-E90C70BEF496}\InprocServer32
%PROGRAMDATA%\CrossDevice\CrossDevice.Streaming.Source.dll
Nelle installazioni vulnerabili testate, C:\ProgramData\CrossDevice non era presente e un utente standard poteva crearlo. Posizionando la DLL registrata e avviando una fotocamera virtuale Media Foundation, FrameServer caricava la DLL come NT AUTHORITY\LOCAL SERVICE nella sessione 0.
Il PoC utilizza quindi il SeImpersonatePrivilege del token LocalService tramite un helper SigmaPotato incorporato per ottenere SYSTEM e aprire una normale cmd.exe sul desktop attivo. SigmaPotato è il passaggio finale generico di conversione; il fallimento del security boundary Microsoft dimostrato qui è il precedente caricamento della DLL controllato dall'attaccante in FrameServer.
Il PoC è stato testato su Windows 11 build 26200.8875 e 29617.1000.
La directory di destinazione non deve già esistere. Da un normale Prompt dei comandi non elevato, eseguire:
CrossDeviceLPE.exe
Tutto qui. Ora si dovrebbe avere
nt authority\system
L'eseguibile incorpora tutti i componenti runtime; non sono richiesti file aggiuntivi né argomenti da riga di comando.
Il PoC incorpora SigmaPotato 1.2.6 e una build di VCamSample. Le loro licenze si trovano in third_party/.
Il repository contiene i sorgenti del launcher e del payload oltre ai due binari di terze parti fissati necessari per una compilazione offline. Su Linux, installare la toolchain GCC MinGW-w64 ed eseguire:
./build.sh