Quanto è sicuro UEFI Secure Boot di Microsoft, davvero?

18

Recentemente ho letto alcuni articoli sulla funzionalità UEFI Secure Boot e su come Microsoft richiederà che sia abilitato per impostazione predefinita su tutti i sistemi x86 certificati Windows 8. In teoria, sembra una buona idea: il sistema verificherà l'integrità del boot loader prima di ogni avvio. Tuttavia, fornisce anche alcune complicazioni.

Il problema principale sorge quando qualcuno vuole eseguire un sistema operativo non Microsoft su hardware x86 con certificazione Windows 8. Poiché l'hardware avrà Secure Boot abilitato e probabilmente avrà solo la chiave di Microsoft installata per impostazione predefinita, l'utente dovrà risolvere il problema in uno dei seguenti modi:

  1. Disabilita avvio sicuro : questa è, ovviamente, la soluzione meno ideale. Tuttavia, per alcuni potrebbe essere l'unica opzione disponibile.
  2. Installa un certificato personalizzato : un'opzione per l'inclinazione tecnica, ma non probabile, che i normali utenti finali considereranno facilmente.
  3. Scegli un sistema operativo con un caricatore di avvio firmato da Microsoft . Probabilmente è il più facile da usare per l'utente finale, anche se potrebbe limitare le tue opzioni. Fedora ha annunciato che saranno tra queste opzioni. Ciò non richiede alcuna modifica all'UEFI o aggiramento con certificati personalizzati: basta installare il sistema operativo Microsoft e andare.
  4. Ottieni il tuo boot loader firmato da Microsoft - Forse l'opzione meno preferibile, dal momento che ha un costo effettivo ($ 99 una tantum). Tuttavia, è utile se stai creando la tua distro e vuoi condividerla con gli amici.

Queste ultime due opzioni sono davvero il mio punto di preoccupazione, però. Se solo costa $ 99, una volta, per avere il privilegio di firmare tutti i boot loader di Microsoft, è davvero il grande ostacolo per gli scrittori di malware che resistono fare a milioni dai loro rootkit firmati da Microsoft?

C'è qualcosa che mi manca qui, o questo requisito di avvio sicuro (e tutto ciò che è stato creato per supportarlo) porta davvero a un falso senso di miglioramento della sicurezza? Che tipo di complicazioni potrebbero sorgere se il sistema venisse effettivamente abusato in questo modo? Dovremo aggiornare i nostri UEFI ogni volta che verrà pubblicato un nuovo CRL?

    
posta Iszi 19.06.2012 - 19:38
fonte

3 risposte

10

Matthew Garrett ha alcuni post di blog interessanti su UEFI Secure Boot. Per quanto riguarda la tua domanda, scrive :

Anyone can pay $99 and get their binaries signed. So why won't malware authors just do that? For starters, you'll need to provide some form of plausible ID for Verisign to authenticate you and hand over access. So, sure, you provide some sort of fake ID. That's the kind of thing that tends to irritate local authorities - not only are you talking about breaking into a bunch of computers, you're talking about committing the sort of crime that results in genuinely bad things happening to you if you get caught. And secondly, the only way you get access to the system is using some physical smartcards that Verisign send you. So you've also had to hand over an actual physical address, and even if you've used some sort of redirection service that's still going to make it easier to track you down. You're taking some fairly significant real-world risks.

Memorizzare le credenziali di accesso per la chiave su una smartcard era il bit di nuove informazioni che mi ha convinto che UEFI Secure Boot non è solo il teatro di sicurezza. Come ha detto Matthew, ti rende più tracciabile. Inoltre riduce significativamente la probabilità di furto, che sarebbe stato il modo più intelligente per ottenere la chiave per la firma dei ladri a mio parere.

È ancora abbastanza probabile che compaia il malware firmato. Ma gli attacchi su larga scala saranno più facili da mitigare, innanzitutto revocando la chiave di firma e la seconda rintracciando il firmatario tramite il suo indirizzo fisico.

Il sistema non è perfetto (e cade piuttosto breve rispetto a quello che sarebbe stato realizzabile) ma renderà più difficile la scrittura dei bootkit. Allo stesso modo in cui ASLR e NX bit ci rendono un po 'più sicuri contro il malware, anche se gli attacchi di overflow del buffer sono ancora fattibili, l'avvio sicuro non è una perdita di tempo.

