I sistemi integrati sono spesso il fulcro di prodotti critici per la vita umana e la sicurezza e sono pertanto soggetti a una serie di normative e standard che ne disciplinano la sicurezza. I produttori li analizzano per identificare un'ampia gamma di potenziali pericoli derivanti, tra le altre cose, dalla scarsa affidabilità delle parti, errori da parte degli utenti, uso scorretto ed errori progettuali. L'aggiunta di una rete a tali dispositivi introduce tuttavia un nuovo rischio in termini di sicurezza.
La sicurezza dei sistemi integrati accessibili in remoto attraverso una rete rappresenta una sfida per molti produttori. Gli sviluppatori di sistemi integrati tradizionali non hanno familiarità con le tecnologie di sicurezza o la valutazione del rischio che un hacker possa sfruttare la vulnerabilità di un dispositivo. Sfortunatamente, la tecnologia informatica (IT) convenzionale non è di grande aiuto poiché gli esperti in questo campo non hanno familiarità con i sistemi di controllo integrati in tempo reale, la gestione del rischio di sicurezza o lo sviluppo di software regolamentati.
Un approccio
L'aggiunta del collegamento in rete ai sistemi integrati ne aumenta le possibilità rispetto alla stessa rete e, potenzialmente, rispetto a tutto ciò che vi è connesso. A tale proposito è stata sviluppata una serie di processi volti ad analizzare tali sistemi in modo efficiente e a favorire decisioni informate e intelligenti per contrastare le minacce di sicurezza. Il NIST (National Institute of Standards and Technology) ha pubblicato due di tali processi: SP-800-30 e SP-800-39.
L'analisi della sicurezza ha inizio con un modello di minaccia creato tramite il conteggio delle minacce, delle vulnerabilità e delle risorse dell'intero sistema. Per stabilire le decisioni da prendere, nel caso in cui siano richiesti maggiori controlli di sicurezza, e stabilire le parti del sistema più vulnerabili, viene adottato un approccio basato sul rischio. Il rischio di sicurezza viene in genere analizzato mediante la cosiddetta "Triade CIA": Confidentiality (riservatezza), ovvero garantire che l'accesso al sistema, dati compresi, avvenga solo mediante modalità definite; Integrity (integrità), ovvero garantire che il sistema sia modificato o manipolato solo mediante modalità definite; Availability (disponibilità), ovvero garantire che il sistema sia accessibile e funzionante in caso di necessità.
Un altro aspetto fondamentale per lo sviluppo di sistemi integrati sicuri è l'implementazione di un ciclo di sviluppo sicuro per una gestione del rischio continua. SP 800-39 di NIST e altri processi riconoscono l'importanza di stabilire dei requisiti di sicurezza fin dall'inizio del ciclo di vita del dispositivo. Ciò può significare aggiungere ai normali "casi di utilizzo" una serie di " casi di abuso" che documentino i potenziali tentativi di attacco da tenere in considerazione in fase di progettazione.
L'analisi del rischio e il processo decisionale devono continuare durante l'intero ciclo di vita. L'architettura hardware/software deve essere analizzata al fine di individuare eventuali punti deboli. Occorre mettere in atto controlli di sicurezza per attenuare le possibili vulnerabilità. Bisogna inoltre sviluppare strategie per l'analisi del codice e test basati sulla sicurezza, tra cui fuzz testing e penetration testing.
Quando si affrontano i rischi di sicurezza, è importante ricordare che non è possibile dimostrare che un dispositivo è sicuro. L'unica possibilità è innalzare il livello di protezione per minimizzare il rischio che gli attacchi più semplici vadano a segno. Di conseguenza, è importante sviluppare metodi di raccolta di informazioni dai dispositivi impiegati sul campo al fine di identificare vulnerabilità non rilevate in precedenza e mettere in atto meccanismi volti a sviluppare patch quando un nuovo problema supera la soglia del rischio.
Un esempio: i dispositivi medici
I problemi discussi in precedenza diventano particolarmente critici e urgenti nel caso dei dispositivi medici. La legge HITECH (Health Information Technology for Economic and Clinical Health) del 2009 ha incentivato l'uso di sistemi integrati per la registrazione dei dati clinici in formato elettronico, nonché l'integrazione di un'ampia gamma di dispositivi medici in tali sistemi.
I vantaggi offerti da tale integrazione sono ovvi: eliminazione di documenti cartacei ed errori di trascrizione, riduzione del carico di lavoro e monitoraggio continuo con funzioni di allerta, per citarne solo alcuni. I rischi possono al contrario non essere altrettanto palesi. Dal momento che i dispositivi medici elettronici integrati sono utilizzati per la raccolta di informazioni per le diagnosi (ad esempio, i monitor per posto letto) o per la somministrazione diretta di cure (come nel caso delle pompe da infusione), un errore nel funzionamento o l'utilizzo da parte di individui malintenzionati o incompetenti può danneggiare il paziente.
Come esempio specifico, consideriamo una pompa da infusione per posto letto progettata per somministrare un determinato flusso di farmaci a un paziente. Dosi eccessive o insufficienti possono essere pericolose o addirittura letali. In una recente relazione il gruppo di ricerca indipendente ECRI ha classificato gli errori derivanti dalle pompe da infusione come il secondo principale pericolo associato all'utilizzo della tecnologia in campo medico nell'anno 2014. Al fine di attenuare molti di tali rischi di sicurezza, ai dispositivi indipendenti sono state aggiunte diverse funzionalità sofisticate, tra cui allarmi locali per la segnalazione in caso di flusso eccessivo o insufficiente, blocco o necessità di ricarica.
Oltre agli allarmi locali, è stata aggiunta un'interfaccia di rete per trasmettere gli allarmi a una stazione infermieristica remota. Infine, per ridurre al minimo gli errori associati alla somministrazione del farmaco giusto, nelle dosi giuste e al paziente giusto, sono stati aggiunti prontuari farmaceutici, scanner di codici a barre e funzionalità di accesso remoto al peso e allo stato di trattamento farmacologico del paziente. Tornando alla Triade CIA, osserviamo alcuni problemi che i nuovi dispositivi collegati in rete si trovano ad affrontare.
Riservatezza
Una pompa da infusione conterrà dati quali il nome del paziente e il rispettivo identificatore (possibilmente l'ID della cartella clinica), nonché informazioni sul farmaco somministrato e il relativo dosaggio. Ai sensi delle leggi HIPAA sulla privacy, tali informazioni sono "informazioni sanitarie protette" (PHI, Protected Health Information) e devono pertanto essere mantenute riservate. Ovviamente, quando vengono inviate attraverso la rete, in entrambe le direzioni, devono essere adeguatamente crittografate. L'analisi deve inoltre essere estesa ai dati archiviati nel dispositivo, soprattutto quando la pompa viene rimossa da un paziente e conservata o utilizzata su un altro paziente.
Integrità
Garantire l'integrità della pompa implica l'analisi dei meccanismi che controllano l'accesso alla pompa da parte della rete. Le impostazioni di infusione che regolano la somministrazione del farmaco devono ovviamente essere protette e modificate solo attraverso procedure autorizzate. Analogamente, occorre proteggere anche il prontuario farmaceutico e il relativo processo di aggiornamento. I protocolli di accesso alle informazioni del paziente, tra cui peso e farmaci prescritti, devono essere progettati in modo da eliminare il rischio che la pompa riceva dati falsi. La fonte dei dati deve infine essere opportunamente autenticata, poiché l'immissione di peso, paziente o farmaco scorretto può danneggiare il paziente.
Un altro aspetto meno ovvio da tenere in considerazione è la sicurezza dello stesso software della pompa. Qualora un attacco sia in grado di modificare o sostituire il software del dispositivo, le protezioni integrate nel software legittimo sarebbero inutili. Occorre pertanto utilizzare meccanismi di autenticazione in grado di proteggere la funzionalità di patch/riprogrammazione. A tale scopo, è possibile aggiungere opzioni hardware a basso costo, come Trusted Platform Module2 (TPM), il quale offre una conferma estremamente affidabile dell'integrità del software durante il processo di avvio.
Disponibilità
Per quanto riguarda la disponibilità, occorre garantire che la pompa continui a funzionare normalmente anche quando un agente malintenzionato interferisce con la connessione alla rete. Sebbene un attacco alla rete di tipo "denial of service" (diniego di servizi) possa interferire sulla capacità di utilizzare la pompa su un altro paziente o con un altro farmaco, un progetto efficiente dovrebbe comunque essere in grado di eliminare la dipendenza dalla rete per quanto riguarda il normale funzionamento del dispositivo. Qualora la rete sia utilizzata per la segnalazione di allarmi remoti, è possibile fornire avvisi attraverso il dispositivo nel caso in cui non sia possibile mantenere una connessione protetta con il sistema di gestione degli allarmi a valle.
Conclusione
Come dimostrato da questo studio, quando un dispositivo elettronico integrato viene connesso a una rete, la sicurezza diviene un aspetto fondamentale da considerare. Allo stesso tempo, la connessione alla rete aumenta notevolmente la complessità del sistema. Fortunatamente, sono disponibili processi e procedure (tra cui l'esempio NIST citato in precedenza) in grado di fornire una metodologia formale per la valutazione dei rischi di sicurezza insiti in un sistema e la prioritizzazione delle misure di attenuazione di tali rischi.