Stuxnet: il virus che sconvolse il mondo

Stuxnet è stato uno dei virus informatici più distruttivi mai realizzati nella storia, nato da una collaborazione fra USA ed Israele.

speciale Stuxnet: il virus che sconvolse il mondo
INFORMAZIONI SCHEDA
Articolo a cura di

Il nome Stuxnet è entrato di diritto nella storia recente dell'informatica, per uno dei virus informatici più distruttivi mai realizzati. Frutto di una collaborazione nata nel 2006 fra gli Stati Uniti e lo stato di Israele, esso era indirizzato ad interferire col programma nucleare iraniano, poi riabilitato dalla dottrina Obama. La particolarità di Stuxnet era la sua capacità di danneggiare direttamente le strutture fisiche tramite dei drive USB infetti. Il primo bersaglio del virus è stato l'impianto di Natanz, e da qui è iniziata la sua diffusione; il codice malevolo è poi andato fuori controllo ed è arrivato su internet, rendendolo molto pericoloso. Sappiamo che l'infezione di Stuxnet è partita da cinque fornitori iraniani, di cui uno produceva componenti facenti parte delle centrali che il malware aveva messo nel mirino. Queste aziende erano ignare di essere in preda a dei trojan e, una volta infette, è stata solo una questione di tempo prima che la centrale di Natanz venisse colpita. Il bello è che quest'ultima non aveva accesso ad internet, e quindi il governo americano ha dovuto obbligatoriamente passare per la rete locale per dare inizio all'attacco.

Gli scopi e le fattezze del virus

Stuxnet aveva un peso di circa 500 kilobyte, in grado però di contenere tutto il codice malevolo per la diffusione e l'inibizione dei sistemi che gli capitavano a tiro. Il malware ha lavorato essenzialmente in tre fasi. Come abbiamo detto, la centrale di Natanz non era collegata ad internet, ma l'abilità di Stuxnet gli ha permesso di eludere la protezione attuata dal governo iraniano, consentendogli di colpire anche sistemi di controllo non in reti WAN. Questo perché esso si diffonde tramite una flash drive USB, che deve fisicamente essere inserita nel computer per avviare l'infezione. Impiegando la chiavetta su vari PC, ecco che l'infezione comincia a propagarsi. Oggigiorno, la maggior parte delle persone inserisce un drive in un computer senza preoccuparsi troppo di eventuali virus che questa può contenere, quindi è un metodo relativamente sicuro e poco sospettabile per iniettare codice malevolo.
Stuxnet mise a segno non uno, ma ben quattro exploit cosiddetti zero-day, cioè vulnerabilità non note alle società di sicurezza. La prima era relativa alla scorciatoia di un file di Windows, bug che ha consentito la diffusione tramite USB. La seconda invece riguardava lo spooler di stampa, cioè il sistema che memorizza le stampe degli utenti e le invia ad una stampante centrale. Questa soluzione è molto adottata nelle aziende, e chiaramente i computer devono essere legati da una LAN per essere efficace. Stuxnet sfruttò una falla che attanagliava proprio questo sistema, e tramite la stampante centrale riuscì a diffondersi attraverso tutti i computer collegati. Il terzo ed il quarto exploit invece sfruttavano un bug per garantirsi i privilegi nel sistema operativo, fattore che praticamente dava al virus il pieno controllo dei computer. Stuxnet era davvero ben progettato, oltre ad essere molto, molto sofisticato.

Il pericolo della condivisione

Era il 2012 quando il segretario alla difesa americano annunciò che Stuxnet era diventato di dominio pubblico, e che si era diffuso anche al di fuori delle centrali iraniane. Il virus era quindi in possesso di sconosciuti, che potevano sfruttare la sua potenza per gli scopi piu disparati. Stuxnet non avrebbe mai dovuto andare in mano a terzi, ma restare confinato nelle strutture in Iran.
La diffusione sembra essere cominciata nel 2010, quando una compagnia bielorussa specializzata nella rimozione di malware ricevette una richiesta di assistenza, che all'apparenza sembrava non troppo particolare: il cliente dichiarò che la propria macchina si riavviava di continuo e chiese alla società di cercare di capire il perché. Dopo le prime analisi, si scoprì che il virus aveva una firma certificata che gli consentiva di superare i controlli del sistema operativo senza troppi problemi, fatto che catturò l'attenzione dell'azienda bielorussa. Essa non fu infatti in grado di isolare il codice malevolo, in quanto i suoi sistemi di prevenzione automatica non riuscivano nemmeno ad identificarlo come tale. Ebbene, il malware era proprio Stuxnet.

Sin da quel momento, le aziende specializzate in sicurezza informatica unirono le loro forze per combattere Stuxnet, per tentare di progettare un muro che inibisse i suoi effetti. Kaspersky Lab fu la società che si mise in prima linea e guidò l'alleanza contro Stuxnet. Le aziende impegnate nella lotta cominciarono a scambiarsi informazioni circa quello che conoscevano sul virus. Una collaborazione così ferrata fra concorrenti nel mondo della security non era mai avvenuta prima di quel momento, ed era un chiaro segno dell'elevata soglia di paura generale che aleggiava nell'industria IT. Gli addetti ai lavori utilizzavano email e forum privati, mettendo l'information sharing al centro di tutto. Una delle strade più impiegate per cercare di porre un freno a Stuxnet fu quella delle tecniche di reverse engineering, secondo cui il codice fu analizzato dettagliatamente al fine di comprendere come creare un software che potesse contrastarlo. Si studiò a fondo il numero delle infezioni, come aveva fatto a penetrare la centrale nucleare di Natanz ed in che modo aveva manomesso i sistemi una volta all'interno.

