Ralph Langner: Cracking Stuxnet, a 21st-century cyber weapon

311,149 views ・ 2011-03-29

TED


Fare doppio clic sui sottotitoli in inglese per riprodurre il video.

Traduttore: Mattia Belluco Revisore: Gianluca Finocchiaro
00:15
The idea behind the Stuxnet computer worm
0
15260
3000
L'idea dietro il worm Stuxnet
00:18
is actually quite simple.
1
18260
2000
è in realtà abbastanza semplice.
00:20
We don't want Iran to get the bomb.
2
20260
3000
Non vogliamo che l'Iran possegga la Bomba.
00:23
Their major asset for developing nuclear weapons
3
23260
3000
La loro risorsa principale per sviluppare armi nucleari
00:26
is the Natanz uranium enrichment facility.
4
26260
4000
è l'impianto di arricchimento dell'uranio di Natanz.
00:30
The gray boxes that you see,
5
30260
2000
Le scatole grigie che vedete,
00:32
these are real-time control systems.
6
32260
3000
queste sono sistemi di controllo in real-time.
00:35
Now if we manage to compromise these systems
7
35260
3000
Ora se riusciamo a compromettere questi sistemi
00:38
that control drive speeds and valves,
8
38260
3000
che controllano le velocità e le valvole
00:41
we can actually cause a lot of problems
9
41260
3000
possiamo creare un sacco di problemi
00:44
with the centrifuge.
10
44260
2000
alla centrifuga.
00:46
The gray boxes don't run Windows software;
11
46260
2000
Sulle scatole grigie non gira Windows
00:48
they are a completely different technology.
12
48260
3000
hanno una tecnologia completamente diversa.
00:51
But if we manage
13
51260
2000
Ma se riusciamo
00:53
to place a good Windows virus
14
53260
3000
a piazzare un buon virus per Windows
00:56
on a notebook
15
56260
2000
su un portatile
00:58
that is used by a maintenance engineer
16
58260
2000
che viene usato da un ingegnere della manutenzione
01:00
to configure this gray box,
17
60260
3000
per configurare questa scatola grigia
01:03
then we are in business.
18
63260
2000
allora siamo a cavallo.
01:05
And this is the plot behind Stuxnet.
19
65260
3000
E questo è lo schema dietro Stuxnet.
01:08
So we start with a Windows dropper.
20
68260
5000
Perciò cominciamo con un dropper per Windows
01:13
The payload goes onto the gray box,
21
73260
3000
Il carico viene messo dentro la scatola grigia
01:16
damages the centrifuge,
22
76260
2000
danneggia la centrifuga
01:18
and the Iranian nuclear program is delayed --
23
78260
2000
e il programma nucleare Iraniano viene rallentato --
01:20
mission accomplished.
24
80260
2000
missione compiuta.
01:22
That's easy, huh?
25
82260
2000
Facile, no?
01:24
I want to tell you how we found that out.
26
84260
3000
Vi voglio dire come abbiamo scoperto queste cose.
01:27
When we started our research on Stuxnet six months ago,
27
87260
3000
Quando abbiamo iniziato le nostre ricerche su Stuxnet sei mesi fa,
01:30
it was completely unknown what the purpose of this thing was.
28
90260
3000
non si sapeva quale fosse lo scopo di questa cosa.
01:33
The only thing that was known
29
93260
2000
La sola cosa che si sapeva
01:35
is it's very, very complex on the Windows part, the dropper part,
30
95260
3000
è che la parte di Windows, la parte del dropper, era molto molto complessa
01:38
used multiple zero-day vulnerabilities.
31
98260
3000
usava parecchie vulnerabilità zero day
01:41
And it seemed to want to do something
32
101260
3000
E sembrava voler fare qualcosa
01:44
with these gray boxes, these real-time control systems.
33
104260
2000
con queste scatole grigie, questi sistemi di controllo in real-time
01:46
So that got our attention,
34
106260
2000
Questo ha attratto la nostra attenzione
01:48
and we started a lab project
35
108260
2000
e abbiamo dato il via ad un progetto
01:50
where we infected our environment with Stuxnet
36
110260
4000
dove abbiamo infettato la nostra rete con Stuxnet
01:54
and checked this thing out.
37
114260
2000
e tenuto d'occhio questa cosa.
01:56
And then some very funny things happened.
38
116260
3000
E sono successe alcune cose molto divertenti.
01:59
Stuxnet behaved like a lab rat
39
119260
3000
Stuxnet si comportava come un topo di laboratorio
02:02
that didn't like our cheese --
40
122260
3000
a cui non piaceva il nostro formaggio --
02:05
sniffed, but didn't want to eat.
41
125260
2000
annusava ma non voleva mangiare.
02:07
Didn't make sense to me.
42
127260
2000
Per me non aveva senso.
02:09
And after we experimented with different flavors of cheese,
43
129260
3000
E dopo aver sperimentato con diversi tipi di formaggio,
02:12
I realized, well, this is a directed attack.
44
132260
4000
ho realizzato che questo è un attacco diretto.
02:16
It's completely directed.
45
136260
2000
Completamente direzionato
02:18
The dropper is prowling actively
46
138260
2000
Il dropper va attivamente a caccia
02:20
on the gray box
47
140260
2000
sulla scatola grigia
02:22
if a specific configuration is found,
48
142260
3000
di una configurazione specifica,
02:25
and even if the actual program code that it's trying to infect
49
145260
4000
e persino se il programma che stà cercando di infettare
02:29
is actually running on that target.
50
149260
2000
è in esecuzione sul bersaglio.
02:31
And if not, Stuxnet does nothing.
51
151260
3000
Altrimenti Stuxnet non fa nulla.
02:34
So that really got my attention,
52
154260
2000
Questo fatto ha attirato la mia attenzione,
02:36
and we started to work on this
53
156260
2000
e abbiamo cominciato a lavorarci su
02:38
nearly around the clock,
54
158260
2000
quasi giorno e notte,
02:40
because I thought, "Well, we don't know what the target is.
55
160260
3000
perchè pensavo che non sapevamo quale fosse il bersaglio.
02:43
It could be, let's say for example,
56
163260
2000
Avrebbe potuto essere, per esempio,
02:45
a U.S. power plant,
57
165260
2000
una centrale elettrica statunitense,
02:47
or a chemical plant in Germany.
58
167260
2000
o una fabbrica di prodotti chimici in Germania.
02:49
So we better find out what the target is soon."
59
169260
3000
Perciò avremmo fatto meglio a scoprire in fretta qual'era il bersaglio
02:52
So we extracted and decompiled
60
172260
2000
quindi abbiamo estratto e decompilato
02:54
the attack code,
61
174260
2000
il codice di attacco
02:56
and we discovered that it's structured in two digital bombs --
62
176260
3000
e abbiamo scoperto che è strutturato in due bombe digitali
02:59
a smaller one and a bigger one.
63
179260
3000
una piccola ed una grande
03:02
And we also saw that they are very professionally engineered
64
182260
4000
e abbiamo visto, inoltre, che erano disegnate in maniera professionale
03:06
by people who obviously had all insider information.
65
186260
4000
da persone che chiaramente avevano tutte le informazioni di un addetto ai lavori
03:10
They knew all the bits and bites
66
190260
2000
Conoscevano tutte le minuzie
03:12
that they had to attack.
67
192260
2000
di ciò che dovevano attaccare.
03:14
They probably even know the shoe size of the operator.
68
194260
3000
Probabilmente sapevano anche la taglia di scarpe del tecnico.
03:17
So they know everything.
69
197260
2000
Sapevano tutto
03:19
And if you have heard that the dropper of Stuxnet
70
199260
3000
E se avete sentito che il dropper di Stuxnet
03:22
is complex and high-tech,
71
202260
2000
è complesso ed avanzatissimo
03:24
let me tell you this:
72
204260
2000
lasciate che vi dica questo:
03:26
the payload is rocket science.
73
206260
2000
il carico é fantascientifico.
03:28
It's way above everything
74
208260
2000
è ben al di là di tutto
03:30
that we have ever seen before.
75
210260
3000
quello che abbiamo visto finora
03:33
Here you see a sample of this actual attack code.
76
213260
3000
Ecco, questo è un estratto di questo codice d'attacco.
03:36
We are talking about --
77
216260
2000
Stiamo parlando di --
03:38
around about 15,000 lines of code.
78
218260
3000
circa 15 mila linee di codice.
03:41
Looks pretty much like old-style assembly language.
79
221260
3000
Assomiglia molto a un linguaggio assembly vecchio stile
03:44
And I want to tell you how we were able
80
224260
2000
Voglio dirvi come abbiamo fatto
03:46
to make sense out of this code.
81
226260
2000
a comprendere questo codice.
03:48
So what we were looking for is, first of all, system function calls,
82
228260
3000
Quello che stavamo cercando erano prima di tutto delle chiamate di sistema,
03:51
because we know what they do.
83
231260
2000
perchè sappiamo cosa fanno.
03:53
And then we were looking for timers and data structures
84
233260
4000
E poi cercavamo dei timer e delle strutture di dati
03:57
and trying to relate them to the real world --
85
237260
2000
e cercavamo di relazionarle al mondo reale --
03:59
to potential real world targets.
86
239260
2000
a potenziali bersagli.
04:01
So we do need target theories
87
241260
3000
Perciò avevamo bisogno di teorie sul bersaglio
04:04
that we can prove or disprove.
88
244260
3000
che potessimo verificare o confutare.
04:07
In order to get target theories,
89
247260
2000
Per formulare delle teorie sul possibile bersaglio
04:09
we remember
90
249260
2000
ci siamo ricordati
04:11
that it's definitely hardcore sabotage,
91
251260
2000
che era un sabotaggio veramente hardcore
04:13
it must be a high-value target
92
253260
2000
doveva essere un bersaglio di gran valore,
04:15
and it is most likely located in Iran,
93
255260
3000
e doveva essere molto probabilmente situato in Iran,
04:18
because that's where most of the infections had been reported.
94
258260
4000
perché quello è il luogo dove sono state segnalate il maggior numero di infezioni.
04:22
Now you don't find several thousand targets in that area.
95
262260
3000
Ora non ci sono diverse migliaia di bersagli in quella zona.
04:25
It basically boils down
96
265260
2000
Praticamente ci si riduce
04:27
to the Bushehr nuclear power plant
97
267260
2000
alla centrale elettrica di Bushehr
04:29
and to the Natanz fuel enrichment plant.
98
269260
2000
e alla centrale di arricchimento di Natanz.
04:31
So I told my assistant,
99
271260
2000
Perciò ho detto al mio assistente.
04:33
"Get me a list of all centrifuge and power plant experts from our client base."
100
273260
3000
"Estrai una lista di tutti gli esperti di centrifughe e centrali elettriche dal nostro archivio clienti."
04:36
And I phoned them up and picked their brain
101
276260
2000
E li ho chiamati e ho sfruttato la loro conoscenza
04:38
in an effort to match their expertise
102
278260
2000
nel tentativo di combinare le loro conoscenze
04:40
with what we found in code and data.
103
280260
3000
con quello che avevamo trovato nel codice e nei dati.
04:43
And that worked pretty well.
104
283260
2000
E questo espediente ha funzionato piuttosto bene.
04:45
So we were able to associate
105
285260
2000
Quindi eravamo in grado di associare
04:47
the small digital warhead
106
287260
2000
la piccola testata digitale
04:49
with the rotor control.
107
289260
2000
al controllo del rotore.
04:51
The rotor is that moving part within the centrifuge,
108
291260
3000
Il rotore e la parte mobile all'interno della centrifuga,
04:54
that black object that you see.
109
294260
2000
quell oggetto nero che vedete.
04:56
And if you manipulate the speed of this rotor,
110
296260
3000
E se manipolate la velocità di questo rotore,
04:59
you are actually able to crack the rotor
111
299260
2000
siete in grado di romperlo
05:01
and eventually even have the centrifuge explode.
112
301260
4000
e anche eventualmente di far esplodere la centrifuga.
05:05
What we also saw
113
305260
2000
Quello che abbiamo anche scoperto
05:07
is that the goal of the attack
114
307260
2000
è che l'obiettivo dell'attacco
05:09
was really to do it slowly and creepy --
115
309260
3000
era di farlo molto lentamente e in modo subdolo --
05:12
obviously in an effort
116
312260
2000
ovviamente nel tentativo
05:14
to drive maintenance engineers crazy,
117
314260
3000
di far impazzire gli addetti alla manuntenzione,
05:17
that they would not be able to figure this out quickly.
118
317260
3000
che non sarebbero riusciti a risolvere il problema velocemente.
05:20
The big digital warhead -- we had a shot at this
119
320260
3000
La testata digitale grande -- ci siamo cimentati con questa
05:23
by looking very closely
120
323260
2000
guardando molto da vicino
05:25
at data and data structures.
121
325260
2000
i dati e le strutture di dati.
05:27
So for example, the number 164
122
327260
2000
Perciò per esempio il numero 164
05:29
really stands out in that code;
123
329260
2000
si staglia nel codice
05:31
you can't overlook it.
124
331260
2000
non lo si può ignorare
05:33
I started to research scientific literature
125
333260
2000
Ho cominciato a cercare articoli scientifici
05:35
on how these centrifuges
126
335260
2000
su come queste centrifughe
05:37
are actually built in Natanz
127
337260
2000
siano di fatto costruite a Natanz
05:39
and found they are structured
128
339260
2000
e ho scoperto che sono strutturate
05:41
in what is called a cascade,
129
341260
2000
in ciò che è chiamata una cascata,
05:43
and each cascade holds 164 centrifuges.
130
343260
4000
e ogni cascata contiene 164 centrifughe.
05:47
So that made sense, that was a match.
131
347260
2000
Aveva senso, c'era una corrispondenza.
05:49
And it even got better.
132
349260
2000
E andava anche meglio.
05:51
These centrifuges in Iran
133
351260
2000
Queste centrifughe in Iran
05:53
are subdivided into 15, what is called, stages.
134
353260
4000
sono suddivise in 15 livelli.
05:57
And guess what we found in the attack code?
135
357260
2000
E indovinate cosa abbiamo trovato nel codice d'attacco?
05:59
An almost identical structure.
136
359260
2000
Una struttura quasi identica.
06:01
So again, that was a real good match.
137
361260
3000
Perciò di nuovo, c'era una corrispondenza molto buona.
06:04
And this gave us very high confidence for what we were looking at.
138
364260
3000
E questo ci ha dato una grande sicurezza su quello che stavamo cercando.
06:07
Now don't get me wrong here, it didn't go like this.
139
367260
3000
Adesso non fraintendetemi, non è andata così.
06:10
These results have been obtained
140
370260
3000
Questi risultati sono stati ottenuti
06:13
over several weeks of really hard labor.
141
373260
3000
dopo parecchie settimane di lavoro molto duro.
06:16
And we often went into just a dead end
142
376260
3000
E spesso ci siamo trovati in un vicolo cieco
06:19
and had to recover.
143
379260
2000
e abbiamo dovuto ricominciare.
06:21
Anyway, so we figured out
144
381260
2000
Ad ogni modo abbiamo capito
06:23
that both digital warheads
145
383260
2000
che entrambe le testate digitali
06:25
were actually aiming at one and the same target,
146
385260
2000
erano dirette allo stesso bersaglio
06:27
but from different angles.
147
387260
2000
ma da angoli diversi.
06:29
The small warhead is taking one cascade,
148
389260
3000
La testata piccola prende una cascata,
06:32
and spinning up the rotors and slowing them down,
149
392260
3000
e aumenta e diminuisce la velocità dei rotori,
06:35
and the big warhead
150
395260
2000
mentre la testata grande
06:37
is talking to six cascades
151
397260
2000
interagisce con sei cascate
06:39
and manipulating valves.
152
399260
2000
e manipola le valvole.
06:41
So in all, we are very confident
153
401260
2000
Perciò alla fine siamo certi
06:43
that we have actually determined what the target is.
154
403260
2000
di aver determinato quale sia il bersaglio.
06:45
It is Natanz, and it is only Natanz.
155
405260
3000
E' Natanz e solo Natanz.
06:48
So we don't have to worry
156
408260
2000
Perciò non dobbiamo preoccuparci
06:50
that other targets
157
410260
2000
che altri bersagli
06:52
might be hit by Stuxnet.
158
412260
2000
possano essere colpiti da Stuxnet
06:54
Here's some very cool stuff that we saw --
159
414260
3000
Ecco alcune cose geniali che abbiamo visto --
06:57
really knocked my socks off.
160
417260
2000
mi hanno veramente impressionato.
06:59
Down there is the gray box,
161
419260
2000
Laggiù c'è la scatola grigia,
07:01
and on the top you see the centrifuges.
162
421260
3000
e sulla sommità ci sono le centrifughe.
07:04
Now what this thing does
163
424260
2000
Ora il compito di questo apparato
07:06
is it intercepts the input values from sensors --
164
426260
3000
è di intercettare i valori in ingresso dai sensori --
07:09
so for example, from pressure sensors
165
429260
2000
per esempio, dai sensori di pressione
07:11
and vibration sensors --
166
431260
2000
e dai sensori di vibrazione --
07:13
and it provides legitimate program code,
167
433260
3000
e di fornire al codice legittimo
07:16
which is still running during the attack,
168
436260
2000
che resta in esecuzione durante l'attacco
07:18
with fake input data.
169
438260
2000
dei dati falsi.
07:20
And as a matter of fact, this fake input data
170
440260
2000
E in pratica questi dati falsi
07:22
is actually prerecorded by Stuxnet.
171
442260
3000
sono preregistrati da Stuxnet
07:25
So it's just like from the Hollywood movies
172
445260
2000
Perciò è come in un film di Hollywood
07:27
where during the heist,
173
447260
2000
dove durante il colpo,
07:29
the observation camera is fed with prerecorded video.
174
449260
3000
viene fornito alle videocamere di sorveglianza del video preregistrato
07:32
That's cool, huh?
175
452260
2000
Che trovata, no?
07:35
The idea here is obviously
176
455260
2000
Qui l'idea è ovviamente
07:37
not only to fool the operators in the control room.
177
457260
3000
non solo di ingannare gli operatori della cabina di controllo
07:40
It actually is much more dangerous and aggressive.
178
460260
4000
ma il fine è in realtà molto più pericoloso e aggressivo.
07:44
The idea
179
464260
2000
L'idea
07:46
is to circumvent a digital safety system.
180
466260
3000
è di aggirare il sistema di sicurezza.
07:50
We need digital safety systems
181
470260
2000
Abbiamo bisogno di sistemi di sicurezza
07:52
where a human operator could not act quick enough.
182
472260
3000
quando un operatore umano potrebbe non reagire abbastanza velocemente.
07:55
So for example, in a power plant,
183
475260
2000
Per esempio, in una centrale elettrica,
07:57
when your big steam turbine gets too over speed,
184
477260
3000
quando la vostra grande turbina a vapore va troppo su di giri,
08:00
you must open relief valves within a millisecond.
185
480260
3000
dovete aprire le valvole di sfogo entro un millisecondo.
08:03
Obviously, this cannot be done by a human operator.
186
483260
3000
Ovviamente, questo non può essere fatto da un operatore umano.
08:06
So this is where we need digital safety systems.
187
486260
2000
Perciò è questo il motivo per cui abbiamo bisogno di sistemi di sicurezza
08:08
And when they are compromised,
188
488260
2000
E quando questi sistemi vengono compromessi,
08:10
then real bad things can happen.
189
490260
3000
allora possono succedere cose molto brutte.
08:13
Your plant can blow up.
190
493260
2000
La vostra centrale può esplodere.
08:15
And neither your operators nor your safety system will notice it.
191
495260
3000
E ne i vostri operatori ne il vostro sistema di sicurezza se ne accorgerebbero.
08:18
That's scary.
192
498260
2000
E' spaventoso.
08:20
But it gets worse.
193
500260
2000
Ma può essere ancora peggio.
08:22
And this is very important, what I'm going to say.
194
502260
3000
Quello che mi accingo a dire è molto importante.
08:25
Think about this:
195
505260
2000
Rifletteteci.
08:27
this attack is generic.
196
507260
3000
L'attacco è generico.
08:30
It doesn't have anything to do, in specifics,
197
510260
4000
Non ha niente a che fare, nel dettaglio,
08:34
with centrifuges,
198
514260
2000
con le centrifughe,
08:36
with uranium enrichment.
199
516260
3000
con l'arrichimento dell'uranio.
08:39
So it would work as well, for example,
200
519260
3000
Perciò funzionerebbe anche, per esempio,
08:42
in a power plant
201
522260
2000
in una centrale elettrica
08:44
or in an automobile factory.
202
524260
3000
o in una fabbrica di automobili.
08:47
It is generic.
203
527260
2000
E' generico.
08:49
And you don't have -- as an attacker --
204
529260
2000
E non è necessario -- come attaccanti --
08:51
you don't have to deliver this payload
205
531260
3000
non è necessario veicolare il carico
08:54
by a USB stick,
206
534260
2000
con una penna USB,
08:56
as we saw it in the case of Stuxnet.
207
536260
2000
come abbiamo visto nel caso di Stuxnet.
08:58
You could also use conventional worm technology for spreading.
208
538260
3000
Potete anche usare la tecnologia convezionale dei worm per computer per diffonderlo.
09:01
Just spread it as wide as possible.
209
541260
3000
Basta diffonderlo il più possibile.
09:04
And if you do that,
210
544260
2000
E se lo farete
09:06
what you end up with
211
546260
2000
quello che otterrete
09:08
is a cyber weapon of mass destruction.
212
548260
5000
è un'arma di distruzione di massa digitale.
09:14
That's the consequence
213
554260
2000
E' questo il lascito
09:16
that we have to face.
214
556260
3000
che dobbiamo affrontare.
09:19
So unfortunately,
215
559260
3000
Sfortunatamente,
09:22
the biggest number of targets for such attacks
216
562260
3000
il numero maggiore di bersagli per attacchi di questo tipo
09:25
are not in the Middle East.
217
565260
2000
non si trova in Medio Oriente
09:27
They're in the United States and Europe and in Japan.
218
567260
3000
ma negli Stati Uniti, in Europa e in Giappone.
09:30
So all of the green areas,
219
570260
2000
Dunque tutte queste aree verdi,
09:32
these are your target-rich environments.
220
572260
3000
sono le vostre zone ricche di besagli
09:35
We have to face the consequences,
221
575260
3000
Dobbiamo affrontare la questione
09:38
and we better start to prepare right now.
222
578260
3000
ed è meglio cominciare a preparasi da subito.
09:41
Thanks.
223
581260
2000
Grazie.
09:43
(Applause)
224
583260
6000
(Applausi)
09:49
Chris Anderson: I've got a question.
225
589260
2000
Chris Anderson: Ho una domanda.
09:53
Ralph, it's been quite widely reported
226
593260
2000
Ralph, è stato assai ampiamente riportato
09:55
that people assume that Mossad
227
595260
2000
che si ipotizza che il Mossad
09:57
is the main entity behind this.
228
597260
2000
sia l'autore principale dell'accaduto.
09:59
Is that your opinion?
229
599260
3000
La pensi allo stesso modo?
10:02
Ralph Langner: Okay, you really want to hear that?
230
602260
2000
Ralph Langer: Okay, vuoi veramente sentirlo?
10:04
Yeah. Okay.
231
604260
2000
Certo. Si.
10:06
My opinion is that the Mossad is involved,
232
606260
3000
La mia opinione è che il Mossad sia coinvolto,
10:09
but that the leading force is not Israel.
233
609260
3000
ma che la forza trainante non sia Israele.
10:12
So the leading force behind that
234
612260
2000
Quindi la forza trainante dietro tutto ciò
10:14
is the cyber superpower.
235
614260
3000
è una super potenza digitale.
10:17
There is only one,
236
617260
2000
Ne esiste una sola
10:19
and that's the United States --
237
619260
2000
gli Stati Uniti --
10:21
fortunately, fortunately.
238
621260
2000
per fortuna.
10:23
Because otherwise,
239
623260
2000
Perché altrimenti,
10:25
our problems would even be bigger.
240
625260
3000
i nostri problemi sarebbero anche più grandi.
10:28
CA: Thank you for scaring the living daylights out of us. Thank you, Ralph.
241
628260
4000
CA: Grazie per averci spaventato a morte. Grazie Ralph.
10:32
(Applause)
242
632260
2000
(Applausi)
A proposito di questo sito web

Questo sito vi presenterà i video di YouTube utili per l'apprendimento dell'inglese. Vedrete lezioni di inglese tenute da insegnanti di alto livello provenienti da tutto il mondo. Fate doppio clic sui sottotitoli in inglese visualizzati su ogni pagina video per riprodurre il video da lì. I sottotitoli scorrono in sincronia con la riproduzione del video. Se avete commenti o richieste, contattateci tramite questo modulo di contatto.

https://forms.gle/WvT1wiN1qDtmnspy7