Voglio prevenire il potenziale furto della mia applicazione web (codice sorgente + database) da parte della mia società di hosting locale, di cui non mi fido completamente per qualche motivo (ma non ho altra scelta che usare come danno, di gran lunga , la migliore latenza qui).
Ho intenzione di crittografare una partizione con cryptsetup
e memorizzare la directory web + i file di database lì.
L'unico problema è che dovrò sbloccare la partizione ad ogni riavvio (anche quelli non controllati), prima di poter avviare i server di database web &; ma immagino di essere pronto a conviverci per ora.
Tuttavia, per quanto posso leggere in tutto il Web, le chiavi di crittografia sono archiviate così come sono in memoria, e può essere letto con accesso fisico alla macchina, anche da una macchina dedicata utilizzando attacchi di avvio a freddo. Su una VM, immagino che questo sia ancora più semplice, poiché l'hypervisor può acquisire un'istantanea dell'intero stato del server (memoria + RAM).
Per quanto ne so, dovrebbe essere abbastanza facile da eseguire un dump della memoria e individuare la chiave di crittografia in qualsiasi momento.
Esiste un modo per impedirlo?
So che il controllo dell'hypervisor fornisce un enorme vantaggio per chi tenta di rubare dati, e come tale non sto cercando una soluzione perfetta qui; ma sto piuttosto cercando di rendere il più difficile possibile l'accesso ai dati, in modo che non sia economicamente sostenibile spendere tempo con le risorse di & per ottenerli.
Non sono molto ottimista qui, poiché le chiavi di crittografia devono essere archiviate in qualche forma in memoria per la decrittografia, ma spero di essermi perso qualcosa.
Modifica - chiarimento
Dal mio commento di seguito:
Sono sicuro che gli hypervisor della società di hosting non vengono modificati in alcun modo per eseguire operazioni dannose; la loro attività è l'hosting, non il furto di oggetti e l'azienda è relativamente affidabile. Quello che sto cercando di proteggere è qualcuno che corrompe un dipendente per vendergli un'istantanea dei dati. Finché la chiave di crittografia non può essere recuperata da nessuna istantanea che può eseguire l'hypervisor di serie, considero la soluzione abbastanza buona per il mio caso d'uso.