Alla DEF CON di Las Vegas, conferenza dedicata alla sicurezza, ricercatori dell’azienda Eclypsium hanno spiegato che oltre 40 driver di venti diversi importanti venditori di prodotti di terze parti sono realizzati con codice scritto male con conseguenti vulnerabilità che possono essere sfruttate per la privilege escalation, una classe di attacchi in cui si cerca di raggiungere funzionalità e privilegi di accesso a file e risorse, con metodi non sfruttabili neanche dall’utente amministratore.
A rendere preoccupanti tali vulnerabilità è che i driver in questione sono certificati da Microsoft. La lista delle aziende interessate include importanti vendor di BIOS e produttori hardware quali ASUS, Huawei, Intel, NVIDIA e Toshiba. Eclypsium evidenzia che il problema riguarda tutte le versioni di Windows e a essere a rischio dunque sono potenzialmente milioni di utenti.
Questi driver potrebbero permettere a un’applicazione malevola eseguita a livello utente di ottenere un’elevazione di privilegi nel kernel di Windows, guadagnando così accesso diretto persino al firmware e all’hardware. Il malware potrebbe essere installato anche in un firmware rendendo non sufficiente la reinstallazione del sistema operativo per risolvere il problema.
Eclypsium spiega che le vulnerabilità in questione permettono ai driver di agire come proxy per ottenere accesso con un’elevazione di privilegi alle risorse hardware, accedendo in lettura e scrittura di dati da processore e nello spazio I/O dei chipset, registri MSR (model-specific register) del processore, Control Register (CR), Debug Registers (DR), memoria fisica e memoria virtuale del kernel.
È un’escalation dei privilegi giacché può permettere a un attacker di passare dall’esecuzione nel ring-3 (con i privilegi più̀ bassi) al kernel model del ring-0 (quello che gode dei privilegi più̀ elevati).
I processori supportano politiche di protezione che utilizzano il concetto di “ring” riassunto nell’immagine qui allegata, separando gli accessi alle risorse. A ring più bassi corrispondono privilegi maggiori (il sistema operativo opera a Ring 0), gli applicativi che l’utente usa operano a Ring 3. Anche l’utente amministratore opera a livello Ring-3, impedendo ad applicazioni compromesse di eseguire istruzioni privilegiate. L’accesso al kernel può non solo offrire l’accesso maggiormente privilegiato al sistema operativo ma anche accesso all’hardware e all’interfaccia del firmware con privilegi elevati che consentono, ad esempio, di accedere al BIOS.
Mickey Shkatov, Pincipal Researcher presso Eclypsium, ha dichiarato al sito ZDNet che “Microsoft userà sue funzionalità HVCI (Hypervisor-enforced Code Integrity) per includere in una blacklist i driver potenzialmente pericolosi.
Questa funzionalità è ad ogni modo disponibile solo sui processori Intel di 7a generazione se seguenti e dunque i driver dovrebbero essere disinstallati manualmente nel caso di vecchie CPU o nuove con la funzionalità HCVI disabilitata. Microsoft suggerisce di sfruttare Windows Defender per bloccare software d driver vulnerabili spiegando inoltre che è possibile sfruttare l’integrità della memoria, una funzionalità di isolamento core di Windows Defender che, se attiva, impedirsce a codice dannoso di accedere ai processi di protezione avanzata in caso di un attacco.
Eclypsium indica in un post sul proprio blog l’elenco dei vendor che hanno già aggiornato i driver. Altri vendor non meglio menzionati sarebbero al lavoro per risolvere il problema.