
Quando si parla di software “storici” come GRUB viene sempre in mente un pensiero, tutto sommato, logico: una volta che il bootloader svolge la sua funzione principale, quali potrebbero mai essere le evoluzioni significative necessarie?
Eppure GRUB deve essere costantemente aggiornato. Per restare compatibile con nuovi filesystem, hardware e tecnologie di avvio come UEFI e Secure Boot, per gestire vulnerabilità come BootHole che richiedono patch di sicurezza, per ottimizzazioni e bugfix che ne migliorano stabilità e prestazioni.
Insomma, anche se il suo compito sembra immutabile, l’evoluzione dell’ecosistema hardware e software lo rende un progetto in continuo sviluppo.
Certo però leggendo questo articolo di Phoronix si rimane un poco stupiti, infatti con la release GNU Boot 0.1 RC6 – dove GNU Boot è il progetto che include GRUB nel più ampio contesto di GNU – sono state pubblicate ben settantatré patch!
Nell’articolo pubblicato sul sito del progetto le ragioni di queste patch in qualche modo cumulative sono principalmente di sicurezza, ed il motivo dell’accumulo sono appunto le molteplici variazioni sul tema delle vulnerabilità:
Users having replaced the GNU Boot picture / logo with untrusted pictures could have been affected if the pictures they used were specially crafted to exploit a vulnerability in GRUB and take full control of the computer. In general it’s a good idea to avoid using untrusted pictures in GRUB or other boot software to limit such risks because software can have bugs (a similar issue also happened in a free software UEFI implementation).
Users having implemented various user-respecting flavor(s) of secure-boot, either by using GPG signatures and/or by using a GRUB password combined with full disk encryption are also affected as these security vulnerabilities could enable people to bypass secure-boot schemes.
In addition there are also security vulnerabilities in file systems, which also enable execution of code. When booting, GRUB has to load files (like the Linux or linux-libre kernel) that are executed anyway. But in some cases, it could still affect users.
This could happen when trying to boot from an USB key, and also having another USB key that has a file system that was crafted to take control of the computer.
Gli utenti che hanno sostituito l’immagine o il logo di GNU Boot con immagini non attendibili potrebbero essere stati a rischio se queste fossero state create appositamente per sfruttare una vulnerabilità in GRUB e ottenere il pieno controllo del computer. In generale, è sempre consigliabile evitare immagini non affidabili in GRUB o in altri software di avvio, poiché eventuali bug nel software potrebbero essere sfruttati per attacchi. Un problema simile si è già verificato in un’implementazione di UEFI basata su software libero.Anche gli utenti che hanno implementato vari metodi di avvio sicuro basati su open-boot, come la verifica con firme GPG o l’uso di una password GRUB combinata con la crittografia completa del disco, sono a rischio. Queste vulnerabilità di sicurezza potrebbero infatti consentire di bypassare tali misure di protezione.
Inoltre, esistono vulnerabilità legate ai file system che potrebbero permettere l’esecuzione di codice malevolo. Durante l’avvio, GRUB carica file come il kernel Linux o linux-libre, i quali vengono comunque eseguiti. Tuttavia, in alcuni scenari, queste vulnerabilità potrebbero ancora compromettere la sicurezza dell’utente.
Ad esempio, il problema potrebbe verificarsi se si avvia il sistema da una chiavetta USB mentre un’altra chiavetta con un file system compromesso è collegata al computer, consentendo così un attacco mirato.
Insomma, molte volte si vive nella convinzione che i software core come RUB siano semplicemente da “tenere vivi”, mentre non è affatto così, e questa serie di patch ne è l’assoluta dimostrazione.
Altro aspetto particolare è relativo all’adozione di queste patch, poiché un conto è la loro pubblicazione nel progetto principale, un altro conto sarà vedere le patch applicate nelle varie distribuzioni. Anche perché, fa notare l’articolo, c’è qualche progetto che “pesca” i sorgenti dagli snapshot Git che sono ancora vulnerabili, e questo potrebbe estendere il periodo di esposizione per queste distribuzioni.
Morale della favola, aspettatevi degli aggiornamenti relativi ai pacchetti GRUB della vostra distribuzione nel breve e, chiaramente, applicateli il prima possibile.
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.