Bene, c'è un vecchio detto da Microsoft (lo so, non il meglio fonte di sicurezza) che dice:
Law #3: If a bad guy has unrestricted physical access to your computer, it's not your computer anymore.
E perché è applicabile al tuo caso? Perché se hai crittografia sufficiente, il tuo disco rigido è sicuro se qualcuno lo ruba. Ma se la persona può avere accesso ai tuoi chip RAM subito dopo aver spento il server, può provare a recuperare le chiavi nello scenario che hai appena detto.
La memorizzazione delle chiavi nella cache della CPU lo ridurrebbe al minimo, come hai detto, ma i dati non crittografati potrebbero essere ancora disponibili nei chip RAM.
E se avesse accesso al tuo computer prima di accenderlo? Stai prendendo in considerazione la protezione fisica prima durante l'avvio? altrimenti, il cattivo può creare una schermata di accesso falso e prendere la password anche se l'intero sistema è crittografato. Oppure può allegare un keylogger. Oppure può collegare un dispositivo e clonare i chip della RAM dall'inizio. Oppure può cambiare il tuo BIOS e farlo anche tu. Oppure ... beh, dai un'occhiata al catalogo NSA, ad esempio, per avere qualche idea del potenziale attacco.
Quindi il tuo computer deve essere fisicamente sicuro. Ciò significa che non solo l'accesso fisico deve essere difficile (ad esempio, dato un tempo sufficiente per svanire il contenuto della RAM), ma anche che non può catturare la radiazione magnetica dalla CPU o dalla scheda madre o dalla tastiera, né rumori, né immagini da te digitando o spostando il mouse.
Se hai davvero bisogno di quel livello di sicurezza che elimina i chip RAM dal tuo computer, probabilmente hai bisogno di più sicurezza di quanto ti aspetti.
Aggiorna
Dopo il tuo commento:
I'm wanting protection so that my clients' data cannot be retrieved physically from the server while it is running, just powered off recently, or has been powered off for a while.
Penso di poter espandere un po 'la mia risposta, semplicemente pensando in questo aspetto fisico.
- Per proteggere i tuoi dati dopo che il tuo server è stato spento per un po 'di tempo:
La crittografia è tua amica. Se qualcuno estrae un HDD crittografato con un strong algoritmo e una password complessa, impiegherà per sempre la forza bruta ad attaccarlo.
Punti da considerare:
a) la crittografia dell'intero disco richiede che tu o alcuni programmi "digitiate" la password durante il montaggio. Se sei tu, dovrai essere disponibile per accenderlo ogni volta. Se si tratta di un programma, dove memorizzare la chiave
b) crittografare solo dati / cartelle, esiste lo stesso problema "dove archiviare la chiave per accenderlo".
- Per proteggere i dati dopo che il server è stato spento recentemente o durante l'esecuzione:
Durante l'esecuzione, è necessario che il percorso tra HDD - RAM - CPU sia crittografato, come spiega la risposta di Thomas Pornin, e che non sono a conoscenza di alcun server con una CPU in grado di farlo. E dovresti preoccuparti della compatibilità con alcune periferiche, dal momento che PCI, PCI Express, Firewire, ecc., Si affidano a DMA per velocizzare le cose. Quindi potresti avere problemi di prestazioni.
Un modo più semplice per evitare che sia, beh, proteggere fisicamente il tuo server. Come una stanza sicura, dove il server è spento e riscaldato a una certa temperatura (per evitare che qualcuno rubi i tuoi chip RAM). O addirittura distruggendo i chip con scoppi controllati o picchi di tensione. Tutto ciò che rende più difficile per qualcuno entrare e andare via con il tuo server sotto le sue braccia.
E, naturalmente, tutto questo lascia fuori che molti attacchi possono essere fatti in remoto, senza alcuna presenza fisica, usando solo il software e così via.