Anatomia di Stuxnet

Some videos dissecting the nature and ramifications of Stuxnet, the first weapon made entirely out of code.

Stuxnet

PLCLa storia di Stuxnet è da raccontare.

In breve, Stuxnet è un virus. Ma non è uno dei soliti, fabbricato da un lamer qualsiasi o da uno spammer professionale. E non è nemmeno una proof-of-concept, un virus creato per dimostrare che esiste una vulnerabilità e può essere sfruttata.

Stuxnet è stato rilevato già in Gennaio, ma solo nel Luglio 2010 si sono notate alcune sue caratteristiche non comuni e all’analisi di Symantec, è apparso subito come un prodotto un po’ particolare. Infatti, questo virus infetta i sistemi windows, ma non è interessato a un sistema qualsiasi. Lui cerca i sistemi di controllo industriale, genericamente noti come SCADA Systems.

Però questo tipo di sistemi, di solito, non risiede su macchine collegate ad internet o, se lo sono, si collegano solo a indirizzi ben precisi, spesso via VPN (reti private criptate e altamente sicure). Non si legge la mail e non si surfa tranquillamente su un computer che controlla, per es., una centrale elettrica. Non ci si infilano nemmeno USB key perché queste macchine sono costruite ad hoc con varie schede di I/O e non hanno le interfacce dei computer normali, ma solo quelle collegate ai sensori e agli attuatori di controllo. Spesso non hanno nemmeno tastiera e monitor (vedi immagine in alto a destra). Quindi, come può un virus installarsi in uno di questi computer?

Il fatto è che questi sistemi, chiamati Programmable Logic Controller (PLC), sono, in realtà, dei micro-computer in cui si deve caricare il programma che controllerà l’automazione di un processo industriale e questo programma viene creato tramite un sistema di sviluppo che gira su un computer windows. Quello che succede è che un programmatore prepara, su un emulatore windows, il codice destinato ad essere caricato nel PLC.

A questo punto è chiaro che, anche se il PLC non è collegato ad internet, un modo per infettarlo esiste. Consiste nel raggiungere il computer che ospita il sistema di sviluppo che serve a creare il software destinato al PLC e infettare proprio questo software. In tal modo, quando il programma sarà caricato nel PLC, anche il virus verrà caricato con lui.

Stuxnet cerca questo tipo di macchine, ma non tutte: se la prende soltanto con una specifica configurazione di software presente nei sistemi di controllo realizzati dalla Siemens. Per infettare le proprie vittime, usa un metodo d’infezione nuovo e originale che non richiede l’interazione dell’utente: basta che venga visualizzata la sua icona su un sistema Windows non aggiornato. Sfrutta ben quattro vulnerabilità prima sconosciute. Inoltre, è capace di rendersi invisibile a windows e di iniettarsi nei software creati per i PLC e rendersi invisibile anche in questi ultimi. Infine, contiene ben 70 blocchi cifrati che rimpiazzano alcune funzioni fondamentali di questi sistemi. Per impedire che venga scoperto, i suoi autori hanno rubato le firme digitali segrete di due fabbricanti di chip taiwanesi per usarle in Stuxnet e farlo sembrare software certificato.

Si tratta di uno spiegamento di forze pazzesco per un virus, anche per uno non banale. Quattro vulnerabilità prima sconosciute, blocchi di codice cifrato, sostituzione di funzioni fondamentali, firme digitali rubate indicano il possesso di conoscenze che vanno al di là di quelle di cui dispone un singolo hacker o cracker e fanno sospettare anche che le aziende produttrici di questi PLC abbiano fornito più di una informazione. Allora chi ha fatto uno sforzo di questo genere e perché?

Unl grafico di Symantec mostra che la distribuzione delle infezioni si concentra nell’Iran: quasi il 60% delle macchine colpite è in questo paese. Liam O’Murchu, della Symantec, ha detto alla BBC che

il fatto che vediamo così tante infezioni in più in Iran che in qualunque altro paese del mondo ci fa pensare che questa minaccia informatica era mirata all’Iran e che c’era qualcosa in Iran che aveva un valore molto, molto alto per chiunque l’abbia scritta

Ma l’analisi di Symantec è andata avanti, scoprendo che, anche quando Stuxnet ha trovato una macchina che risponde alla caratteristiche richieste e la infetta, non entra in azione sempre, ma fa, prima, altri controlli. Cerca un sistema con una data configurazione e che sia collegato a dei convertitori di frequenza fabbricati da due sole aziende, una delle quali è finlandese, mentre l’altra ha sede a Tehran, Iran.

