Architettura di sicurezza per le soluzioni IoT

Quando si progetta e si progetta una soluzione IoT, è importante comprendere le potenziali minacce e includere difese appropriate. Comprendere in che modo un utente malintenzionato potrebbe compromettere un sistema consente di assicurarsi che le mitigazioni appropriate siano applicate fin dall'inizio.

Modellazione delle minacce

Microsoft consiglia di usare un processo di modellazione delle minacce come parte della progettazione della soluzione IoT. Se non si ha familiarità con la modellazione delle minacce e il ciclo di vita di sviluppo sicuro, vedere:

Sicurezza in IoT

È utile dividere l'architettura IoT in diverse zone come parte dell'esercizio di modellazione delle minacce:

  • Dispositivo
  • Gateway sul campo
  • Gateway cloud
  • Servizioo

Ogni zona ha spesso i propri requisiti di autenticazione e autenticazione e autorizzazione. È anche possibile usare zone per isolare i danni e limitare l'impatto delle zone con attendibilità bassa nelle zone di attendibilità più elevate.

Ogni zona è separata da un limite di attendibilità, illustrata come linea rossa punteggiata nel diagramma seguente. Rappresenta una transizione di dati da un'origine a un'altra. Durante questa transizione, i dati potrebbero essere soggetti alle minacce seguenti:

  • Spoofing
  • Manomissione
  • Ripudio
  • Diffusione di informazioni
  • Denial of Service
  • Elevazione dei privilegi

Per altre informazioni, vedere il modello STRIDE.

A diagram that shows the zones and trust boundaries in a typical IoT solution architecture.

È possibile usare STRIDE per modellare le minacce a ogni componente all'interno di ogni zona. Le sezioni seguenti introducono ciascuno dei componenti, oltre ai problemi di sicurezza specifici e alle soluzioni che devono essere implementate.

Nella parte restante di questo articolo vengono illustrate in modo più dettagliato le minacce e le mitigazioni per queste zone e componenti.

Area del dispositivo

L'ambiente del dispositivo è lo spazio intorno al dispositivo in cui l'accesso fisico e l'accesso digitale alla rete locale al dispositivo è fattibile. Si presuppone che una rete locale sia distinta e isolata da – ma potenzialmente con bridge a – la rete Internet pubblica. L'ambiente del dispositivo include qualsiasi tecnologia radio wireless a corto raggio che consente la comunicazione peer-to-peer dei dispositivi. Non include alcuna tecnologia di virtualizzazione di rete che crea l'illusione di una rete locale di questo tipo. Non include reti dell'operatore pubblico che richiedono che due dispositivi comunichino attraverso lo spazio di rete pubblico se dovevano entrare in una relazione di comunicazione peer-to-peer.

Zona gateway campo

Un gateway sul campo è un dispositivo, un'appliance o un software computer server per utilizzo generico che funge da abilitatore di comunicazione e, potenzialmente, come sistema di controllo del dispositivo e hub di elaborazione dati del dispositivo. La zona gateway sul campo include il gateway di campo stesso e tutti i dispositivi collegati. I gateway sul campo agiscono all'esterno di strutture di elaborazione dati dedicate, sono in genere associati alla posizione, sono potenzialmente soggetti a intrusioni fisiche e hanno una ridondanza operativa limitata. Un gateway sul campo è in genere un elemento che un utente malintenzionato potrebbe sabotare fisicamente se ha ottenuto l'accesso fisico.

Un gateway sul campo differisce da un router del traffico in quanto ha un ruolo attivo nella gestione dell'accesso e del flusso di informazioni. Il gateway sul campo ha due distinte superfici di attacco: Uno affronta i dispositivi collegati e rappresenta l'interno della zona. L'altro fronte tutte le parti esterne ed è il bordo della zona.

Zona del gateway cloud

Un gateway cloud è un sistema che consente la comunicazione remota da e verso dispositivi o gateway sul campo distribuiti in più siti. Il gateway cloud consente in genere un sistema di controllo e analisi dei dati basato sul cloud o una federazione di tali sistemi. In alcuni casi, un gateway cloud può immediatamente facilitare l'accesso ai dispositivi per scopi specifici dai terminali, ad esempio tablet o telefoni. Nella zona del gateway cloud, le misure operative impediscono l'accesso fisico mirato e non sono necessariamente esposte a un'infrastruttura cloud pubblica.

