L'avvio sicuro è veramente sicuro?

1

Ho trovato abbastanza intrigante il concetto di Secure Boot. Non posso dire di conoscerlo molto perché non lo faccio, ma credo di averne compreso il concetto principale.

Secure Boot verifica la firma dell'eseguibile all'avvio del computer. (Di solito, il caso è il bootloader)

Su un computer senza avvio sicuro, un utente malintenzionato potrebbe semplicemente sovrascrivere \EFI\Boot\bootx64.efi o \EFI\Boot\bootia32.efi a seconda dell'architettura con il proprio programma, il suo programma in qualche modo infetterà il sistema operativo della macchina e continuerà l'esecuzione con il bootloader di Windows che è memorizzato in \EFI\Microsoft\Boot\bootmgr.efi

Secure Boot lo impedisce perché l'eseguibile EFI dell'attaccante non è firmato.

Ma potrebbe essere facilmente eluso.

Un utente malintenzionato potrebbe semplicemente installare systemd-boot bootloader che chiamerebbe il file EFI dell'attaccante che chiamerebbe il Bootloader di Windows dopo che ha funzionato.

Mi manca qualcosa?

    
posta ChrisK 03.03.2018 - 21:50
fonte

2 risposte

2

systemd-boot deve anche essere firmato. Il gummiboot firmato originale rispetta il processo di avvio "sicuro" e richiede che i binari da lanciare siano anch'essi firmati: link

Quindi non è proprio così banale. Ma ci sono altri attacchi su Secure Boot che sovrascrivono le protezioni:

Il termine secure in relazione all'architettura x86 è sempre relativo; Devono essere considerati come valutazioni di incidenti automobilistici: nessuna macchina è a prova di schianto, altri richiedono un po 'più di forza per renderlo fatale.

Questo è in qualche modo inerente a tutta la sicurezza, ma con altri design c'è una curva a S ripida da "aperta" a "bisogno di un microscopio elettronico e un fascio di ioni focalizzato da spezzare". Gli sforzi per proteggere x86 sono simili a collegare tutti i fori di un setaccio per renderlo idoneo alla navigazione, a condizione che ogni spina si apra automaticamente quando alcune caratteristiche legacy dipendono dalla funzione originale del setaccio di lasciar passare l'acqua.

    
risposta data 04.03.2018 - 05:32
fonte
3

Penso che la teoria sia che ogni livello firma solo un'istanza del livello successivo se implementa correttamente i controlli delle firme.

In altre parole systemd-boot dovrebbe eseguire controlli delle firme e caricare solo i file che superano la convalida.

Ovviamente potrebbero esserci divari tra teoria e pratica ...

    
risposta data 03.03.2018 - 22:05
fonte

Leggi altre domande sui tag