Cyber-Physical Systems: Sicurezza e Differenze Tra Reti Industriali e Sistemi IT Tradizionali
Le reti industriali appartengono alla più vasta categoria dei cosiddetti Cyber-Physical Systems (CPS) che include, ad esempio: impianti e infrastrutture di produzione e distribuzione di energia elettrica (smart grid), acqua, gas, petrolio, raffinerie, impianti di trattamento acque e fabbriche intelligenti, infrastrutture di controllo e gestione dei trasporti terrestri, acquatici e aerei, fino al singolo veicolo (aereo, nave, treno o automobile). Quindi sistemi, mobili o immobili, con enormi differenze in termini innanzitutto di estensione, da migliaia di chilometri a qualche metro, da transnazionali a confinate in un capannone industriale.
Nonostante le differenze, vi sono sufficienti punti in comune da giustificare la classificazione unitaria in CPS.
In effetti, la dicitura cyber-physical racchiude la comunanza tra sistemi così eterogenei:
https://it.wikipedia.org/wiki/Sistema_ciberfisico: Un sistema ciberfisico o ciber-fisico (CPS, dall’inglese cyber-physical system) è un sistema informatico in grado di interagire in modo continuo con il sistema fisico in cui opera. Il sistema è composto da elementi fisici dotati ciascuno di capacità computazionale e riunisce strettamente le cosiddette “tre C”: capacità computazionale, comunicazione e capacità di controllo. Le strutture artificiali di calcolo e comunicazione, rappresentate dal prefisso “ciber”, formano un sistema distribuito che interagisce direttamente e dinamicamente con il mondo reale che le circonda. Alla base del sistema, il singolo elemento è il dispositivo embedded. Tra le possibili applicazioni: smart grid, controllo intelligente del traffico, domotica, robot cooperanti, telecomunicazioni, automobilismo, avionica, fabbriche intelligenti.
In particolare, la nozione di “sistema distribuito che interagisce direttamente e dinamicamente con il mondo reale che le circonda” è il fulcro di tutto ciò che concerne la security[1]: qualsiasi alterazione, accidentale o malevola, alle strutture di computazione, comunicazione o controllo (lato cyber), ha impatti diretti sul mondo reale (lato fisico), quindi sull’ambiente e, direttamente o indirettamente, sulle persone, cioè sul piano della safety1.
La prima peculiarità, dunque, che i sistemi CPS hanno rispetto agli IT (Information Technology) tradizionali è la connessione diretta col mondo fisico mediante la componente OT (Operational Technology): sensori, controllori e attuatori, che determina una connessione indissolubile tra security e safety, imponendo nuovi modelli per il calcolo del rischio e la quantificazione delle conseguenze.
La seconda peculiarità che accomuna i CPS è costituita da una serie di differenze che li distingue dai sistemi IT tradizionali. Si tratta dei loro requisiti funzionali e prestazionali, tre su tutti: determinismo, affidabilità (reliability) e disponibilità (availability), che potranno avere “scale” diverse per ciascuna tipologia di CPS ma che, con buona approssimazione, sono presenti in tutti.
In sostanza, nei CPS odierni coesistono e sono intercomunicanti le componenti IT e OT (Tabella 1): quindi la superficie di attacco è maggiore e le debolezze di una componente come le sue peculiarità, possono essere utilizzate per veicolare attacchi all’altra [1].
La restante parte del documento è organizzata come segue: un capitolo dedicato alle differenze tra i sistemi CPS e quelli tradizionali, a cui ne segue un secondo con esempi di sistemi CPS, per mostrare l’ampia varietà nel settore. A seguire, alcuni esempi di attacchi saliti alla ribalta mediatica, descritti con dovizia di particolari; poi una disamina delle tipologie di attacchi più frequenti ai CPS e relative contromisure. L’ultimo capitolo, che conclude la parte tecnica, riguarda la costruzione di un CPS sicuro da un punto di vista architetturale, con alcuni esempi mirati ; seguono le conclusioni e una bibliografia tematica.
IT | OT | |
Aggiornamenti SW e HW | Frequenti con poca o senza pianificazione | Pianificazione obbligatoria e su termini medio-lunghi |
Protocolli di comunicazione | TCP/IP e UDP: HTTP(S), (S)FTP, UDP, SMTP, SSH | Wired Fieldbus: DeviceNet, DNP3, BACnet, Modbus Wired Industrial Ethernet: Modbus-TCP, EtherCAT, Profinet, Ethernet/IP Wireless: WirelessHART, ZigBee, Bluetooth |
Applicazioni/task | Massimizzare il throughput | Real-time / determinismo |
Vita media degli apparati | 3-5 anni | Anche oltre i 20 anni |
Priorità di sicurezza | Confidentiality | Availability |
Meccanismi di sicurezza | Presenti | Raramente presenti |
Competenze in sicurezza | Elevate / molto elevate | Scarse / molto scarse |
Danni da cyberattack | Reputazione, informazioni, denaro | Beni materiali, ambientali e vite umane |
Costi indotti dai cyberattack | Stimabili | Difficilmente stimabili |
Tabella 1: Principali differenze tra sistemi IT e sistemi OT
Nomenclatura e differenze tra CPSs e sistemi IT tradizionali
Nomenclatura
Nella letteratura tecnico-scientifica coesistono moltissimi termini, acronimi e classificazioni per i sistemi CPS:
- Industrial Cyber Physical System (ICPS): sistema prettamente industriale. La specializzazione “industrial” non è rilevante ai fini della presente trattazione;
- Industrial Control System (ICS) e Distributed Control System (DCS) appartengono alla categoria dei CPS. In particolare, i DCS sono in stretta connessione a Internet e a servizi anche cloud;
- Critical Infrastructure (CI) è il sistema fisico a cui un CPS sovraintende;
- Industrial Wireless Sensor Network (IWSN) è un CPS dove la comunicazione wireless da/tra sensori è prevalente;
- Industrial Internet of Things (IIoT) è un sistema basato su Supervisory Control And Data Acquisition (SCADA).
Differenze tra i sistemi IT tradizionali e i sistemi CPS
Per i CPS si considera la componente OT, peculiare rispetto alla parte IT; e queste due componenti presentano profonde differenze che non possono essere ignorate quando si tratta di sicurezza. La Tabella 1 riassume alcuni aspetti principali che devono essere presi in considerazione con attenzione.
Come mostra la tabella, i sistemi IT e OT sono molto diversi dal punto di vista dell’architettura, della gestione e della manutenzione: queste differenze sono principalmente dovute al tipo di missioni che devono supportare. I sistemi OT, infatti, pongono numerosi vincoli (ad esempio, sui tempi massimi di reazione e sulla massima indisponibilità tollerabile per il sistema) che sono, invece, assenti o marginali nei sistemi IT.
IT | OT | ||
Priorità crescente | ⇑ | Confidentiality | Availability |
Integrity | Integrity | ||
Availability | Confidentiality |
Tabella 2: Priorità dei requisiti di sicurezza
IT | OT | |
Aggiornamenti SW e HW | Non critico | Critico |
Vincoli real-time | Non critico | Critico |
Conseguenze di attacchi/guasti | Non critico | Critico |
Prestazioni e consumi | Non critico | Critico |
Tabella 3: Criticità dei sistemi IT e OT
Inevitabilmente, ciò ha anche un impatto sulle alternative progettuali disponibili e influenza pesantemente le scelte per i componenti h/w e s/w. Ad esempio, i sistemi operativi e i protocolli di comunicazione su cui si basano i sistemi OT sono più interessati ad aspetti come l’elaborazione in tempo reale, la limitazione del jitter e la notifica degli eventi rispetto ai sistemi IT, mentre i dispositivi hanno architetture h/w più semplici e una potenza di calcolo generalmente inferiore .
Purtroppo, a causa di queste e altre peculiarità (Tabella 1), lo scenario di sicurezza è anche significativamente diverso nei due casi, come mostra la parte inferiore della tabella. Pertanto le popolari strategie e meccanismi sviluppati per proteggere i sistemi IT non sempre possono essere adottati nella maggior parte dei sistemi OT, che pongono quindi nuove sfide per la sicurezza delle informazioni.
In sintesi le più classiche proprietà di sicurezza sono contenute nell’acronimo CIA [2], [3]:
- Confidentiality (riservatezza): la garanzia che le informazioni non vengano rese disponibili o divulgate a persone, entità o processi non autorizzati.
- Integrity (integrità): la capacità di salvaguardare l’accuratezza e la completezza delle risorse;
- Availability (disponibilità): la capacità di essere accessibile e utilizzabile su richiesta da parte di altre entità;
Tali proprietà vanno soggette, nei due casi, a priorità inverse (Tabella 2) e le strategie di mitigazione devono tenere conto delle principali criticità dei sistemi OT rispetto a quelli IT (Tabella 3):
- La pratica diffusa di patching e aggiornamento h/w e s/w (un’attività di routine nel mondo IT che aiuta a far fronte alle nuove vulnerabilità man mano che vengono scoperte e conseguentemente sviluppate gli aggiornamenti software) di solito richiede che (parte del) sistema/impianto controllato sia temporaneamente reso inaccessibile. Nel mondo OT, sfortunatamente, questa azione deve spesso essere pianificata molto prima (anche settimane o mesi) rispetto al tempo programmato. In altre parole, il requisito di disponibilità difficilmente potrebbe essere compatibile con le attività di patching/upgrading
- I vincoli in tempo reale della maggior parte dei sistemi OT possono rendere difficile o addirittura impossibile eseguire azioni asincrone e/o sporadiche, come gli aggiornamenti dell’antivirus. Inoltre, l’adozione di firewall e filtri complessi comunemente utilizzati nei sistemi IT può introdurre ritardi imprevedibili o inaccettabili nelle reti di elaborazione e controllo.
- Le conseguenze dei fallimenti in sistemi IT sono generalmente limitate a perdite finanziarie e/o di reputazione, perché solo i dati (informazioni) necessitano di protezione. Questo aspetto è sicuramente importante anche per il mondo OT ma, in questo caso, i guasti possono anche causare danni all’ambiente gravi o catastrofici, insieme a danni alle persone e persino perdite di vite umane (Tabella 1). Ciò è dovuto principalmente alla stretta interdipendenza tra security e safety nel mondo OT. .
- Le prestazioni e la potenza sono fondamentali nel mondo OT, dove molti dispositivi di campo e di controllo hanno capacità di calcolo ridotte e/o disponibilità di energia limitata (ad esempio, dispositivi alimentati a batteria nelle reti di sensori). Ciò rende impraticabile, ad esempio, l’uso di sofisticati meccanismi di crittografia e protocolli di sicurezza che di solito richiedono ingenti risorse di calcolo e comunicazione.
A causa del complesso scenario così brevemente introdotto, il problema della messa in sicurezza di sistemi OT non può essere risolto semplicemente adottando le stesse tecniche sviluppate per il mondo IT, sebbene gli ingredienti di base che costruiscono l’intero processo possano essere gli stessi. Nella maggior parte dei casi, infatti, sono necessari adattamenti delle metodologie in uso nei sistemi IT, se non diverse soluzioni scientifiche e tecnologiche.
Tipologie di CPS
La Figura 1 illustra le caratteristiche dell’architettura di riferimento “tradizionale” e quella “smart” di Industry 4.0: da una struttura gerarchica, con confini e interfacce ben definite, si passa ad una struttura fortemente connessa, non più gerarchica, quindi certamente più fluida e flessibile (anche per quanto riguarda gli ingressi e le uscite di nodi, anche mobili, dal sistema) ma anche maggiormente esposta: connettività, flessibilità ed esposizione agli attacchi vanno di pari passo e quindi, a fronte dei vantaggi, occorre sempre attivamente predisporre contromisure per mitigare gli svantaggi.
Un elemento degno di particolare nota è che nella “visione” Industry 4.0 il cordone ombelicale tra la Smart Factory e lo Smart Product permane, ad esempio per manutenzioni programmate e non, statistiche di uso e funzionamento, ricambi, garanzia, riparazioni, aggiornamenti software e firmware dello Smart Product o dell’app che lo controlla/gestisce.
La Figura 1 riproduce lo schema astratto di un impianto industriale, ma alcuni tratti architetturali caratterizzanti saranno presenti anche in altri CPS: connessione a Internet, presenza di servizi cloud, elevato grado di connessione di rete tra gli elementi, sia wired che wireless, oltre ai vincoli funzionali e prestazionali già descritti.
Il medesimo grado di interconnessione si rileva anche in rappresentazioni meno astratte di CPS, come quello mostrato in Figura 2, dove è riconoscibile un ambiente industriale con le varie componenti e le loro interconnessioni funzionali e di comunicazione.
Esistono altre importanti declinazioni del concetto di CPS: ad esempio le Smart Grid, come schematizzato in Figura 3, dove lo scambio di informazioni tra i soggetti coinvolti riguarda sia il consumo che la produzione di energia, che oggi può avvenire in modo capillare sul territorio, dove la tradizionale figura di utente consumatore si è estesa anche a produttore. In tal caso la necessità di scambio di dati tra i vari attori è continua, non solo per consumo e produzione nei due sensi, con relativa tariffazione, ma anche per la gestione delle attività di manutenzione e degli allarmi di ciascuna installazione.
Un altro esempio di CPS (utile nel prosieguo) è quello di trattamento delle acque: che lega la gestione delle acque da trattare, le risorse necessarie al trattamento, la gestione dei flussi all’interno dell’impianto e le misurazioni automatiche dei parametri di qualità durante ciascuna fase del trattamento, come mostrato in Figura 4.
La Figura 5 mostra un ulteriore CPS appartenente all’ormai molto popolata categoria dei mezzi di trasporto, un tempo soltanto fisici e oggi con una componente cyber sempre in aumento, sia per la gestione intra-veicolo che inter-veicoli, nonché da/a altre infrastrutture, quali l’assistenza alla guida autonoma e i vari allarmi.
Questo articolo è stato estratto dal white paper “Industrial Cybersecurity” disponibile in maniera gratuita al seguente link: https://www.ictsecuritymagazine.com/pubblicazioni/industrial-cybersecurity/
Note
[1] Il termine sicurezza, quando inteso come difesa, verrà sempre utilizzato nella sua traduzione inglese security; mentre, quando inteso come incolumità, verrà sempre tradotto in safety.
Articolo a cura di Luca Durante
Luca Durante è Primo Ricercatore presso l’Istituto di Elettronica e Ingegneria dell’Informazione e delle Telecomunicazioni del Consiglio Nazionale delle Ricerche (CNR-IEIIT) di Torino.
Nel 1996 ha conseguito il Dottorato di Ricerca in Ingegneria Informatica presso il Politecnico di Torino, è autore di oltre 70 articoli per riviste e conferenze internazionali, ed è stato ed è tuttora Responsabile Scientifico per il CNR in Progetti Europei e in contratti di ricerca con aziende.
È stato inoltre general co-chair, program co-chair e membro del comitato di
programma di conferenze internazionali, associate editor di IEEE Transactions on Industrial Informaatics e revisore per riviste internazionali.
Gli interessi di ricerca vertono principalmente sulle tematiche di sicurezza
informatica, attualmente declinati sulle policy di sicurezza per il controllo di accessi e la sicurezza dei sistemi cyber-fisici.