Linux e avvio sicuro. Un errore che non possiamo ripetere

Linux e avvio sicuro

Nel precedente articolo Ho ricordato un precedente al requisito di Microsoft di richiedere il modulo TPM versione 2 per poter utilizzare Windows 11. Mi riferisco al requisito che i computer con Windows 8 preinstallato utilizzino UEFI invece del BIOS per il bootloader e che il modulo Secure Boot era preinstallato.  Ora parlerò del modo, secondo me, sbagliato in cui Linux ha affrontato il problema.

Linux e avvio sicuro

Secure Boot richiede che ogni programma che viene avviato abbia una firma che ne garantisca l'autenticità memorizzata nel database della memoria non volatile della scheda madre. Ci sono due modi per apparire in quel database. È incluso dal produttore o è incluso da Microsoft.

La soluzione raggiunta da alcune distribuzioni Linux con Microsoft era che questa società ha accettato la firma di un binario che sarebbe stato incaricato di avviare il boot loader di ogni distribuzione. Questi binari sono stati messi a disposizione della comunità.

Successivamente, la Linux Foundation lancerà una soluzione generica che può essere adottata da tutte le distribuzioni.

Alla ricerca di una soluzione migliore, uno sviluppatore di Red Hat ha suggerito quanto segue a Linus Torvalds:

ciao Linus,

Potete includere questo set di patch per favore?

Fornisce una funzione mediante la quale le chiavi possono essere aggiunte dinamicamente a un kernel in esecuzione in modalità di avvio sicuro. Per consentire il caricamento di una chiave in tale condizione, richiediamo che la nuova chiave sia firmata da una chiave che già abbiamo (e di cui ci fidiamo), dove le chiavi che "già abbiamo" potrebbero includere quelle incorporate nel kernel, quelli nel database UEFI e quelli dell'hardware crittografico.

Ora "keyctl add" gestirà già i certificati X.509 firmati in questo modo, ma il servizio di firma di Microsoft firmerà solo i binari EFI PE eseguibili.

Potremmo richiedere all'utente di riavviare nel BIOS, aggiungere la chiave e quindi tornare indietro, ma in alcune circostanze vogliamo essere in grado di farlo mentre il kernel è in esecuzione.

Il modo in cui abbiamo trovato per risolvere questo problema è incorporare un certificato X.509 contenente la chiave in una sezione chiamata ".keylist" in un binario EFI PE e quindi ottenere il binario firmato Microsoft.

Parola di Linus

La risposta di Linus (ricordiamo che era prima del suo ritiro spirituale per riconsiderare il suo atteggiamento nei rapporti con le altre persone), è stata la seguente:

AVVISO: il testo seguente include volgarità

Ragazzi, questa non è una gara di pompini.

Se vuoi usare i binari PE, continua. Se Red Hat vuole approfondire la sua relazione con Microsoft, questo è * il tuo * problema. Non ha nulla a che fare con il kernel che mantengo. È facile per te avere un motore di firma che analizzi il binario PE, verifichi le firme e firmi le chiavi risultanti con la tua chiave. Il codice, per l'amor di Dio, è già scritto, è in quella dannata richiesta di inclusione.

Perchè dovrebbe interessarmi? Perché il kernel dovrebbe preoccuparsi di alcuni stupidi "firmiamo solo binari PE" stupidi? Supportiamo X.509, che è lo standard per la firma.

Questo può essere fatto a livello di utente. Non ci sono scuse per farlo nel kernel.

Linus

La mia opinione è che Linus avesse ragione per una volta. Infatti né la Linux Foundation né le distribuzioni avrebbero dovuto essere ricattate da Microsoft.  È vero che gli utenti potrebbero essersi persi. Ma, come si è scoperto in seguito, Windows 8 è stato un fallimento e XP ha continuato a regnare per molto più tempo.

La realtà è che quando Microsoft deve affrontare una battaglia, è costretta a rispettare gli standard. È successo quando ha fallito con SIlverlight ed è stata costretta ad adottare lo standard web HTML 5. È successo quando ha dovuto abbandonare lo sviluppo del motore di rendering web e basare Edge su Chromium.

Né dobbiamo dimenticare che per attirare i programmatori doveva includere niente di meno che la possibilità di eseguire Linux su Windows.

Le distribuzioni Linux sono in una posizione migliore che mai per offrire agli utenti un'alternativa per continuare a utilizzare hardware perfettamente funzionante.


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile del trattamento: AB Internet Networks 2008 SL
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.

  1.   volpe suddetto

    Esatto, nessuno nell'universo GNU/Linux dovrebbe andare da Microsoft o da qualsiasi azienda, dobbiamo essere la resistenza e i sostenitori della libertà nell'informatica, ne abbiamo già abbastanza con le prigioni dei telefoni cellulari, quindi ora dobbiamo ingoiare richieste che beneficio solo una società.

  2.   ja suddetto

    Per quanto ne so, le decisioni di Microsoft non hanno mai giovato nemmeno al proprio ecosistema, è solo una questione di marketing nella convinzione che se non puoi eseguire tpm 2, cambierai computer solo per essere in grado di eseguire w 11, se qualcosa ha big in microsoft è l'ego, il futuro è linux non windows, e per me la decisione di microsoft è la migliore per avvicinare gli utenti a linux

  3.   rperez19 suddetto

    Amo Linux ma la mancanza di un supporto per l'avvio sicuro mi costringe ad avere solo Ubuntu che vuole arch di più, peccato che prendendo il punto di voler stare al passo con la corrente stanno perdendo utenti