Indietro

ⓘ Stuxnet




Stuxnet
                                     

ⓘ Stuxnet

Stuxnet è un virus informatico appositamente creato e diffuso dal Governo statunitense in collaborazione col governo israeliano. Lo scopo del software era il sabotaggio della centrale nucleare iraniana di Natanz. In particolare, il virus doveva disabilitare le centrifughe della centrale, impedendo la rilevazione dei malfunzionamenti e della presenza del virus stesso.

Stuxnet colpiva i PLC, componenti hardware programmabili via software fondamentali per lautomazione degli impianti della centrale, in particolare quelli adibiti al controllo delle centrifughe utilizzate per separare materiali nucleari come luranio arricchito. La caratteristica che ha colpito gli esperti fin dallinizio fu il livello di sofisticatezza di questo software, che dimostrava che chi aveva scritto il programma conosceva fin nei dettagli lambiente informatico in uso nelle centrali. Questo malware fra laltro faceva leva su quattro vulnerabilità di Windows ancora inedite 0-day allepoca per poi propagarsi verso il software Step7 della Siemens, informazioni che, secondo alcuni specialisti del settore, varrebbero sul mercato nero almeno un quarto di milione di dollari ciascuna.

In seguito allinfezione del virus nella centrale il programma si è diffuso al di fuori dallo stabilimento tramite un PC portatile infetto a causa di un errore di programmazione presente nel virus stesso, dato che Stuxnet poteva essere eseguito anche su più sistemi dotati di sistema SCADA e PLC, colpendo principalmente le aziende e quindi in seguito le relative nazioni tra cui il Giappone, US e in Europa da cui provenivano le attrezzature per il programma atomico iraniano venendo così scoperto e finendo poi sotto i riflettori dei media di tutto il mondo.

Nonostante la complessità dellarchitettura di Stuxnet, il virus è composto da tre grandi moduli: un worm che danneggia i PLC e permette al software di autoreplicarsi su altre macchine, un collegamento che mette in esecuzione le copie create dal worm e un rootkit che nascondeva il virus rendendolo non individuabile.

Linizio del contagio da parte di Stuxnet è probabilmente avvenuto dallinterno del sistema industriale stesso tramite una chiavetta USB infetta in mano a un ignaro ingegnere iraniano: il virus si è poi propagato via rete, cercando il software industriale Step7 realizzato dalla Siemens per controllare i PLC della centrale, modificandone il codice in modo da danneggiare il sistema facendo credere alloperatore che tutto funzionasse correttamente.

                                     

1. Storia

Il virus fu scoperto nel 2010 da Sergey Ulasen impiegato di VirusBlokAda, una società di sicurezza bielorussa. Ulasen fu chiamato dai gestori della centrale perché un tecnico aveva osservato un riavvio inaspettato di una macchina dopo un BSOD: dopo unanalisi, il tecnico bielorusso rilevò che tali anomalie si ripresentavano su più macchine e osservò comportamenti diversi tra i PC industriali differenze tra i PC che risulteranno infetti e quelli puliti. A seguito di test con macchine sane munite di un sistema di rilevamento collegate in rete, scoprì il tentativo di infezione.

Il nome attribuito al virus da VirusBlokAda fu "Rootkit.Tmphider"; Symantec lo chiamò "W32.Temphid", per poi passare a "W32.Stuxnet". Attualmente il suo nome è dato dalla combinazione di parole chiave particolarmente frequenti nel suo codice ".stub" e "mrxnet.sys".

La prima versione infettava le macchine tramite vulnerabilità non ancora note del sistema operativo Windows. Non si è trattato del primo attacco contro un sistema di controllo industriale, ma è stata la prima scoperta dellesistenza di un malware in grado di spiare, controllare e danneggiare un sistema industriale tramite lutilizzo di un rootkit per PLC.

Dalla notizia di questo sabotaggio, sono cresciute le preoccupazioni per uneventuale "Chernobyl iraniana".