Un gateway cloud può essere mappato in una sovrimpressione di virtualizzazione di rete per isolare il gateway cloud e tutti i relativi dispositivi collegati o gateway sul campo da qualsiasi altro traffico di rete. Il gateway cloud stesso non è un sistema di controllo del dispositivo o una struttura di elaborazione o archiviazione per i dati del dispositivo; tali strutture si interfacciano con il gateway cloud. La zona di gateway cloud include il gateway cloud stesso assieme a tutti i gateway sul campo e ai dispositivi direttamente o indirettamente a esso collegati. Il bordo della zona è un'area di superficie distinta attraverso cui tutte le parti esterne comunicano.

Zona Servizi

Un servizio in questo contesto è qualsiasi componente software o modulo che si interfaccia con i dispositivi tramite un campo o un gateway cloud. Un servizio può raccogliere dati dai dispositivi e dai comandi e controllare tali dispositivi. Un servizio è un mediatore che agisce sotto la propria identità verso i gateway e altri sottosistemi per:

  • Archiviare e analizzare i dati
  • Eseguire comandi ai dispositivi in base alle informazioni dettagliate sui dati o alle pianificazioni
  • Esporre le informazioni e le funzionalità di controllo agli utenti finali autorizzati

Dispositivi IoT

I dispositivi IoT sono spesso dispositivi speciali che vanno da semplici sensori di temperatura a linee di produzione di fabbrica complesse con migliaia di componenti all'interno di essi. Le funzionalità dei dispositivi IoT di esempio includono:

  • Misurazione e segnalazione delle condizioni ambientali
  • Valvole di rotazione
  • Controllo dei servo
  • Allarmi acustici
  • Accensione o spegnimento delle luci

Lo scopo di questi dispositivi determina la progettazione tecnica e il budget disponibile per il loro funzionamento di produzione e durata pianificata. La combinazione di questi fattori vincola il budget operativo disponibile per l'energia, il footprint fisico e le funzionalità di archiviazione, calcolo e sicurezza disponibili.

Le cose che possono andare storte con un dispositivo IoT automatizzato o controllato in remoto includono:

  • Difetti fisici
  • Controllare i difetti della logica
  • Intrusioni e manipolazioni non autorizzate.

Le conseguenze di questi guasti potrebbero essere gravi, ad esempio la produzione distrutta, gli edifici bruciati, o lesioni e morte. Di conseguenza, è disponibile una barra di sicurezza elevata per i dispositivi che spostano o segnalano i dati dei sensori che generano comandi che causano lo spostamento delle cose.

Interazioni tra controllo del dispositivo e dati del dispositivo

I dispositivi per scopi specifici connessi tra loro sono caratterizzati da un numero significativo di potenziali superfici di attacco e di modelli di interazione, tutti da prendere in considerazione nel fornire un framework per la protezione dell'accesso digitale agli stessi. L'accesso digitale si riferisce alle operazioni eseguite tramite software e hardware anziché tramite l'accesso fisico diretto al dispositivo. Ad esempio, l'accesso fisico può essere controllato inserendo il dispositivo in una stanza con una serratura sulla porta. Nonostante non sia possibile negare l'accesso fisico usando software e hardware, è però possibile adottare misure preventive per far sì che l'accesso fisico non conduca a intromissioni nel sistema.

Durante l'esplorazione dei modelli di interazione, esaminare i dati del dispositivo e del controllo del dispositivo con lo stesso livello di attenzione. Il controllo dispositivo fa riferimento a tutte le informazioni fornite a un dispositivo con l'intenzione di modificarne il comportamento. I dati del dispositivo fanno riferimento a informazioni che un dispositivo emette a qualsiasi altra parte relativa allo stato e allo stato osservato del proprio ambiente.

Modellazione delle minacce per l'architettura di riferimento di Azure IoT

