Siamo nella fase finale del lancio di una soluzione IoT moderatamente complessa, e sfortunatamente non c'è nulla che assomigli a un esperto di sicurezza a bordo. Ma finora tutto sembra ragionevolmente protetto ... tutto tranne le schede SD nei dispositivi distribuiti, cioè, e sto discutendo se valga la pena di crittografarli o se è uno sforzo inutile. Che è dove ho bisogno di consigli da persone più esperte di me.
Fondamentalmente, se qualcuno rubasse un dispositivo e / o la sua scheda SD, avrebbe accesso alle seguenti cose:
Un certificato CA radice comune a tutti i dispositivi che viene utilizzato in un handshake bidirezionale con un broker MQTT. Una chiave pubblica e privata utilizzata per crittografare quella comunicazione, utilizzata solo dal dispositivo specifico. Questi due possono essere revocati non appena sappiamo che un dispositivo è scomparso.
Un certificato CA radice comune a tutti i dispositivi utilizzati in un handshake bidirezionale con un server VPN, utilizzato per la manutenzione remota. Una chiave pubblica e privata utilizzata per crittografare la comunicazione con la VPN, utilizzata solo dal dispositivo specifico e associata al suo nome host. Di nuovo, questi due possono essere revocati in un heartbeat senza cambiare nulla nel resto del sistema.
Una chiave SSH pubblica comune a tutti i dispositivi utilizzati per la manutenzione remota.
Per quanto ho capito, le chiavi di crittografia per vpn e mqtt-broker sono inutili una volta revocate e la chiave pubblica SSH non compromette la sicurezza degli altri dispositivi, anche se li condividono. Ciò di cui non sono sicuro sono le CA ... Da quello che ho letto sono inutili senza la chiave privata e i certificati di crittografia validi, ma mi piacerebbe davvero essere sicuro su questo punto.
Data la situazione, cosa consiglieresti? Per crittografare o non crittografare la scheda SD? Poiché si tratta di una soluzione IoT già piuttosto pesante per il calcolo che funziona principalmente su RasPis, non voglio prendere l'overhead aggiuntivo di una partizione crittografata a meno che la sicurezza non sia realmente compromessa se qualcuno la subisse.