La società Kaspersky Lab stimò che la diffusione del virus fosse incominciata tra i mesi di marzo e aprile del 2010, nonostante la prima versione del software potesse essere datata per il giugno 2009. Il worm infettava tutti i sistemi in rete ma si eseguiva solamente su coloro che erano dotati di sistemi SCADA modificando il codice del software Step7 che controllava i PLC della centrale.

Versioni successive del virus Stuxnet hanno colpito altre cinque organizzazioni iraniane, con lobiettivo di controllare e danneggiare la produzione iraniana di uranio arricchito. Lagenzia di sicurezza informatica Symantec ha valutato che nel 2010 il 60% dei computer infetti dal Stuxnet in tutto il mondo era in Iran. Symantec ha confermato che i suoi clienti non sono stati danneggiati dal worm, ma il sistema industriale iraniano dotato del software Step7 fu il bersaglio iniziale di Stuxnet.

Dato lelevato grado di complessità del software, dal fatto che esso doveva essere testato su sistemi reali con relative spese per lacquisto dei PLC, lazienda di sicurezza Kaspersky Lab ha confermato che lattacco deve aver sicuramente avuto un supporto da agenzie nazionali, considerazione sostenuta anche dalla F-Secure.

Il 25 novembre 2010, il canale televisivo del Regno Unito Sky News pubblicò un servizio fatto da una fonte anonima dove dichiarava che Stuxnet, o una sua variante, era venduto al mercato nero.

Nel febbraio 2011 il movimento di hacker Anonymous ha "trafugato" delle e-mail alla HBGary, contractor del governo USA. Una di queste e-mail era datata 28 luglio 2010, proveniva dalla McAfee e forniva allazienda una copia di Stuxnet. In seguito Crowdleaks ha decompilato parte di Stuxnet, il sorgente è ottenibile su github.com.

Nel maggio 2011, il programma televisivo statunitense Need To Know riporta un discorso dove Gary Samore afferma che il governo americano è grato che lo stato iraniano abbia avuto problemi con le centrifughe nucleari, facendo intendere un coinvolgimento USA nel progetto di Stuxnet. Successivamente tramite il The Daily Telegraph anche Israele ha fatto intendere il suo coinvolgimento.

Il primo di giugno 2012, un articolo del New York Times afferma che Stuxnet è stato il prodotto di una collaborazione tra USA e Israele la cui operazione prende il nome di "Operation Olympic Games", promossa dal governo Bush e proseguita con Obama.

Il 24 luglio 2012, un articolo di Chris Matyszczyk dellazienda CNET rivela come lagenzia iraniana per lenergia atomica inviò una mail a F-Secure dove si è scoperta una nuova versione di Stuxnet.

Il 25 dicembre 2012, una comunicazione semi ufficiale iraniana afferma che il virus Stuxnet ha colpito alcune industrie nella zona meridionale dellIran, tra cui una centrale elettrica.

Nel luglio 2013 Edward Snowden ha confermato che Stuxnet è stato progettato dalla NSA con la collaborazione dell"intelligence" israeliana, tramite un corpo speciale noto come Foreign Affairs Directorate FAD.

Il worm ha anche infettato un impianto nucleare russo, lesperto Eugene Kaspersky ha avvisato che fintanto gli impianti non vengono collegati alla rete pubblica non ci saranno rischi di infezione.

                                     

2. Modalità di funzionamento

Diversamente dalla maggior parte dei malware, Stuxnet è stato progettato per danneggiare solo quei sistemi dotati di particolari requisiti, rimanendo del tutto dormiente nei sistemi non interessati. In particolare il virus aggredisce solo i calcolatori dotati del software Siemens Step7, altrimenti il virus stesso è stato progettato per disattivarsi. Inoltre per evitare di venire scoperto il virus è stato dotato di un modulo che ne limita la diffusione da un PC a non più di altri tre, in più il virus è stato progettato per auto cancellarsi dopo il 24 giugno 2012.