Questa sezione usa l'architettura di riferimento di Azure IoT per illustrare come considerare la modellazione delle minacce per IoT e come risolvere le minacce identificate:

Diagram that shows the Azure IoT reference architecture.

Il diagramma seguente fornisce una visualizzazione semplificata dell'architettura di riferimento usando un modello di diagramma del flusso di dati:

A data flow diagram derived from the Azure IoT reference architecture.

L'architettura separa le funzionalità gateway del dispositivo e del campo. Questo approccio consente di usare dispositivi gateway sul campo più sicuri. I dispositivi gateway sul campo possono comunicare con il gateway cloud usando protocolli sicuri, che in genere richiedono una potenza di elaborazione maggiore rispetto a un dispositivo semplice, ad esempio un termostato, può fornire autonomamente. Nella zona dei servizi di Azure nel diagramma il servizio hub IoT di Azure è il gateway cloud.

In base all'architettura descritta in precedenza, le sezioni seguenti illustrano alcuni esempi di modellazione delle minacce. Gli esempi si concentrano sugli elementi principali di un modello di minaccia:

  • Processi
  • Comunicazione
  • Storage

Processi

Ecco alcuni esempi di minacce nella categoria processi. Le minacce vengono classificate in base al modello STRIDE:

Spoofing: un utente malintenzionato può estrarre chiavi crittografiche da un dispositivo, a livello di software o hardware. L'attacco usa quindi queste chiavi per accedere al sistema da un dispositivo fisico o virtuale diverso usando l'identità del dispositivo originale.

Denial of Service: un dispositivo potrebbe essere messo fuori uso o reso incapace di comunicare tramite interferenza con le frequenze radio o taglio dei cavi. Ad esempio, una telecamera di sorveglianza che aveva la sua potenza o connessione di rete intenzionalmente non può segnalare i dati, a tutti.

Manomissione: un utente malintenzionato può sostituire parzialmente o completamente il software nel dispositivo. Se le chiavi crittografiche del dispositivo sono disponibili per il codice degli utenti malintenzionati, può quindi usare l'identità del dispositivo.

Manomissione: una telecamera di sorveglianza che mostra una foto dello spettro visibile di un corridoio vuoto potrebbe essere rivolta a una fotografia di tale corridoio. Un sensore di fumo o antincendio potrebbe segnalare una persona che tiene un accendino acceso al di sotto dello stesso. In entrambi i casi, è possibile che il dispositivo sia totalmente attendibile dal punto di vista tecnico nei confronti del sistema, ma segnali informazioni manipolate.

Manomissione: un utente malintenzionato può usare chiavi crittografiche estratte per intercettare e eliminare i dati inviati dal dispositivo e sostituirli con dati falsi autenticati con le chiavi rubate.

Diffusione di informazioni: se nel dispositivo viene eseguito un software manipolato, questo potrebbe potenzialmente far trapelare dati a parti non autorizzate.

Divulgazione di informazioni: un utente malintenzionato può usare chiavi crittografiche estratte per inserire codice nel percorso di comunicazione tra il gateway del dispositivo e del campo o il gateway cloud per disattivare le informazioni.

Denial of Service: il dispositivo può essere spento o disattivato in una modalità in cui la comunicazione non è possibile (intenzionale in molti computer industriali).

Manomissione: il dispositivo può essere riconfigurato in modo da operare in uno stato sconosciuto al sistema di controllo, al di fuori dei parametri di calibrazione noti, e quindi offrire dati che possono essere interpretati erroneamente.

Elevazione dei privilegi: è possibile forzare un dispositivo che esegue una funzione specifica a eseguire un'altra operazione. Ad esempio, una valvola che è programmata per aprirsi a metà può essere indotta ad aprirsi completamente.

Spoofing/Manomissione/Ripudio: se un dispositivo non è protetto, condizione che si verifica assai raramente con i telecomandi di consumo, un utente malintenzionato può manipolarne lo stato in maniera anonima. Una buona illustrazione è un telecomando che può spegnere qualsiasi TV.

