Al momento ci sono molte discussioni in corso su Internet sulla famiglia di "Equation Group" di firmware di unità disco rigido malevolo.
Una cosa che mi ha chiesto è l'affermazione secondo cui il firmware di un HDD malevolo sarebbe in grado di accedere ai dettagli su qualsiasi schema di crittografia su disco completo. Ad esempio, abbiamo Come funziona l'hacking del firmware della NSA e perché è così sconveniente, da cablato che afferma, in parte (facendo riferimento qui alle porzioni inutilizzate della EEPROM del firmware):
“Taking into account the fact that their GrayFish implant is active from the very boot of the system, they have the ability to capture the encryption password and save it into this hidden area,” [Costin Raiu, director of Kaspersky’s Global Research and Analysis Team] says.
Forse mi manca qualcosa di ovvio, ma non capisco come ciò avvenga. Ci sono due casi che posso vedere qui:
- Microsoft Windows, con Bitlocker abilitato. Il caricatore del firmware è apparentemente un eseguibile di Windows e Windows è un sistema operativo comune, quindi potresti avere un po 'di leva con il codice "pronto all'uso".
- Qualche altro sistema operativo con FDE, ad esempio Linux con LUKS o FreeBSD con GEOM. Questi sarebbero, per lo meno, immediatamente non influenzati da un binario di Windows.
Quando si utilizza la crittografia a disco intero, il dispositivo di archiviazione (sia HDD, SSD, floppy, o qualsiasi altra cosa) ha il compito di conservare i bit crittografati. Alcune intestazioni sono note per esistere in diversi schemi FDE, spesso contengono materiale chiave e possono presumibilmente essere rilevati in base a numeri magici o posizione su disco, ma le parti carnose vengono crittografate dal momento in cui raggiungono il dispositivo di archiviazione.
In che modo il firmware di un dispositivo di memorizzazione può sovvertire in modo significativo la crittografia completa su disco , in cui il dispositivo di archiviazione visualizza solo i dati crittografati nei comandi READ e WRITE?
L'unica vera possibilità che posso vedere è se il firmware del dispositivo di archiviazione può in qualche modo influenzare altre parti del sistema, forse sfruttando DMA, ma il gestore della memoria della CPU non dovrebbe intervenire lì? Oppure il DMA viene sempre eseguito in modalità supervisore (anello 0 nella terminologia Intel)? Sembrerebbe aprire una lattina di vermi completamente diversa.
Supponiamo qui una tipica configurazione FDE: BIOS o UEFI, che passa a un piccolo bootloader non crittografato che richiede all'utente una password e procede a inizializzare lo stato di cryptosystem prima di resident per intercettare l'I / O del disco e fare la crittografia / decrittografia come i flussi di dati tra il normale livello I / O del sistema operativo e il dispositivo di memorizzazione stesso. Tutti "in un modo o nell'altro", lasciando da parte i dettagli di implementazione tecnica a meno che non riguardino direttamente la risposta alla domanda principale.