Per i suoi scopi il virus è dotato della capacità di effettuare un attacco man in the middle usato per falsificare i dati forniti dai sensori industriali dopo la manomissione degli impianti, in modo da non insospettire i tecnici, facendo credere un funzionamento corretto del sistema. La complessità del software è molto elevata, a tal punto di essere in grado di sfruttare vulnerabilità di ben tre sistemi diversi: il sistema operativo Windows, il software di gestione dei PLC della Siemens PCS7, WinCC e Step7 e i PLC stessi.

                                     

2.1. Modalità di funzionamento Infezione di Windows

Stuxnet attaccò Windows sfruttando quattro bachi software del sistema operativo non ancora conosciuti 0-day oltre alla vulnerabilità nota come CPLINK e lutilizzo del worm Conficker. La fase iniziale dellattacco è avvenuta attraverso linfezione dei primi dispositivi tramite chiavette USB, per poi propagarsi e attivarsi attraverso la rete interna degli stabilimenti industriali tramite una rete peer to peer RPC così facendo è stato possibile infettare computer non connessi a Internet. Il numero di vulnerabilità 0-days utilizzate è inusuale, dato che al mercato nero ognuna di queste può valere un quarto di milione di dollari, per questo in genere un virus informatico non ne usa più di una. Alcune di queste vulnerabilità riguardano la condivisione delle stampanti, una vulnerabilità ora nota come LNK/PIF, nella quale un file viene eseguito se visualizzato su Internet Explorer evitando così lesecuzione diretta da parte dellutente. Stuxnet occupa circa mezzo MegaByte di memoria ed è stato scritto usando più di un linguaggio di programmazione, ciò fa pensare a uno sviluppo congiunto di più organizzazioni. Inoltre dopo aver infettato il sistema operativo il virus procede a infettare indiscriminatamente tutti gli altri sistemi sulla rete.

Stuxnet è in grado di lavorare sia in modalità utente sia amministratore nel sistema Windows, inoltre i suoi driver erano firmati con la chiave privata di due certificati rubati a due aziende conosciute e affidabili, JMicron e Realtek, entrambe situate a Hsinchu Science Park in Taiwan. Grazie a tali firme digitali i driver del virus sono stati in grado di installarsi nel kernel di Windows senza alzare alcun allarme. Dopo la scoperta del virus entrambi i certificati sono stati revocati da VeriSign.

Due siti web in Danimarca e Malaysia sono stati progettati per ricevere dati dal virus, al fine di fare spionaggio industriale. Dopo la scoperta del virus entrambi i siti sono stati bloccati.



                                     

2.2. Modalità di funzionamento Infezione del software Step 7

Grazie a una ricerca di Ralph Langner, una volta installato su Windows il virus cercava e infettava i progetti realizzati col software della Siemens WinCC/ PCS7 Step7 per sistemi SCADA, sostituendo una libreria chiave di WinCC s7otbxdx.dll. Con tale modifica è stato possibile intercettare lo scambio di messaggi tra Windows e i PLC collegati al sistema. Così facendo Stuxnet è stato in grado di installarsi sui PLC stessi senza generare campanelli di allarme. Inoltre linfezione su WinCC faceva in modo che un tentativo di lettura dei blocchi di codice sui PLC risultasse in un programma corretto e privo di infezioni.

Il virus usò una vulnerabilità 0-day di WinCC in sistemi SCADA che riguardava il modo in cui venivano memorizzate le password nel database.

                                     

2.3. Modalità di funzionamento Infezione dei PLC

Nonostante il codice completo del virus non fu mai rivelato si è certi che esso prendeva di mira quei sistemi SCADA configurati con particolari criteri specifici.

Stuxnet prevedeva la presenza di particolari convertitori di frequenza VDF per attaccare le macchine Siemens S7-300 e i moduli a esse collegate. In particolare il virus colpiva i PLC che avevano i convertitori di frequenza di due particolari case produttrici: Vacon con sede in Finlandia e Fararo Paya con sede in Iran. Inoltre il rootkit presente nel virus nascondeva il software malevolo e faceva credere agli operatori che i macchinari lavorassero sempre alle frequenze corrette.

                                     

3. Alias