Non solo. Il virus controlla anche che i convertitori lavorino a frequenze elevate, fra 807 e 1210 Hz. Gli impianti con componenti che richiedono tali frequenze non sono molti. Uno di questi è costituito dalle centrifughe utilizzate per l’arricchimento dell’uranio.

Un convertitore di frequenza è un dispositivo che può variare la propria frequenza di uscita, che controlla la velocità (il numero di giri) di un motore. Stuxnet può interferire con questo controllo e variare la velocità dei motori, sabotando, così, l’intero processo.

In conclusione, abbiamo un virus molto raffinato, che sfrutta conoscenze non facilmente ottenibili, usa modalità di infezione difficili da realizzare e prende di mira impianti con componenti comuni in Iran. Inoltre controlla che l’impianto in questione abbia caratteristiche tipiche degli impianti di arricchimento dell’uranio iraniani. Altre fonti nominano il reattore nucleare di Bushehr.

In effetti, la BBC ha scritto che secondo l’agenzia iraniana ufficiale IRNA, Stuxnet ha infettato i personal computer del personale presso la centrale nucleare di Bushehr, ma il sistema operativo della centrale non è stato danneggiato. Secondo Mahmoud Liay, responsabile del consiglio per l’informatica del ministero dell’industria iraniano, “è stata lanciata una guerra elettronica contro l’Iran” e gli indirizzi IP infetti in Iran sarebbero circa 30.000.

Da quanto possiamo vedere, stiamo probabilmente assistendo a uno dei primi casi noti pubblicamente di attacco informatico alle installazioni nucleari di un paese. Che cosa si sia voluto colpire non è chiarissimo, perché centrifughe a così alta velocità, in una centrale non dovrebbero essercene, ma in un impianto di arricchimento dell’uranio invece sì. È invece chiaro, dai numeri, che il virus era diretto principalmente all’Iran e ha potuto agire per circa un anno prima di essere analizzato a fondo.

Chi abbia messo in atto questo attacco, non è dato saperlo. Il codice del virus contiene un riferimento biblico che farebbe pensare a Israele. Si tratta della parola “Myrtus” che può essere letta come un’allusione al libro di Esther, nel Vecchio Testamento, dove si narra di come gli ebrei riescano a sventare un complotto persiano mirato a distruggerli.

Tuttavia, ci si chiede perché Israele avrebbe firmato un attacco di questo tipo e si può anche pensare che il suddetto riferimento sia stato piazzato a bella posta per depistare. D’altra parte, la megalomania dei soggetti che fanno lavori di questo tipo è nota e si traduce spesso nel lasciare un firma. Inoltre potrebbe trattarsi solo di una minaccia oppure una prova, per far sapere che si è in grado di farlo e quindi di fare anche di peggio…

Fonti: Symantec (rapporto completo in pdf); il Disinformatico, qui e qui.

Virus da tastiera

apple keyboardDopo una notizia interessante sul mondo Apple, ne arriva una un po’ inquietante, ma comunque divertente.

Le tastiere USB o Bluetooth di Apple sono infettabili da virus. Le tastiere, non il computer. Think different!

Il fatto è che le suddette tastiere contengono un firmware, cioè un piccolo software che risiede in una memoria flash di circa 8k (una memoria che non si cancella allo spegnimento, ma che può essere sovrascritta). Rimpiazzando questo software, si può alterare il comportamento della tastiera, permettendogli, per esempio, di registrare ciò che scrivete o anche di inviare autonomamente dei comandi alla macchina.

Il punto interessante è che la sostituzione del suddetto software può essere effettuata da remoto, come la stessa Apple fa. Quindi basta indurre l’utente a scaricare quello che lui crede essere un aggiornamento e il gioco è fatto.

Ovviamente, rispetto a tutti i virus che girano nel mondo windoze, si tratta di una banalità, ma ha almeno un aspetto inquietante: questo non è un virus normale. Potete anche rasare a zero l’hard disk, riformattare tutto e reinstallare il sistema da zero, ma lui resta sempre lì, perché vive nella tastiera, non nell’hard disk.

Dato che non ho un Mac, devo queste info al Disinformatico.

Sei un zombie?

Guardando l’ennesimo tentativo di attacco virale via mail (si spera fermato dall’antivirus) o diretto a una porta del computer (e bloccato dal firewall), oppure trovandosi con la macchina bloccata e impestata fino ai capelli, molti di voi si saranno chiesti “ma perché? chi ci guadagna in tutto questo giro di virus?”
Continue reading