Crittografia completa del disco con TPM, non soggetto ad attacchi di avvio a freddo


9

Ecco un passaggio da Wikipedia su BitLocker

Una volta in esecuzione una macchina protetta da BitLocker, le sue chiavi vengono archiviate in memoria dove possono essere suscettibili agli attacchi di un processo in grado di accedere alla memoria fisica, ad esempio attraverso un canale DMA 1394. Qualsiasi materiale crittografico in memoria è a rischio a causa di questo attacco, che pertanto non è specifico di BitLocker.

Sono consapevole del fatto che Trusted Platform Modules (TPM) , che BitLocker sta presumibilmente utilizzando, sono realizzati per proteggere specificamente da tali attacchi:

... una chiave sarebbe ancora vulnerabile mentre un'applicazione software che l'ha ottenuta dal TPM la sta usando per eseguire operazioni di crittografia / decrittografia, come è stato illustrato nel caso di un attacco di avvio a freddo. Questo problema viene eliminato se le chiavi utilizzate nel TPM non sono accessibili su un bus o su programmi esterni e tutta la crittografia / decrittografia viene eseguita nel TPM

Il diagramma TPM implica che l'archiviazione delle chiavi e il motore di crittografia / decrittazione dovrebbero far parte del modulo. Quindi, perché non esiste un prodotto di crittografia del disco completo che utilizza questa funzione? Ad esempio: perché non esiste un software FDE, non vulnerabile agli attacchi di avvio a freddo?

Risposte:


3

Il diagramma TPM implica che l'archiviazione delle chiavi e il motore di crittografia / decrittazione dovrebbero far parte del modulo. Quindi, perché non esiste un prodotto di crittografia del disco completo che utilizza questa funzione? Ad esempio: perché non esiste un software FDE, non vulnerabile agli attacchi di avvio a freddo?

Se si desidera che la chiave non sia presente all'esterno del TPM, il TPM dovrebbe eseguire tutta la crittografia. Questo non è fattibile perché al TPM manca quanto segue:

  1. crittografia simmetrica

    Lo stesso TPM non può eseguire una crittografia simmetrica come AES su dati forniti esterni.

  2. prestazione

    Anche se sarebbe in grado di crittografare, le prestazioni del chip non soddisferebbero i requisiti per un FDE. Un TPM è progettato per essere molto a basso costo. Le prestazioni non sono un obiettivo di progettazione.

  3. larghezza di banda

    Un TPM in un sistema PC è collegato tramite bus LPC che può trasferire al massimo 6,67 MB / s. (neanche full duplex)

Quindi il TPM non è progettato per eseguire FDE.

La soluzione è lasciare che l'HDD stesso esegua la crittografia. Se vuoi andare in quel modo, dovresti esaminare il gruppo di lavoro sulla memorizzazione dei dati del TCG . La loro soluzione si basa su Self Encrypting Drives (SED) che memorizzano le loro chiavi nel TPM. Pertanto la chiave non dovrebbe mai essere visibile nella RAM del sistema e solo per un breve periodo sul bus del sistema .

Quindi non v'è una soluzione per FDE, ma richiede hardware speciale (= SED).


Ciò non renderebbe il sistema vulnerabile allo sniffing lungo il bus, sia esso PCI o USB (se esterno)? La chiave di decrittazione deve viaggiare lungo quel percorso verso l'unità e i dati torneranno sempre indietro - e saranno nella memoria del PC - in chiaro.
Deitch

@deitch sì, ma è un attacco diverso. Se vuoi difenderti da qualcuno che è in grado di annusare il tuo bus PCIe, buona fortuna.
Scolytus,

fatto. In altre parole, se voglio difendermi dall'attaccare i dati non crittografati (non la chiave), allora devo proteggere il bus fisico.
Deitch

Ma allora, qual è il valore di avere le chiavi delle unità non essere mai visibili nella RAM? Dopotutto, i dati non crittografati saranno lì.
Deitch

Oh, sì (scusate per più commenti). Ho visto molti SED; conosci qualcuno che memorizza nativamente le loro chiavi in ​​TPM?
Deitch

4

Dalla articolo di Wikipedia su TPM , TPM dettagli di specifica "un microprocessore crittografico sicuro in grado di memorizzare le chiavi crittografiche che proteggono le informazioni" - in altre parole, un pezzo generalizzata di hardware che esegue le operazioni di crittografia per l'utente.

Il TPM è generalizzato per essere accessibile dall'interno del sistema operativo e dal software successivo, e quindi è intrinsecamente limitato nella sicurezza a causa della sua progettazione: i programmi devono essere eseguiti da qualche parte e quindi devono essere caricati nella RAM. Diversi altri programmi utilizzano il modulo TPM a fini di autenticazione (ad esempio alcune reti di sicurezza aziendali) o per impedire a computer non autorizzati di accedere a una determinata rete.


Questo non è limitato a BitLocker e anche altre soluzioni che utilizzano il TPM devono fare attenzione a mitigare i rischi di attacchi di avvio a freddo / copia RAM.

In teoria, sarebbe possibile avere un disco rigido che si auto-crittografa in modo simile a un modulo TPM auto-chiuso. Ciò pone una limitazione molto grave, tuttavia: l'utente finale non può conoscere la chiave di decrittazione (altrimenti un virus o un altro software potrebbe anche determinarla), quindi sarebbe impossibile recuperare i dati se necessario, non ha modo di ottenere la chiave per decrittografarla.

Questo documento che illustra gli attacchi di avvio a freddo su quasi tutti gli schemi di crittografia dell'intero disco può essere utile:

Nella sua "modalità base" predefinita, BitLocker protegge la chiave master del disco esclusivamente con il Trusted Platform Module (TPM) presente su molti PC moderni. Questa configurazione [...] è particolarmente vulnerabile al nostro attacco, poiché le chiavi di crittografia del disco possono essere estratte con i nostri attacchi anche se il computer è spento per molto tempo. All'avvio della macchina, le chiavi verranno caricate automaticamente nella RAM (prima della schermata di accesso) senza l'inserimento di segreti.

Sembra che Microsoft sia a conoscenza [...] e consiglia di configurare BitLocker in "modalità avanzata", dove protegge la chiave del disco utilizzando il TPM insieme a una password o una chiave su un dispositivo USB rimovibile. Tuttavia, anche con queste misure, BitLocker è vulnerabile se un utente malintenzionato arriva al sistema mentre lo schermo è bloccato o il computer è addormentato (anche se non se è in letargo o spento).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.