Cerca nel blog

lunedì 24 marzo 2025

Stuxnet spiegato: La prima cyberweapon nota

Che cosa è Stuxnet?

Stuxnet è un potente worm informatico progettato dall'intelligence statunitense e israeliana per disattivare una parte fondamentale del programma nucleare iraniano. Mirato a una struttura air-gapped, si è diffuso inaspettatamente ai sistemi informatici esterni, sollevando una serie di domande sulla sua progettazione e sul suo scopo.

Stuxnet ha sfruttato diversi Windows zero day precedentemente sconosciuti. Questa descrizione dovrebbe probabilmente chiarire che Stuxnet faceva parte di un'operazione di sabotaggio di alto livello condotta dagli stati nazionali contro i loro avversari.

Chi ha creato Stuxnet?

È ormai ampiamente accettato che Stuxnet sia stato creato dalle agenzie di intelligence degli Stati Uniti e di Israele. Stuxnet è stato identificato per la prima volta dalla comunità infosec nel 2010, ma lo sviluppo è probabilmente iniziato nel 2005. I governi degli Stati Uniti e di Israele intendevano Stuxnet come uno strumento per far deragliare, o almeno ritardare, il programma iraniano per sviluppare armi nucleari. Le amministrazioni Bush e Obama credevano che se l'Iran fosse stato sul punto di sviluppare armi atomiche, Israele avrebbe lanciato attacchi aerei contro le strutture nucleari iraniane in una mossa che avrebbe potuto scatenare una guerra regionale. L'operazione Olympic Games era vista come un'alternativa non violenta. Sebbene non fosse chiaro se un simile attacco informatico alle infrastrutture fisiche fosse possibile, ci fu un incontro drammatico nella Situation Room della Casa Bianca verso la fine della presidenza Bush durante il quale i pezzi di una centrifuga di prova distrutta furono sparsi su un tavolo da conferenza. Fu a quel punto che gli Stati Uniti diedero il via libera per scatenare il malware.

Il programma classificato per sviluppare il worm ha ricevuto il nome in codice "Operazione Giochi Olimpici "; è stato avviato sotto il presidente George W. Bush e continuato sotto il presidente Obama. Mentre nessuno dei due governi ha mai riconosciuto ufficialmente lo sviluppo di Stuxnet, un video del 2011 creato per celebrare il pensionamento del capo delle Forze di difesa israeliane Gabi Ashkenazi ha elencato Stuxnet come uno dei successi sotto la sua supervisione.

Sebbene i singoli ingegneri dietro Stuxnet non siano stati identificati, sappiamo che erano molto abili e che erano in molti. Roel Schouwenberg di Kaspersky Lab ha stimato che ci sono voluti due o tre anni a un team di dieci programmatori per creare il worm nella sua forma finale.

Diversi altri worm con capacità di infezione simili a Stuxnet, tra cui quelli soprannominati Duqu e Flame, sono stati identificati in natura, sebbene i loro scopi siano piuttosto diversi da quelli di Stuxnet. La loro somiglianza con Stuxnet porta gli esperti a credere che siano prodotti dello stesso laboratorio di sviluppo, che apparentemente è ancora attivo.

Cosa ha fatto Stuxnet?

Stuxnet è stato progettato per distruggere le centrifughe che l'Iran stava utilizzando per arricchire l'uranio come parte del suo programma nucleare. La maggior parte dell'uranio che si trova in natura è l'isotopo U-238; tuttavia, il materiale fissile utilizzato in una centrale nucleare o in un'arma deve essere ricavato dal leggermente più leggero U-235. Una centrifuga viene utilizzata per far girare l'uranio abbastanza velocemente da separare i diversi isotopi in base al peso tramite la forza centrifuga. Queste centrifughe sono estremamente delicate e non è raro che si danneggino durante il normale funzionamento.

Quando Stuxnet infetta un computer, verifica se il computer è connesso a specifici modelli di controllori logici programmabili (PLC) prodotti da Siemens. I PLC sono il modo in cui i computer interagiscono e controllano macchinari industriali come le centrifughe all'uranio. Se non vengono rilevati PLC, il worm non fa nulla; se vengono rilevati, Stuxnet altera la programmazione dei PLC, facendo girare le centrifughe in modo irregolare, danneggiandole o distruggendole nel processo. Mentre ciò accade, i PLC comunicano al computer del controllore (in modo errato) che tutto funziona correttamente, rendendo difficile rilevare o diagnosticare cosa non va finché non è troppo tardi.
Come funzionava Stuxnet?

Stuxnet attacca tutti i livelli della sua infrastruttura di destinazione: Windows, il software Siemens in esecuzione su Windows che controlla i PLC e il software incorporato nei PLC stessi. È progettato per essere distribuito tramite un'unità rimovibile come una chiavetta USB (si sapeva che l'impianto di Natanz dove avveniva l'arricchimento dell'uranio era isolato, con i suoi sistemi non connessi a Internet), ma anche per diffondersi rapidamente e indiscriminatamente da macchina a macchina su una rete interna.

