Quanto dura la RAM della chiave di crittografia del sistema

7

Il titolo del thread lo dice, vorrei sapere per quanto tempo una chiave di crittografia del sistema rimarrà nella RAM o nella CPU e sarà quindi estraibile usando gli attacchi di avvio. Ho letto da qualche parte che la crittografia in caso di Linux e LUKS è gestita da memoria virtuale che viene gestita dalla CPU afaik ...

Non so come funziona la crittografia del disco o la crittografia del sistema, quando inserisco la password durante il processo di avvio il mio sistema sarà completamente decodificato fino a quando non spengo il computer, o è ancora in uno stato crittografato e il sistema hai sempre bisogno della chiave per lavorare sui documenti? Nell'ultimo caso sarebbe logico che la chiave sia spesso in uso di RAM o CPU e sarà quindi estraibile.

Lo sfondo dietro la domanda è, che mi piacerebbe avere un piccolo sistema di sorveglianza sul mio PC che resisterà agli attacchi di avvio e agli attacchi DMA. Mi piacerebbe registrare le immagini offline perché, come tutti sappiamo, una connessione Internet può improvvisamente abbattere.

Sto pensando a un netbook senza slot Pci che renderebbe impossibile l'attacco DMA e patch del kernel Linux per consentire alla CPU di gestire l'encytion più uno script sdmem che sovrascrive possibili residui della password dello screen-lock dalla RAM - sarebbe sufficiente?

    
posta Junior J. Garland 06.05.2015 - 14:19
fonte

1 risposta

9

La crittografia del disco consiste nel mantenere i dati sul disco crittografati in ogni momento; la scrittura dei file decrittografati sul disco potrebbe comportare il rischio di perdita di dati (se la macchina viene rubata in quel punto) e richiederebbe di ricodificarla al momento dell'arresto. Si noti che un tipico disco rigido meccanico legge e scrive dati a circa 120 MB / s, quindi un semplice disco rigido da 128 GB impiegherebbe più di 15 minuti per essere decodificato interamente, anche supponendo che il processo di decrittografia sia più veloce di quello e che il disco è il collo di bottiglia. Sicuramente non aspetti 15 minuti quando avvii la macchina.

Tutto ciò implica che la decrittografia avviene al volo, quando i file vengono letti. Una conseguenza è che la decrittografia si verifica finché la macchina è attiva e funzionante, quindi la chiave di decrittografia DEVE essere da qualche parte nella RAM e rimanere lì.

Allo stesso modo, se si modificano alcuni file e si desidera salvarli (in modo da riavere i nuovi file dopo il successivo riavvio), è necessario utilizzare necessariamente la chiave di crittografia.

Tuttavia , ci sono (almeno) due metodi con cui puoi immaginare di non tenere la chiave nella RAM:

  • È possibile leggere e decodificare un filesystem completo in un disco basato su RAM. Lì, la decrittografia potrebbe essere eseguita una volta e poi la chiave scartata. Ovviamente, ciò limita la dimensione totale del filesystem a ciò che può essere contenuto nella RAM, ad es. 1 o 2 gigabyte. Inoltre, tutte le scritture verranno scartate (concettualmente, si potrebbe usare crittografia asimmetrica per salvare le modifiche, da incorporare nel file system crittografato all'avvio successivo, ma è probabile che sia un progetto significativo e uno sforzo di sviluppo).

  • Il progetto TRESOR mira a fare crittografia e decodifica mantenendo le chiavi nei registri della CPU, e non consentendo a questi registri di essere scaricati nella RAM. Questo è per difesa contro attacchi di avvio a freddo , in cui gli attaccanti possono avere una buona visuale sull'intero contenuto della RAM ma non sul La CPU registra come erano prima dell'attacco. È stato notato che gli autori di attacchi che possono eseguire DMA possono immettere codice dannoso che estrae le chiavi dai registri, pertanto in questo caso la protezione non può essere considerata completa.

Un punto importante da considerare è che si utilizza la crittografia del disco per mantenere la riservatezza dei dati, ma quando si accede ai dati, è comunque necessario inserirlo nella RAM per elaborarli. Ad esempio, se si guarda il contenuto di qualche documento di testo, quindi, quando lo si guarda, i dati del documento necessariamente esistono non criptati nello spazio dell'applicazione del visualizzatore e anche nella memoria della scheda grafica. Proteggere la chiave di crittografia è tutto a posto, ma se si presume che l'attaccante sia in grado di leggere la RAM, potrebbe saccheggiare i dati direttamente. Pertanto, concentrandosi sul luogo in cui si trova la chiave di crittografia senza affrontare l'immagine più ampia del tipo dati , manca il punto. Nella maggior parte dei contesti pratici, non ha molto senso preoccuparsi degli attacchi di avvio a freddo che recuperano la chiave di crittografia del disco - anche con tutti i TRESOR nel mondo, gli attacchi a freddo sarebbero ancora quasi preoccupanti.

    
risposta data 06.05.2015 - 14:49
fonte

Leggi altre domande sui tag