La tabella seguente illustra le mitigazioni di esempio per queste minacce. I valori nella colonna delle minacce sono abbreviazioni:

  • Spoofing (S)
  • Manomissione (T)
  • Ripudio (R)
  • Divulgazione di informazioni (I)
  • Denial of Service (D)
  • Elevazione dei privilegi (E)
Componente Minaccia Strategia di riduzione del rischio Rischio Implementazione
Dispositivo S Assegnazione dell'identità al dispositivo e autenticazione del dispositivo Sostituzione del dispositivo o di parte dello stesso con un altro dispositivo Come sai che stai parlando con il dispositivo giusto? Autenticazione del dispositivo con Transport Layer Security (TLS) o IPSec. L'infrastruttura deve supportare l'uso della chiave precondivisa (PSK) in tali dispositivi che non possono gestire la crittografia asimmetrica completa. Usare Microsoft Entra ID, OAuth.
TRID Applicare meccanismi a prova di manomissione al dispositivo, ad esempio rendendo molto difficile, se non impossibile, estrarre chiavi e altro materiale crittografico dal dispositivo. Il rischio esiste se un utente sta manomettendo il dispositivo (intromissione fisica). Come si è certi che il dispositivo non sia stato manomesso. La mitigazione più efficace è un modulo TPM (Trusted Platform Module). Un TPM archivia le chiavi in circuiti speciali su chip da cui le chiavi non possono essere lette, ma possono essere usate solo per le operazioni di crittografia che usano la chiave. Crittografia della memoria del dispositivo. Gestione delle chiavi per il dispositivo. Firma del codice.
E Avere il controllo di accesso del dispositivo. Schema di autorizzazione. Se il dispositivo consente di eseguire singole azioni in base ai comandi da un'origine esterna o persino a sensori compromessi, l'attacco può eseguire operazioni non altrimenti accessibili. Avere uno schema di autorizzazione per il dispositivo.
Gateway sul campo S Autenticazione del gateway sul campo al gateway cloud (basata sul certificato, PSK o basata su attestazione). Se qualcuno riesce a effettuare lo spoofing del gateway sul campo, questo potrà presentarsi come qualsiasi dispositivo. TLS RSA/PSK, IPSec, RFC 4279. Tutti gli stessi principali problemi di archiviazione e attestazione dei dispositivi in generale: il miglior caso è l'uso di TPM. Estensione 6LowPAN per IPSec per supportare le reti WSN (Wireless Sensor Network).
TRID Proteggere il gateway sul campo da manomissioni (TPM) Gli attacchi di spoofing che ingannino il gateway cloud pensando che stia parlando con il gateway sul campo potrebbero causare la divulgazione di informazioni e manomissioni dei dati Crittografia della memoria, TPM, autenticazione.
E Meccanismo di controllo di accesso per il gateway sul campo

Comunicazione

Ecco alcuni esempi di minacce nella categoria di comunicazione. Le minacce vengono classificate in base al modello STRIDE:

Denial of Service: i dispositivi vincolati sono in genere sotto minaccia DoS quando restano attivamente in ascolto delle connessioni in ingresso o dei datagrammi non richiesti in una rete. Un utente malintenzionato può aprire molte connessioni in parallelo e non gestirle o gestirle lentamente o inondare il dispositivo con traffico non richiesto. In entrambi i casi, il dispositivo può essere effettivamente reso inutilizzabile sulla rete.

Spoofing, divulgazione di informazioni: i dispositivi vincolati e i dispositivi speciali hanno spesso funzionalità di sicurezza uno-per-tutte, ad esempio la protezione della password o del PIN. A volte si affidano completamente alla fiducia nella rete e concedere l'accesso alle informazioni a qualsiasi dispositivo si trova nella stessa rete. Se la rete è protetta da una chiave condivisa che viene divulgata, un utente malintenzionato può controllare il dispositivo o osservare i dati trasmessi.

Spoofing: un utente malintenzionato può intercettare o ignorare parzialmente la trasmissione e lo spoofing dell'originatore.

Manomissione: un utente malintenzionato può intercettare o ignorare parzialmente la trasmissione e inviare informazioni false.

Divulgazione di informazioni: un utente malintenzionato può intercettare una trasmissione e ottenere informazioni senza autorizzazione.