Stuxnet include capacità di rootkit sia in modalità utente che kernel. Per installare il rootkit in modalità kernel, utilizza driver di dispositivo firmati digitalmente che utilizzano certificati di chiave privata rubati da due noti produttori di dispositivi taiwanesi.

Una volta preso il controllo dei PLC, Stuxnet ha variato la velocità di rotazione delle centrifughe mentre erano in funzione, in modo tale da danneggiarle e renderle inutilizzabili in breve tempo.

Quale vulnerabilità ha sfruttato Stuxnet?

Per infettare i PC Windows nella struttura di Natanz, Stuxnet ha sfruttato non meno di quattro bug zero-day (un difetto di Windows Shortcut, un bug nello spooler di stampa e due vulnerabilità di escalation dei privilegi), insieme a un difetto zero-day nei PLC Siemens e una vecchia falla già utilizzata nell'attacco Conficker. Il numero di vulnerabilità sfruttate è insolito, poiché in genere gli zero-day vengono rapidamente corretti in seguito a un attacco e quindi un hacker non vorrà rivelarne così tanti in un singolo attacco.

In quale linguaggio è stato scritto Stuxnet?

Sebbene i ricercatori di sicurezza non abbiano accesso al codice di Stuxnet, sono stati in grado di imparare molto studiandolo e hanno determinato che è stato scritto in più linguaggi , tra cui C, C++ e probabilmente diversi altri linguaggi orientati agli oggetti. Anche questo è insolito per il malware ed è un segno del livello di sofisticatezza coinvolto nella sua creazione.

Stuxnet ha avuto successo?

Il virus Stuxnet è riuscito nel suo obiettivo di interrompere il programma nucleare iraniano; un analista ha stimato che ha fatto regredire il programma di almeno due anni. I primi estranei a notare gli effetti del worm sono stati gli ispettori dell'Agenzia Internazionale per l'Energia Atomica (AIEA), a cui è stato consentito l'accesso all'impianto di Natanz. Parte del lavoro dell'AIEA era ispezionare le centrifughe danneggiate che venivano rimosse dall'impianto per assicurarsi che non venissero utilizzate per contrabbandare uranio in qualche altro impianto che non era sotto il radar della comunità internazionale. Come notato sopra, è tipico che le centrifughe vengano danneggiate come parte del processo di arricchimento dell'uranio; in un impianto delle dimensioni di Natanz, ci si potrebbe aspettare che circa 800 centrifughe all'anno vengano messe fuori servizio. Ma nel 2010, l'AIEA ha iniziato a notare un numero insolitamente alto di centrifughe danneggiate, con un ispettore che ha stimato che quasi 2.000 erano state rese inutilizzabili. Naturalmente, a quel tempo nessuno aveva idea che la causa fosse un malware informatico.

Come è stato scoperto Stuxnet?

Stuxnet è stato scoperto perché, inaspettatamente, si è diffuso oltre la struttura di Natanz. Come notato, Natanz era isolata e non è chiaro come Stuxnet sia uscito. Molti negli Stati Uniti credevano che la diffusione fosse il risultato di modifiche al codice apportate dagli israeliani; si diceva che l'allora vicepresidente Biden fosse particolarmente arrabbiato per questo. È anche possibile che sia sfuggito grazie alle scarse pratiche di sicurezza da parte degli iraniani a Natanz: potrebbe essere stato qualcosa di semplice come qualcuno che ha portato a casa un portatile da lavoro e lo ha collegato a Internet. Grazie alla natura sofisticata ed estremamente aggressiva del malware, ha quindi iniziato a diffondersi ad altri computer.

Stuxnet divenne presto noto alla comunità della sicurezza grazie a una chiamata al supporto tecnico. Un ufficio in Iran (non parte del programma nucleare) stava riscontrando misteriosi riavvii e schermate blu di errore, che stavano persino influenzando i computer con nuove installazioni del sistema operativo. L'esperto di sicurezza in loco, incapace di capirne la causa, contattò un suo amico, un bielorusso di nome Sergey Ulasen che lavorava per il fornitore di antivirus VirusBlokAda. Ulasen era a un ricevimento di nozze, ma passò la serata al telefono con il suo amico iraniano cercando di capire la causa del problema. Ulasen e il suo team riuscirono a isolare il malware e si resero conto di quanti zero-day stava sfruttando e cosa stavano affrontando. Iniziarono il processo di condivisione delle loro scoperte con la più ampia comunità della sicurezza.

