
cldflt.sys vulnerabilità di divulgazione delle informazioni (KB5034765 - KB5035853, Win 11).
C'è una piccola analisi su CVE-2024-26160, che si trova nella patch di febbraio (KB5034765, Windows 11 22H2, Windows 11 23H2). La vulnerabilità è stata chiusa nella patch di marzo (KB5035853).
La vulnerabilità si trova nella funzione CldiPortProcessGetRangeInfo, che non controlla la dimensione del buffer passato dall'applicazione utente. Poiché la dimensione può essere controllata dall'utente, memmove, che copia le informazioni restituite, può prelevare un pool di memoria adiacente che contiene indirizzi del kernel se la dimensione viene passata correttamente.


La patch di marzo (KB5035853) introduce un controllo aggiuntivo per la dimensione del buffer.

In condizioni normali, la funzione vulnerabile viene chiamata quando viene chiamata la funzione CfGetPlaceholderRangeInfoForHydration, che contiene una dimensione fissa per il buffer restituito, quindi è necessario costruire un pacchetto di dati che raggiunga la chiamata alla funzione vulnerabile. La chiamata della funzione richiesta passa attraverso la funzione CldiPortNotifyMessage, dove tutti i pacchetti, inclusi alcuni specifici, devono essere validati.

È importante passare il tipo di messaggio per innescare la perdita di dati.

Se il pacchetto di dati è formato correttamente, vedremo la perdita di indirizzi.
