Procedure di sicurezza consigliate per le soluzioni IoT

Questa panoramica presenta i concetti chiave relativi alla protezione di una tipica soluzione Azure IoT. Ogni sezione include collegamenti a contenuti che forniscono ulteriori dettagli e indicazioni.

Il diagramma seguente mostra una visualizzazione generale dei componenti in una tipica soluzione IoT. Questo articolo è incentrato sulla sicurezza di una soluzione IoT.

Diagramma che illustra l'architettura della soluzione IoT di livello elevato evidenziando la sicurezza.

È possibile dividere la sicurezza di una soluzione IoT nelle tre aree seguenti:

  • Sicurezza dei dispositivi: proteggere il dispositivo IoT mentre viene distribuito in condizioni normali.

  • Sicurezza delle connessioni: garantire che tuti i dati trasmessi tra il dispositivo IoT e i servizi cloud IoT siano riservati e a prova di manomissione.

  • Sicurezza del cloud: proteggere i dati quando vengono spostati e archiviati nel cloud.

L'implementazione dei consigli di questo articolo consente di soddisfare gli obblighi di sicurezza descritti nel modello di responsabilità condivisa.

Microsoft Defender per IoT

Microsoft Defender per IoT può monitorare automaticamente alcuni dei consigli inclusi in questo articolo. Microsoft Defender per IoT deve essere considerato il punto di riferimento principale per la protezione delle risorse in Azure. Microsoft Defender per IoT analizza periodicamente lo stato di sicurezza delle risorse di Azure per identificarne potenziali vulnerabilità. e fornisce raccomandazioni per affrontarle in modo efficace. Per altre informazioni, vedere:

Sicurezza dei dispositivi

  • Definire l'ambito dell'hardware in base ai requisiti minimi: selezionare l'hardware del dispositivo in modo che includa le funzionalità minime necessarie per il suo funzionamento e nulla di più. Ad esempio, includere porte USB solo se sono necessarie per il funzionamento del dispositivo nella soluzione. Funzionalità aggiuntive possono esporre il dispositivo a vettori di attacco indesiderati.

  • Selezionare un hardware a prova di manomissione: selezionare l'hardware del dispositivo con meccanismi predefiniti per rilevare manomissioni fisiche, ad esempio l'apertura della copertura del dispositivo o la rimozione di una parte dello stesso. Tali segnali di manomissione possono far parte del flusso di dati caricato nel cloud, che può avvisare gli operatori per questi eventi.

  • Selezionare un hardware protetto: se possibile, scegliere un hardware del dispositivo che includa funzionalità di sicurezza, ad esempio l'archiviazione sicura e crittografata, e la funzionalità di avvio basata su un Trusted Platform Module. Queste funzionalità rendono i dispositivi più sicuri e aiutano a proteggere l'intera infrastruttura IoT.

  • Abilitare aggiornamenti protetti: gli aggiornamenti del firmware durante il ciclo di vita del dispositivo non possono essere evitati. Per proteggere i dispositivi durante e dopo gli aggiornamenti, creare dispositivi con percorsi sicuri per gli aggiornamenti e la sicurezza crittografica delle versioni del firmware.

  • Applicare una metodologia di sviluppo software protetta: lo sviluppo di un software protetto richiede una riflessione sulla sicurezza sin dall'inizio del progetto, fino all'implementazione, al test e alla distribuzione. Il Microsoft Security Development Lifecycle offre un approccio dettagliato alla creazione di software sicuro.

  • Usare gli SDK dei dispositivi quando possibile: gli SDK per dispositivi implementano varie funzionalità di sicurezza, ad esempio crittografia e l’autenticazione, che consentono di sviluppare applicazioni per dispositivi affidabili e sicure. Per altre informazioni, vedere Azure IoT SDK.

  • Scegliere software open source con attenzione: il software open source consente di sviluppare soluzioni in modo rapido. Quando si sceglie il software open source, valutare il livello di attività della community per ogni componente open source. Una community attiva garantisce il supporto del software e la possibilità di rilevare e risolvere i problemi. Un progetto software open source inattivo e sconosciuto potrebbe non essere supportato ed è possibile che i problemi non vengano individuati.

  • Distribuire l'hardware in modo sicuro: le distribuzioni IoT potrebbero richiedere che l'hardware da distribuire si trovi in posizioni non protette, ad esempio spazi pubblici o posizioni non controllate. In tali situazioni, assicurarsi che la distribuzione hardware sia il più possibile a prova di manomissione. Ad esempio, se l'hardware dispone di porte USB, assicurarsi che siano coperte in modo sicuro.

  • Proteggere le chiavi di autenticazione: durante la distribuzione, ogni dispositivo richiede gli ID dei dispositivi e le chiavi di autenticazione associate generate dal servizio cloud. Conservare fisicamente queste chiavi al sicuro anche dopo la distribuzione. Un dispositivo dannoso può utilizzare qualsiasi chiave compromessa da mascherare come dispositivo esistente.

  • Aggiornare il sistema regolarmente: assicurarsi che tutti i sistemi operativi e i driver dei dispositivi vengano aggiornati alle versioni più recenti. Mantenere l'aggiornamento dei sistemi operativi consente di garantire che siano protetti da attacchi dannosi.

  • Proteggere i sistemi da attività dannose: se il sistema operativo lo consente, installare le più recenti funzionalità antivirus e anti-malware su ogni sistema operativo del dispositivo.

  • Effettuare controlli regolari: controllare la presenza di problemi di sicurezza all'infrastruttura IoT è un fattore chiave durante la risposta agli incidenti di sicurezza. La maggior parte dei sistemi operativi fornisce la registrazione degli eventi predefinita, che è consigliabile esaminare frequentemente per assicurarsi che non si sia verificata alcuna violazione della sicurezza. Un dispositivo può inviare informazioni di controllo come il flusso di telemetria separato al servizio cloud in cui può essere analizzato.

  • Seguire le procedure consigliate per la sicurezza e la distribuzione del produttore del dispositivo: se il produttore del dispositivo fornisce indicazioni per la sicurezza e la distribuzione, seguire tali indicazioni oltre a quelle generiche elencate in questo articolo.

  • Usare un gateway sul campo in modo da fornire servizi di sicurezza per dispositivi legacy o vincolati: tali dispositivi potrebbero non essere in grado di crittografare i dati, connettersi a Internet o fornire controlli avanzati. In questi casi, l'uso di un gateway moderno e sicuro sul campo può aggregare i dati dai dispositivi legacy al fine di garantire la protezione necessaria per la connessione di questi dispositivi a Internet. I gateway sul campo offrono l'autenticazione protetta, la negoziazione per le sessioni crittografate, la ricezione di comandi dal cloud e molte altre funzionalità di sicurezza.