Liam O'Murchu, direttore del gruppo Security Technology and Response di Symantec e membro del team che per primo ha svelato Stuxnet, afferma che Stuxnet era "di gran lunga il pezzo di codice più complesso che abbiamo mai esaminato, in una categoria completamente diversa da qualsiasi cosa avessimo mai visto prima". E mentre puoi trovare molti siti Web che affermano di avere il codice Stuxnet disponibile per il download, O'Murchu afferma che non dovresti crederci: ha sottolineato a CSO che il codice sorgente originale del worm, così come scritto dai programmatori che lavorano per l'intelligence statunitense e israeliana, non è stato rilasciato o fatto trapelare e non può essere estratto dai binari che sono sparsi in giro. (Il codice per un driver, una parte molto piccola del pacchetto complessivo, è stato ricostruito tramite reverse engineering, ma non è la stessa cosa che avere il codice originale.)

Tuttavia, ha spiegato che molto del codice potrebbe essere compreso esaminando il binario in azione e sottoponendolo a reverse engineering. Ad esempio, dice, "era abbastanza ovvio dalla prima volta che abbiamo analizzato questa app che stava cercando qualche apparecchiatura Siemens". Alla fine, dopo tre o sei mesi di reverse engineering , " siamo stati in grado di determinare, direi, il 99 percento di tutto ciò che accade nel codice", ha detto O'Murchu.

Ed è stata un'analisi approfondita del codice che alla fine ha rivelato lo scopo del malware. "Abbiamo potuto vedere nel codice che stava cercando otto o dieci array di 168 convertitori di frequenza ciascuno", afferma O'Murchu. "Si può leggere online la documentazione dell'International Atomic Energy Association su come ispezionare un impianto di arricchimento dell'uranio, e in quella documentazione specificano esattamente cosa vedresti nell'impianto di uranio: quanti convertitori di frequenza ci saranno, quante centrifughe ci saranno. Saranno disposti in otto array e ci saranno 168 centrifughe in ogni array. Questo è esattamente ciò che stavamo vedendo nel codice".

"Era molto emozionante aver fatto questa scoperta", ha aggiunto. "Ma poi ci siamo resi conto di cosa ci eravamo cacciati in testa, probabilmente un'operazione di spionaggio internazionale, e questo è stato piuttosto spaventoso". Symantec ha diffuso queste informazioni nel settembre del 2010; gli analisti che avevano avuto sentore dell'osservazione dell'AIEA sulle centrifughe iraniane danneggiate hanno iniziato a capire cosa stava succedendo.

Stuxnet esiste ancora?

Stuxnet non è scomparso, ma non è una minaccia importante per la sicurezza informatica oggi. Infatti, mentre Stuxnet ha fatto notizia per le sue capacità spettacolari e le sue origini clandestine, non è mai stato una minaccia per nessuno se non per la struttura di Natanz che era il suo obiettivo originale. Se il tuo computer è infetto da Stuxnet e non sei connesso a una centrifuga utilizzata per l'arricchimento dell'uranio, lo scenario peggiore è che potresti vedere riavvii e schermate blu di errore, come l'ufficio iraniano che ha portato il malware all'attenzione del mondo, ma a parte questo ti succederà poco o nessun danno.

Come prevenire Stuxnet

Detto questo, probabilmente non vuoi che i tuoi sistemi siano infettati da un potente malware sviluppato dalle agenzie di intelligence statunitensi e israeliane. Fortunatamente, le vulnerabilità zero-day sfruttate in origine da Stuxnet sono state da tempo corrette. Finché metti in pratica le basi di una buona igiene informatica, mantenendo aggiornati il ​​tuo sistema operativo e il software di sicurezza, non hai molto di cui preoccuparti. Ricorda, Stuxnet colpisce i PLC, quindi vorrai mantenere anche qualsiasi tecnologia operativa il più sicura possibile.

Perché Stuxnet è importante per la sicurezza informatica?

Se c'è una minaccia proveniente da Stuxnet, è una che emana dai suoi discendenti. Come abbiamo notato sopra, ci sono altre famiglie di malware che sembrano avere funzionalità derivate da Stuxnet; queste potrebbero provenire dalla stessa agenzia di intelligence, o potrebbero rappresentare hacker freelance che sono riusciti a fare reverse engineering di parte della potenza di Stuxnet. I ricercatori di sicurezza stanno ancora partendo da Stuxnet per scoprire nuove tecniche di attacco .

Ma al di là delle tecnologie specifiche, Stuxnet è significativo perché ha rappresentato la prima intrusione ampiamente riconosciuta di codice informatico nel mondo del conflitto internazionale, un'idea che in precedenza era stata nel regno della fantascienza cyberpunk. Nel decennio successivo, in particolare nel conflitto Russia-Ucraina , gli attacchi informatici sono stati accettati come parte dell'arsenale bellico.

Nessun commento:

Posta un commento

Gli hacker russi prendono di mira i siti web dello Stato rumeno il giorno delle elezioni

Un gruppo di hacktivisti legato alla Russia, noto come NoName057(16), ha rivendicato la responsabilità degli attacchi informatici su diversi...