Riguardo al CRL ho sentito che ci sarà un'interfaccia UEFI standard per il sistema operativo per spingere nuovi elenchi di revoca nel BIOS. Ciò renderà gli aggiornamenti automatici molto convenienti.

    
risposta data 19.06.2012 - 21:37
fonte
5

I reali miglioramenti della sicurezza vengono creati se si acquista per un'azienda commerciale o governativa ma a un costo correlato alla supportabilità. Per la maggior parte degli utenti domestici che non desiderano nient'altro che un desktop Microsoft e non modificano mai il loro sistema acquistato, verrà fornita anche una maggiore sicurezza. Per l'utente domestico che desidera il dual boot (una forza di mercato molto piccola) complicherà la vita e fornirà un miglioramento della sicurezza minimo o nullo poiché le funzionalità saranno disabilitate per definizione.

Considerare il contesto in cui verrà utilizzato questo paradigma di avvio affidabile con la convalida dei componenti fondamentali durante la fase di avvio. Se sei responsabile per la sicurezza di una grande azienda, le funzionalità saranno molto interessanti e aumenteranno notevolmente il tuo set di strumenti per svolgere il tuo lavoro. Avrai un strong incentivo per acquistare il sistema operativo e l'hardware abilitato per bloccare la tua azienda.

Se sei un utente domestico che desidera avviare il dual boot in Linux, è un grosso problema. Ovviamente hai il controllo fisico del tuo sistema di casa e sarai in grado di disabilitare la funzione. Complifica ulteriormente la tua esperienza con Linux.

La sicurezza viene aggiunta per coloro che hanno il controllo fisico del proprio sistema (i) e il desiderio di limitare l'efficacia degli attacchi virtuali che modificano i componenti fondamentali del sistema operativo.

Ci sono molte funzionalità oltre alla sicurezza che vengono con questa soluzione. Per uno, la complessità amministrativa aumenterà in quanto questi sistemi saranno più difficili da aggiornare e modificare. Crea anche un effetto di giardino recintato per un sistema operativo noto per un ampio supporto in un momento in cui tale sistema operativo è in competizione con un sistema operativo per giardini recintato. Inoltre, l'anonimato dell'utente sarà diminuito. Le forze di mercato oggi preferiscono giardini recintati e perdita di anonimato.

La preoccupazione della comunità Linux è che questo cambiamento rende più difficile per gli utenti spostarsi casualmente su Linux. Questa è una preoccupazione valida. Non è tuttavia un problema di sicurezza. In termini di sicurezza, per la stragrande maggioranza degli utenti migliorerà la sicurezza.

    
risposta data 20.06.2012 - 14:58
fonte
3

Secure Boot per PC è inflessibile e ti lascia poche opzioni se il tuo sistema è in qualche modo rotto. Inoltre, non è progettato per scalare in un ambiente con più parti interessate, ad esempio la tua azienda desidera utilizzare Secure Boot per garantire non solo un'installazione corretta di Windows, ma anche un set di alcuni strumenti di applicazione delle policy. Non possibile fuori dalla scatola.

L'avvio attendibile, in cui i componenti vengono misurati ma solo facoltativamente verificati in seguito, è stato inventato con precisione a causa di queste limitazioni. Quindi, il fatto che Microsoft richieda un meccanismo diverso nonostante faccia parte del comitato di standard che ha definito Trusted Boot è stupido da un punto di vista tecnico (prendendo una decisione sbagliata nonostante si conosca meglio). Ovviamente, hanno in mente diversi obiettivi rispetto alla sicurezza.

Il modo migliore per usare Secure Boot è caricare un motore neutro di policy policy, come un hypervisor open source, che quindi misura e carica ulteriori componenti in modalità Trusted Boot. In questo modo hai tutta la flessibilità, ma in realtà non hai bisogno dell'hardware TPM, solo la speranza che questo hypervisor rimanga sicuro e segnala correttamente cosa sta succedendo. Il design è noto da molti anni, ma naturalmente MS non ha interesse a fornire una soluzione così neutrale.

Venendo alla tua domanda, la firma del codice è più facilmente garantita controllando correttamente chi sta richiedendo la firma del codice. Questo sembra ragionevole per un costo di $ 99. Gli autori di malware probabilmente non saranno così desiderosi di fornire il loro ID, e i boot loader open source sono sufficientemente stabili e sicuri per mantenere una buona reputazione. Significa anche che non aiuterà affatto contro lo spionaggio a livello di governo e le prossime cyberwars. I clienti saranno gli unici a non avere una chiave: -)

    
risposta data 19.06.2012 - 21:10
fonte

Leggi altre domande sui tag