Flame, il pre-Stuxnet

Kaspersky e le altre compagnie conclusero che il virus era troppo articolato e che costruire una versione che poteva contrastarlo avrebbe richiesto due o tre anni. Nel codice però si scovarono riferimenti che rimandavano alle strutture delle centrali iraniane, a conferma che i creatori avevano l'unico scopo di debilitare gli edifici nucleari del paese mediorientale. Nel frattempo, Kaspersky continuava chiaramente ad operare come società di sicurezza e ricevette altre richieste d'aiuto, compresa una dalla International Telecommunication Union, che invitava ad indagare sul caso di un malware che distruggeva i file di alcuni centrali di petrolio iraniane. Agli inizi, i ricercatori di Kaspersky la trattarono come una questione comune poiché, nonostante il fine potesse sembrare simile, il virus in questione non mostrava alcuna somiglianza con Stuxnet. Un po' di sospetto comunque rimase e, analizzando il codice più attentamente, si scoprirono tracce di un file chiamato Flame, che era una chiara variante di Stuxnet. Flame era di più, era proprio il suo precursore - seppur fosse grosso 20 Megabyte, quaranta volte più di Stuxnet - e i due non erano affatto indipendenti. Anche questo sembrava essere stato sponsorizzato dal governo di una qualche nazione. Flame non era però designato per distruggere impianti et similia, ma era semplicemente stato diffuso per spiare persone. Anch'esso procedeva con la stessa metodologia di Stuxnet per l'infezione, e cioè a mezzo di chiavette USB contagiate e di reti di stampa. Nonostante potesse sfruttare drive e l'interfaccia USB, Flame operò in un'altra maniera: esso era in grado di spacciarsi per un update di Windows 7, grazie a un falso certificato di autenticità, celando così la sua natura agli utenti.
Ad ogni modo, una volta che Flame bypassava le difese di un computer, esso faceva delle ricerche con keyword specifiche atte a trovare determinate informazioni in specifici documenti, il tutto senza essere scovato. I dati venivano inviati a poco a poco e non tutti in una volta, così che l'amministratore di sistema non potesse rilevare un utilizzo anomalo della banda di rete. Un'altra delle caratteristiche distintive di Flame era quella di comunicare e di scambiare file con i dispositivi Bluetooth vicini. Kaspersky ha impiegato una tecnica particolare per far fronte al virus, sfruttando una delle sue peculiarità. La società ha infatti fatto in modo di mettersi fra Flame ed il server a cui esso inviava le informazioni trafugate agli utenti, affinché il malware mandasse i dati al server di Kaspersky - il metodo è noto ed in gergo prende il nome di man-in-the-middle. Così facendo il virus fu isolato, ma non si riuscì comunque a risalire ai creatori tramite il loro server. I progettisti di virus di questa tipologia riescono bene a nascondersi e sanno come rimanere anonimi.

Gauss, Stuxnet ci riprova

Kaspersky creò un software per cercare algoritmi simili a quelli di Flame, che semplicemente tentava di individuare il suo codice ma su altre piattaforme oltre a quella Windows. E' così che fu scoperto Gauss, un'altra variante di Stuxnet. I suoi scopi erano legati alla sorveglianza di sospettati di cybercrimini, e poteva rubare password e file vari. Anch'esso era in grado di diffondersi tramite una chiavetta USB, come Flame e Stuxnet. Quando un drive veniva inserito in un computer infettato da Gauss, esso prendeva tutte le informazioni dal dispositivo introdotto e le trasferiva al server designato alla raccolta. Non appena Kaspersky mise in atto la stessa tecnica utilizzata con Flame, e cioè quella di deviare le informazioni presso i propri server e tentare di scovare il proprietario di quelli originali, i server di Gauss andarono offline. Probabilmente i suoi autori avevano il sospetto che qualcuno fosse riuscito a smascherare le proprie intenzioni e, per non essere identificati, sono ricorsi al metodo più semplice ed immediato. Gauss fu così bloccato, come con i suoi predecessori.

Stuxnet Chiunque sia stato dietro Stuxnet e Flame deve avere speso milioni di dollari per supportare gli sviluppi. Il problema è che questi due malware hanno generato solo caos su internet, ma non sono riusciti a raggiungere l’obiettivo di distruggere le strutture iraniane. Se quindi vi state chiedendo se i soldi investiti siano stati sprecati, allora la risposta è sì. I virus non hanno centrato lo scopo per cui sono stati progettati, ma hanno solo rallentato le ricerche in corso nelle centrali nucleari in Iran. Lavoro per altro inutile dopo l'apertura di Obama al nucleare iraniano. I cybercriminali più comuni hanno cominciato a copiare i due malware, poiché consci della loro potenza e desiderosi di porla al proprio cospetto per soddisfare le voglie più malsane. Ed è questo l’unico danno che Stuxnet e Flame hanno compiuto. Fortunatamente però i loro punti forti possono essere facilmente limitati grazie a tecniche di reverse engineering, che hanno posto un freno alla diffusioni di questi pericolosi virus.