Attacchi ai sistemi di controllo industriale e delle infrastrutture
Transcript
Attacchi ai sistemi di controllo industriale e delle infrastrutture
Attacchi ai sistemi di controllo industriale e delle infrastrutture Questi sistemi implicano, sempre più spesso, l’utilizzo di computer e reti di trasmissione dati. Ottimi obiettivi per i codici maligni. M.R.A. Bozzetti, OAI founder Da fine settembre 2010 è disponibile per la compilazione il questionario OAI online, che sarà alla base del prossimo Rapporto OAI 2010. Mi auguro che tutti i lettori di questa rubrica lo abbiano già compilato e/o fatto compilare (per i ritardatari segnalo l’indirizzo web del questionario: http://www.soiel.it/questionarioOAI2010/pagina1.html. La scadenza per la compilazione è stata comunque posticipata a dicembre 2010). Nuovi attacchi Essi avranno notato che, rispetto all’edizione 2009, nell’elenco dei possibili attacchi è stata aggiunta la voce “L’Azienda/Ente ha anche particolari sistemi ICT per il controllo dei processi di produzione quali robot, sistemi a controllo numerico, ecc.?” Il motivo è che tutti i sistemi di controllo e supervisione di impianti industriali e di infrastrutture fisiche sono ormai basati su computer e reti per la trasmissione dati, e come tali presentano le tipiche vulnerabilità e possono essere soggetti ad attacchi informatici. Si pensi ai sistemi robotizzati per la produzione di beni, i sistemi di controllo di edifici e di aree pubbliche quali aeroporti, stazioni, centri commerciali (controllo sicurezza fisica, riscaldamento e condizionamento, ecc.), gli impianti di generazione di energia, i sistemi di controllo di processi chimici, fino ad arrivare ai sistemi di controllo delle centrali nucleari. Attacchi a tali sistemi possono portare dal blocco dell’impianto controllato fino a disastri con forti impatti sull’ambiente, e possono costituire veri e propri atti di guerra informatica tra nazioni. 88 office automation novembre 2010 SCADA e DCS Questi sistemi di supervisione e controllo sono normalmente indicati con l’acronimo SCADA, Supervisory Control And Data Acquisition, e con quello di DCS, Distributed Control System; generalmente con il primo viene indicato il sistema di supervisione e coordinamento centralizzato, con il secondo i sistemi distribuiti di attuatori e di controlli in tempo reale. Tale distinzione non è ancora ben consolidata e ufficiale, ed entrambi i due termini vengono usati per indicare genericamente un sistema informatizzato di controllo e supervisione. Un sistema SCADA è costituito da dispositivi distribuiti, chiamati PLC, Programmable Logic Controller, che attuano e controllano localmente il funzionamento di un dispositivo, ad esempio una valvola, una saracinesca, un motore, ecc., e inviano dati a un sistema centrale di raccolta e di elaborazione tramite una rete di comunicazione. Fino a non molti anni fa tali sistemi si basavano su dispositivi ad hoc con relè. Ora sono tutti sistemi a microprocessore e la rete di comunicazione si basa su LAN e IP/TCP. Vari i protocolli usati, alcuni anche standard (IEC 608705-101 or 104, IEC 61850 and DNP3). Un primo elenco in http://en.wikipedia.org/wiki/Automation_protocols. Stuxnet È stato preveggente l’inserimento nel questionario della domanda sugli attacchi ai sistemi di controllo industriali. Scoperto a metà luglio, a settembre 2010 si è diffusa anche in Italia, prima negli ambienti degli addetti ai lavori poi anche sulla grande stampa quotidiana, l’annuncio di un nuovo codice maligno assai sofisticato, chiamato Stuxnet, che avrebbe attaccato la centrale nucleare iraniana di Bushehr e altre infrastrutture critiche in Cina, India, Indonesia, Pakistan. Stuxnet è identificato con diversi nomi negli elenchi forniti dalle varie società (Troj/Stuxnet-A [Sophos], W32/StuxnetB [Sophos], W32.Temphid [Symantec], WORM_STUXNET.A [Trend], Win32/Stuxnet.B [Computer Associates], Trojan-Dropper:W32/Stuxnet [F-Secure], Stuxnet [McAfee], W32/Stuxnet.A [Norman]) e con il riferimento CVE-2010-2568 dal Common Vulnerabilities and Exposures (http://cve.mitre.org/) già presentato in precedenti articoli di questa rubrica. Stuxnet è un codice maligno multicomponente tipo worm che infetta sistemi con sistema operativo Windows (dal vecchio Windows 95 a Windows Server 2003) e con i software della Siemens per l’automazione dei sistemi SCADA, il SIMATIC WinCC, l’applicativo che si interfaccia con il personale di controllo, e il PCS 7 che attua il controllo sui vari dispositivi. L’obiettivo del worm è prendere il totale controllo del sistema SCADA attaccato. Vulnerabilità zero-day Stuxnet ha sfruttato varie vulnerabilità zero-day, ossia vulnerabilità non ancora individuate dallo sviluppatore e/o per le quali non è ancora stato reso disponibile un programma di correzione. In particolare: • Microsoft Windows Shortcut ‘LNK/PIF’ Files Automatic File Execution Vulnerability (BID 41732) per replicarsi; • Microsoft Windows Server Service RPC Handling Remote Code Execution Vulnerability (BID 31874) per diffondersi; • Microsoft Windows Print Spooler Service Remote Code Execution Vulnerability (BID 43073) per diffondersi. Ulteriori caratteristiche del worm includono: • parti criptate con firme digitali; • capacità di copiarsi e andare in esecuzione su computer remoti grazie a reti condivise, al data base WinCC; • capacità di aggiornarsi in una LAN con meccanismi “peer-to-peer”; • capacità di bypassare prodotti di sicurezza; • un Windows rootkit per nascondere il proprio codice; • un rootkit per PLC per nascondere modifiche al programma operante su un determinato PLC. sedere gli schemi e conoscere bene come funziona. Il codice maligno deve poi essere configurato modularmente per attaccare lo specifico obiettivo. Per testare tale configurazione e personalizzazione è ragionevole ipotizzare che gli attaccanti debbano creare un sistema “mirror” di quello SCADA oggetto dell’attacco. Ne arriveranno altri Stuxnet è un codice complesso, e per la comprensione della sua struttura e di come funziona in dettaglio si rimanda ai whitepaper disponibili in Internet. In maniera molto schematica, l’infezione parte dall’inserimento di una chiavetta con il worm configurato in un pc di un sistema SCADA funzionante con il software Siemens sopra indicato. Quando su quel pc si attiva un browser per vedere icone e programmi, la copia del worm viene istanziata e prende il controllo del pc. Come un virus poi, tramite la rete del sistema SCADA, cerca di diffondersi negli altri pc e microprocessori protetti da password deboli, usando identificativi e password di default, fino a controllare l’intero sistema SCADA. Siemens ha messo a disposizione uno strumento per il rilevamento e la rimozione dei codici Stuxnet. Richiede inoltre agli utenti di evitare l’utilizzo di penne usb non sicure all’interno della rete anche successivamente alla rimozione del virus. La sofisticazione di Stuxnet e le sue capacità rappresentano un significativo esempio della realtà della cyber guerra e del cyber terrorismo. Ma rappresentano un rischio significativo anche per tutte le piccole e medie imprese manifatturiere italiane, che utilizzano diffusamente sistemi robotizzati e di controllo dei processi industriali. Stuxnet è il primo esempio “pubblico” di questo genere di attacchi informatici, cui presto seguiranno altri simili. È un segnale per le industrie manifatturiere di porre la dovuta attenzione e prevenzione a tali tipi di rischi, ormai tremendamente reali. Partecipa al nuovo rapporto OAI 2010 compilando online il questionario su http://www.soiel.it/questionarioOAI2010/pagina1.html Un attacco tramite Stuxnet richiede la conoscenza dell’intera struttura del sistema SCADA obiettivo: questo significa pos- novembre 2010 office automation 89