Lalias di stuxnet è: roj/Stuxnet-A, W32/Stuxnet-B, W32. Temphid, WORM_STUXNET.A, Win32/Stuxnet.B, Trojan-Dropper:W32/Stuxnet, W32/Stuxnet.A, Rootkit.Win32.Stuxnet.b, Rootkit.Win32.Stuxnet.a.exet

                                     

4. Eliminazione

Siemens ha messo a disposizione uno strumento per il rilevamento e la rimozione degli Stuxnet. Richiede inoltre agli utenti di evitare lutilizzo di penne USB non sicure allinterno della rete anche successivamente alla rimozione del virus.

Lelevata capacità del virus di riprogrammare i PLC ha complicato la procedura di rimozione. Symantec ha avvisato che, dopo linfezione, rimuovere il virus da Windows non risolve completamente il problema, infatti è necessaria unulteriore analisi sui PLC interessati.

Siemens ha confermato che nei successivi quattro mesi dopo la scoperta del virus, Stuxnet è stato rimosso correttamente da 22 clienti senza causare danni agli impianti.

Uno strumento gratuito per la rimozione di Stuxnet era stato messo a disposizione da BitDefender sul suo sito dedicato MalwareCity.com.

                                     

5.1. Altri malware collegati Variante di Stuxnet

In un articolo del giornale Foreign Policy scritto nel novembre del 2013, si parla di una versione di Stuxnet precedente a quella normalmente conosciuta. Tale variante è risultata essere più aggressiva e complessa anchessa mirata a colpire le centrifughe della centrale iraniana di Natanz. A differenza della versione tradizionale di Stuxnet che puntava a diffondersi solo sulle macchine dotate del software Step7 e aveva lo scopo di sabotaggio e spionaggio, la versione precedente infettava in modo indiscriminato tutte le macchine e puntava soprattutto al puro sabotaggio delle centrifughe. Il metodo di sabotaggio prevedeva di aumentare il tasso di incidenti e danneggiamenti delle centrifughe nel tempo, attraverso laumento della frequenza di rotazione delle centrifughe stesse che provocava un aumento della pressione del gas. Tale tipo di strategia puntava quindi sul ridurre il tempo di vita dei macchinari, tale scelta potrebbe non aver avuto alcun impatto negativo sulle centrifughe, infatti spesso i progetti ingegneristici vengono sovradimensionati in termini di sicurezza, probabilmente per questo motivo è stata sviluppata successivamente la versione moderna di Stuxnet.



                                     

5.2. Altri malware collegati Duqu

Il 1 settembre 2011, un nuovo tipo di virus correlato a Stuxnet venne trovato. Scoperto dal Laboratorio di Crittografia e Sicurezza delluniversita di Budapest che analizzò il software chiamandolo Duqu. Lazienda di sicurezza informatica Symantec, continuò le analisi del virus identificandolo nella struttura e metodo di attacco come molto simile a Stuxnet ma realizzato per uno scopo completamente diverso. Lo scopo principale di Duqu era infatti quello di rubare informazioni come chiavi di accesso e dati aziendali sensibili. I dati rubati potevano essere anche riutilizzati per consentire altri attacchi simili in futuro.

Il 28 dicembre 2011, Costin Raiu direttore del laboratorio di ricerca e analisi di Kaspersky Lab attraverso lagenzia di stampa britannica Reuters ha svelato il forte legame tra Stuxnet e Duqu, nati entrambi nel 2007 e dotati di file che incominciavano con lo stesso simbolo ~d. Nellarticolo inoltre si cita lesistenza di altre tre varianti di virus che presentavano le stesse similitudini.

                                     

5.3. Altri malware collegati Flame

Nel maggio 2012, venne scoperto un nuovo virus chiamato Flame fortemente correlato con il noto Stuxnet perché sfruttava la stessa vulnerabilità di infezione via USB. Come detto da un esperto di Kaspersky Lab, il codice di Flame è risultato essere anche 20 volte più complesso di Stuxnet, presentando parti di codice scritto anche in linguaggi diversi e capace di auto-eliminarsi senza lasciare traccia del suo passaggio.