Denial of Service: un utente malintenzionato può bloccare il segnale di trasmissione e negare la distribuzione delle informazioni.

La tabella seguente illustra le mitigazioni di esempio per queste minacce:

Componente Minaccia Strategia di riduzione del rischio Rischio Implementazione
Dispositivo - Hub IoT TID (D)TLS (PSK/RSA) per crittografare il traffico Intercettazione o interferenza nella comunicazione tra il dispositivo e il gateway Sicurezza a livello di protocollo. Con i protocolli personalizzati, è necessario capire come proteggerli. Nella maggior parte dei casi, la comunicazione avviene dal dispositivo all'hub IoT (connessione avviata dal dispositivo).
Da dispositivo a dispositivo TID (D) TLS (PSK/RSA) per crittografare il traffico. Lettura dei dati in transito tra i dispositivi. Manomissione dei dati. Sovraccarico del dispositivo con nuove connessioni Sicurezza a livello di protocollo (MQTT/AMQP/HTTP/CoAP). Con i protocolli personalizzati, è necessario capire come proteggerli. La soluzione per la minaccia Denial of Service consiste nell'eseguire il peering dei dispositivi attraverso un gateway cloud o sul campo e far sì che agiscano solo da client verso la rete. Dopo che il gateway brokera il peering, potrebbe esserci una connessione diretta tra i peer.
Entità esterna - dispositivo TID Associazione complessa dell'entità esterna al dispositivo Intercettazione della connessione al dispositivo. Interferenza nella connessione al dispositivo Associazione sicura dell'entità esterna al dispositivo NFC/Bluetooth LE. Controllo del pannello operativo del dispositivo (fisico).
Gateway sul campo - Gateway cloud TID TLS (PSK/RSA) per crittografare il traffico. Intercettazione o interferenza nella comunicazione tra il dispositivo e il gateway Sicurezza a livello di protocollo (MQTT/AMQP/HTTP/CoAP). Con i protocolli personalizzati, è necessario capire come proteggerli.
Dispositivo - Gateway cloud TID TLS (PSK/RSA) per crittografare il traffico. Intercettazione o interferenza nella comunicazione tra il dispositivo e il gateway Sicurezza a livello di protocollo (MQTT/AMQP/HTTP/CoAP). Con i protocolli personalizzati, è necessario capire come proteggerli.

Storage

La tabella seguente illustra le mitigazioni di esempio per le minacce all'archiviazione:

Componente Minaccia Strategia di riduzione del rischio Rischio Implementazione
Archiviazione nel dispositivo TRID Crittografia di archiviazione, firma dei log Lettura dei dati dall'archiviazione, manomissione dei dati di telemetria. Manomissione dei dati di controllo del comando in coda o memorizzati nella cache. La manomissione di pacchetti di configurazione o aggiornamento del firmware memorizzati nella cache o in coda in locale può compromettere il sistema operativo e/o i componenti del sistema Crittografia, codice di autenticazione messaggi (MAC) o firma digitale. Laddove possibile, un controllo di accesso complesso attraverso elenchi di controllo di accesso (ACL) o autorizzazioni.
Immagine del sistema operativo del dispositivo TRID Manomissione del sistema operativo/sostituzione dei componenti del sistema operativo Partizione del sistema operativo di sola lettura, immagine del sistema operativo firmata, crittografia
Archiviazione Gateway sul campo (accodamento dei dati) TRID Crittografia di archiviazione, firma dei log Lettura dei dati dall'archiviazione, manomissione dei dati di telemetria, manomissione dei dati di controllo dei comandi in coda o memorizzati nella cache. La manomissione di pacchetti di configurazione o aggiornamento del firmware (destinati ai dispositivi o al gateway sul campo) memorizzati nella cache o in coda in locale può compromettere il sistema operativo e/o i componenti del sistema BitLocker
Immagine del sistema operativo Gateway sul campo TRID Manomissione del sistema operativo/sostituzione dei componenti del sistema operativo Partizione del sistema operativo di sola lettura, immagine del sistema operativo firmata, crittografia

Passaggi successivi

Per altre informazioni sulla sicurezza IoT, vedere: