Microsoft ha distribuito solo due build preliminari di Windows 11, ma alcuni ricercatori di sicurezza hanno già scoperto una grave vulnerabilità ereditata da Windows 10. Il contenuto del file SAM (Security Account Manager) può essere letto anche con privilegi limitati. Ciò consente attacchi con privilegi più elevati, come l’esecuzione di codice arbitrario sul computer. L’azienda di Redmond ha pubblicato una soluzione provvisoria.
Bug in Windows 11: cominciamo bene
Il problema di sicurezza è tipico dei sistemi operativi con codice legacy. Windows 11 è diverso da Windows 10 solo esteticamente, in quanto il codice sorgente è praticamente lo stesso. Una vulnerabilità viene quindi passata da una versione all’altra. Microsoft conferma infatti che il bug è presente a partire da Windows 10 1809. Il ricercatore Jonas Lykkegaard ha scoperto che il file SAM è accessibile in lettura dal gruppo USERS che possiede bassi privilegi.
Il file SAM è un database che contiene le password hashed di tutti gli utenti (si trova nella cartella C:\Windows\system32\config
). Un malintenzionato potrebbe quindi trovare la password di amministratore, ottenere privilegi più elevati ed eseguire ogni tipo di operazione, come installare programmi e cancellare dati.
Come ogni file di sistema, anche SAM non può essere aperto quando attualmente in uso (viene mostrato un errore di accesso). Ma ciò si può ottenere facilmente se è attivo il servizio di copia shadow del volume, come ha svelato Benjamin Delpy, autore del famoso tool Mimikatz:
Non è chiaro perché Microsoft ha cambiato i permessi di accesso. La vulnerabilità, indicata con CVE-2021-36934, verrà risolta con una futura patch. Al momento è disponibile solo una soluzione temporanea, ovvero la restrizione dell’accesso a tutti i file nella cartella C:\Windows\system32\config
. Questo è il comando da digitare al prompt dei comandi con diritti di amministratore:
icacls %windir%\system32\config\*.* /inheritance:e
È necessario inoltre cancellare tutti i punti di ripristino e tutte le copie shadow con questo comando:
vssadmin delete shadows /for=c: /Quiet