Sicurezza delle connessioni

  • Usare i certificati X.509 per autenticare i dispositivi nell'hub IoT o in IoT Central: l'hub IoT e IoT Central supportano sia l'autenticazione basata su certificati X509 che i token di sicurezza come metodi per l'autenticazione di un dispositivo. Se possibile, usare l'autenticazione basata su X509 negli ambienti di produzione, perché offre maggior sicurezza. Per altre informazioni, vedere Autenticazione di un dispositivo nell'hub IoT e Concetti relativi all'autenticazione dei dispositivi in IoT Central.

  • Usare Transport Layer Security (TLS) 1.2 per proteggere le connessioni dai dispositivi: l'hub IoT e IoT Central usano TLS per proteggere le connessioni da dispositivi e servizi IoT. Sono attualmente supportate tre versioni del protocollo TLS: 1.0, 1.1 e 1.2. TLS 1.0 e 1.1 sono considerati legacy. Per altre informazioni, vedere Autenticazione e autorizzazione.

  • Assicurarsi di avere un modo per aggiornare il certificato radice TLS nei dispositivi: i certificati radice TLS sono di lunga durata, ma potrebbero comunque scadere o essere revocati. Se non è possibile aggiornare il certificato nel dispositivo, quest’ultimo potrebbe non essere in grado di connettersi all'hub IoT, a IoT Central o a qualsiasi altro servizio cloud in un secondo momento.

  • Prendere in considerazione l'uso del collegamento privato di Azure: il collegamento privato di Azure consente di connettere i dispositivi a un endpoint privato nella rete virtuale, consentendo di bloccare l'accesso agli endpoint pubblici per dispositivi dell'hub IoT. Per altre informazioni, vedere Connettività in ingresso all'hub IoT tramite collegamento privato di Azure e Sicurezza di rete per IoT Central tramite endpoint privati.

Sicurezza del cloud

Passaggi successivi

Per altre informazioni sulla sicurezza IoT, vedere: