Immaginate di avviare il vostro sistema Linux, che coesiste da sempre con Microsoft Windows in dual boot, e di trovarvi di fronte ad un criptico messaggio che include questa frase:
Something has gone seriously wrong.
Qualcosa è seriamente andando stortoImmaginate poi di ricordarvi poco prima di aver installato, soddisfatti, un update lato Windows che, stando alla descrizione, andava a risolvere una vulnerabilità vecchia di due anni relativa a GRUB, il vostro boot loader, che gestisce la coesistenza sopra citata.
Più che immaginarsi questa situazione, numerosi utenti l’hanno descritta: c’è chi ne ha parlato su Reddit, su AskUbunut.com, su community.frane.work ed anche nel forum di Linux Mint, tutti con lo stesso risultato, ossia che qualcosa è andato decisamente storto.
Potreste pensare: ma cosa c’entra Microsoft con GRUB?
La domanda è lecita e per rispondere è necessario dare un’occhiata alla CVE che è stata risolta nell’update incriminato, ossia la CVE-2022-2601, la quale ha una “severity” di 8.4 su 10 punti e potrebbe consentire a malintenzionati di bypassare secure boot, il sistema che garantisce che i dispositivi che eseguono Windows (o altri sistemi operativi come Linux) non carichino firmware o software dannosi durante il processo di avvio.
Il motivo per cui Microsoft ha gestito questa patch risiede nel fatto che anche in sistemi che non usano GRUB (come quelli che hanno solo Microsoft Windows) sarebbe possibile caricare un pacchetto GRUB vulnerabile (ad esempio da una chiavetta) e sfruttare l’anomalia, pertanto era nell’interesse di Microsoft risolvere il problema.
Ora, il messaggio completo ricevuto dagli utenti Linux, come racconta ARS Technica, è:
Verifying shim SBAT data failed: Security Policy Violation.Something has gone seriously wrong: SBAT self-check failed: Security Policy Violation.
Gli SBAT (SHIM Binary Authenticated Trust) citati nel messaggio (mai nome fu più azzeccato in questo caso) sono un meccanismo Linux per revocare vari componenti nel percorso di avvio.
Per consentire a Linux di funzionare su dispositivi con Secure Boot abilitato, è stato sviluppato un progetto che si chiama shim. Shim è un piccolo bootloader che viene firmato con una chiave di Microsoft, consentendo ai sistemi Linux di avviarsi anche con Secure Boot abilitato.
Gli SBAT sono stati introdotti come parte di shim per fornire un meccanismo flessibile e robusto per gestire la fiducia delle componenti del sistema di avvio. Questo include la possibilità di revocare certi certificati o componenti che potrebbero essere stati compromessi.
L’update di Microsoft indicava come questo non si applicasse ai sistemi che avviano anche Linux, ma ovviamente non è quello che ha riscontrato chi ha riportato il problema.
Fortunatamente esiste un workaround, descritto nell’articolo, che consiste nel disabilitare secure boot (da BIOS, ovviamente) e dopo aver avviato Linux cancellare la policy SBAT mediante questo comando:
sudo mokutil --set-sbat-policy deleteNon esiste ancora una lista delle distribuzioni Linux affette dal problema, se mai ci sarà (considerato come la discriminante sia Secure Boot). Interessante infine notare, come riporta Bleeping Computer, come eliminare la partizione Windows e reinstallare secure boot con le impostazioni di fabbrica sia del tutto inutile.
Altre informazioni su come risolvere il problema si trovano in questo altro articolo di Bleeping Computer.
Il mondo ancora si sta riprendendo dalla questione CrowdStrike (con l’azienda che peraltro si lamenta di essere spernacchiata dai competitor) e già siamo di fronte ad un altro bel problema. Certo, riguarda solamente una quota di mercato inferiore al 4,5%, ma è quella a cui noi teniamo di più!
Da sempre appassionato del mondo open-source e di Linux nel 2009 ho fondato il portale Mia Mamma Usa Linux! per condividere articoli, notizie ed in generale tutto quello che riguarda il mondo del pinguino, con particolare attenzione alle tematiche di interoperabilità, HA e cloud.
E, sì, mia mamma usa Linux dal 2009.