attacchi a canali laterali - sistema spento con accesso fisico

0

Puoi lanciare Side-Channel-Attacks contro un PC che è stato trovato correttamente shutdown e spento?

L'utente malintenzionato conosce i cryto-tools utilizzati per crittografare i dati. L'attaccante ha accesso fisico completo e illimitato all'intero sistema. Il sistema non è infetto da malware. L'utente che conosce le password non interagirà più con questo sistema. Il sistema funziona perfettamente - tranne che i dati desiderati sono crittografati e la password è sconosciuta.

Considerare il sistema (laptop o desktop) utilizzando 2 hard disk.

  • HDD n. 1: utilizzo del filesystem crittografato LUKS
  • HDD # 2: utilizzo di Truecrypt AES-256 file contenitore crittografato su file system non crittografato

Quindi, ad esempio, l'utente malintenzionato può sostituire l'hard disk, avviare il sistema e utilizzare nuovamente gli stessi strumenti crittografici per crittografare alcuni dati con una password nota mentre si osservano i canali laterali e quindi utilizzare queste informazioni per interrompere l'altra crittografia? Ci sono altri modi per infrangerlo per quanto riguarda i canali secondari o altro?

    
posta user3200534 07.02.2014 - 06:39
fonte

2 risposte

2

No. Un attacco di canale laterale è uno che monitora un processo crittografico mentre è operativo e utilizza informazioni trapelate per determinare i segreti. Gli esempi includono: monitoraggio della CPU per le emissioni RF durante la crittografia, monitoraggio del consumo energetico della CPU durante la crittografia, monitoraggio del tempo necessario per crittografare, monitoraggio del rumore generato dalla CPU durante la crittografia. In ogni caso, la crittografia che sta monitorando è già legittimamente in possesso della chiave.

Un sistema spento che non ha la chiave non eseguirà mai un'operazione di crittografia / decifratura legittima. Pertanto non ha una superficie di attacco per un attacco di canale laterale.

È ancora suscettibile ad altri attacchi come l'indovinare la password, esaminando in modo forense il file di swap per vedere se la password legittima è stata mai memorizzata nella memoria che è stata scambiata o minaccia il precedente keyholder fino a quando non rivela la chiave. Non solo attacchi ai canali laterali.

Modifica

Un commento qui sotto chiede se l'utente malintenzionato potrebbe estrarre la password dai componenti.

Generalmente i bit chiave non rimarranno in componenti elettronici dinamici per molto tempo (escluso il congelamento dei chip DRAM come indicato da @TomLeek.) Componenti come i latch del bus, gli adattatori di rete, ecc. la chiave, e anche se lo facessero, i loro buffer di memoria sono generalmente molto brevi, dinamici e progettati solo per i dati transitori.

Alcune persone hanno teorizzato che una chiave memorizzata per una durata prolungata nelle stesse celle fisiche della RAM potrebbe causare un effetto di "burn-in" tale che le celle di memoria possano essere differenziate con alcune apparecchiature o software specializzati. La teoria è che se si sapessero quali celle contengono i bit chiave, è possibile determinare per quanto tempo possono mantenere una carica prima di richiedere l'aggiornamento. L'idea è che un po 'che ha tenuto un 1 potrebbe decadere da uno stato 1 più lento che da uno stato 0. Tali attacchi sono stati dimostrati in un ambiente di laboratorio e, chissà, forse un governo potrebbe essere in grado di usarli in un caso di spionaggio di alto profilo, ma non rientrano nelle capacità di un'indagine ordinaria della polizia. Le organizzazioni criminali non sono ancora note per avere queste capacità.

Il marketing PGP Desktop chiama questo effetto "migrazione ionica statica" e tenta di attenuare questa via di attacco mantenendo due copie della chiave e invertendo periodicamente i bit chiave di ciascuno. (Ironia della sorte, si rivela essere una benedizione per gli attacchi ai canali laterali, dal momento che un raschietto RAM può cercare in modo efficiente la memoria che è il bit inverso di un'altra area della memoria.)

Vedi questo documento, RAM è KEY per ulteriori informazioni sulla ricerca di chiavi nella memoria volatile.

Se la chiave è stata mai archiviata in una memoria permanente, come HDD, flash o CMOS, tuttavia, il ripristino diventa possibile. L'applicazione deve tenere traccia di ogni posto che potrebbe essere stato scritto e sovrascriverlo. Questo è quasi impossibile con la memoria flash, perché gli algoritmi di livellamento dell'usura si spostano continuamente dove sono memorizzati i dati.

    
risposta data 07.02.2014 - 07:20
fonte
0

Gli attacchi a canali laterali sfruttano la fuga di informazioni segrete attraverso meccanismi fisici non ovvi. Questo può accadere solo se è , all'interno del sistema in esecuzione, alcune informazioni segrete; e può accadere solo quando il sistema è effettivamente in esecuzione. Nel tuo scenario, la password e la chiave derivate dalla password non sono più nel sistema (erano nella RAM, ma questo è scomparso quando il sistema è stato spento) quindi non c'è più nessun segreto da perdere. Fondamentalmente, non ci può essere una perdita se non c'è nulla da perdere.

Ora possono esserci dettagli ...

A un certo punto, ciò che era nella RAM può ancora indugiare per un po 'di tempo. Questo è il principio degli attacchi di avvio a freddo . La finestra temporale è molto stretta, ma non così stretta da non poter essere dimostrata in condizioni di laboratorio. Vale a dire, se il PC è stato spento meno di un minuto fa, un utente malintenzionato può riapplicare potenza ai chip della RAM e i dati saranno ancora lì, per lo più non danneggiati.

Uno scenario più plausibile coinvolge la memoria virtuale , alias "swap space", come sottolineato da @John. Ciò che un'applicazione vede come "RAM" può essere copiato in modo trasparente sul disco dal sistema operativo, in modo che le applicazioni possano utilizzare più RAM di quella fisicamente presente nella macchina. In questo modo, i valori segreti potrebbero fuoriuscire sul disco ed essere ancora presenti in una macchina "spenta". In questo caso, puoi affermare che si tratta di un "attacco canale laterale" in cui l'attacco è stato effettivamente attivato dal sistema operativo stesso al momento dell'elaborazione della password. I buoni sistemi crittografici utilizzano la mlock () chiamata di sistema (o il suo equivalente nel sistema operativo locale) per istruire il Sistema operativo non farlo. Per un sistema di crittografia del disco rigido in cui la crittografia si verifica effettivamente all'interno dello spazio del kernel, è improbabile che la memoria virtuale sia un problema.

(Probabilmente, data la dimensione della RAM nei computer di oggi, e data la tendenza all'uso di linguaggi di programmazione che non interagiscono bene con l'euristica della memoria virtuale, in particolare linguaggi basati su GC come Java, C #, Javascript o Python, un caso può essere fatto che non usare affatto lo spazio di swap potrebbe essere una buona idea, e che ha benefici per la sicurezza in generale .)

    
risposta data 07.02.2014 - 17:55
fonte

Leggi altre domande sui tag