Ben 34 driver driver di Windows (WDM e WDF) risultano vulnerabili. Soggetti senza privilegi potrebbero, infatti, ottenere il pieno controllo dei dispositivi ed eseguire codice arbitrario sui sistemi sottostanti. È quanto si evince da uno studio pubblicato dai ricercatori di VMware Carbon Black.
“Gli attacchi che sfruttano vulnerabilità nei driver”, commenta Pierluigi Paganini, analista di cyber security e CEO Cybhorus, “sono estremamente insidiosi”.
Ecco perché e come mitigare i rischi.
Indice degli argomenti
Attacchi ai driver di Windows
I 34 driver vulnerabili sono Windows Driver Model (WDM) e Windows Driver Frameworks (WDF). Gli attacchi sono pericolosi, secondo Paganini, “perché talvolta alcuni di essi consentono un accesso a livello kernel che può essere sfruttato per ottenere massimi privilegi ed eludere le soluzioni di sicurezza”.
Inoltre, è possibile sfruttare “vulnerabilità nei driver anche per apportare modifiche al firmware rendendo inutilizzabili i sistemi colpiti o addirittura caricare versioni in grado di consentire ad un attaccante di disporre di una backdoor permanente e di quasi impossibile individuazione”, scende nei dettagli Paganini.
“Sfruttando i driver, un aggressore senza privilegi può cancellare/alterare il firmware e/o elevare i privilegi (del sistema operativo)”, aggiunge Takahiro Haruyama, ricercatore senior sulle minacce presso VMware Carbon Black.
La ricerca amplia gli studi precedenti, come ScrewedDrivers e POPKORN, che hanno utilizzato l’esecuzione simbolica per automatizzare la scoperta di driver vulnerabili. Si concentra in particolare sui driver che contengono l’accesso al firmware attraverso l’I/O della porta e l’I/O della memoria.
I nomi di alcuni dei driver vulnerabili includono AODDriver.sys, ComputerZ.sys, dellbios.sys, GEDevDrv.sys, GtcKmdfBs.sys, IoAccess.sys, kerneld. amd64, ngiodriver.sys, nvoclock.sys, PDFWKRNL.sys (CVE-2023-20598), RadHwMgr.sys, rtif.sys, rtport.sys, stdcdrv64.sys e TdkLib64.sys (CVE-2023-35841).
I dettagli
Dei 34 driver, sei consentono l’accesso alla memoria del kernel, che può essere sfruttato per elevare i privilegi e sconfiggere le soluzioni di sicurezza. Dodici dei driver possono essere sfruttati per sovvertire meccanismi di sicurezza come la randomizzazione dello spazio degli indirizzi del kernel (KASLR). Sette dei driver, tra cui stdcdrv64.sys di Intel, possono essere utilizzati per cancellare il firmware nella memoria flash SPI, rendendo il sistema non avviabile.
Intel ha successivamente rilasciato una correzione per il problema.
VMware ha dichiarato di aver identificato anche driver WDF come WDTKernel.sys e H2OFFT64.sys che non sono vulnerabili in termini di controllo degli accessi, ma che possono essere banalmente utilizzati da attori privilegiati per sferrare il cosiddetto attacco BYOVD (Bring Your Own Vulnerable Driver).
Come mitigare i rischi
“L’elemento che più sorprende della ricerca è il numero di driver scoperti come vulnerabili che inevitabilmente forniscono a diverse categorie di attaccanti importanti opportunità di offesa”, mette in guardia Paganini: “Preoccupa molto la capacità di attori nation-state, ritenuti i più sofisticati, nello sfruttare queste falle in campagne di spionaggio e sabotaggio”.
La tecnica è infatti stata impiegata da vari avversari, tra cui il gruppo Lazarus legato alla Corea del Nord, come metodo per ottenere privilegi elevati e disabilitare il software di sicurezza in esecuzione sugli endpoint compromessi in modo da eludere il rilevamento.
“L’ambito attuale delle API/istruzioni prese di mira (dallo script IDAPython per automatizzare l’analisi statica del codice dei driver vulnerabili x64) è ristretto e limitato all’accesso al firmware”, ha dichiarato Haruyama secondo cui, “tuttavia, è facile estendere il codice per coprire altri vettori di attacco (per esempio, la terminazione di processi arbitrari)”.
Per mitigare i rischi, bisogna dunque assumere una postura di sicurezza, mantenendo aggiornati i firmware.