The idea behind the Stuxnet computer worm is actually quite simple. We don't want Iran to get the bomb. Their major asset for developing nuclear weapons is the Natanz uranium enrichment facility. The gray boxes that you see, these are real-time control systems. Now if we manage to compromise these systems that control drive speeds and valves, we can actually cause a lot of problems with the centrifuge. The gray boxes don't run Windows software; they are a completely different technology. But if we manage to place a good Windows virus on a notebook that is used by a maintenance engineer to configure this gray box, then we are in business. And this is the plot behind Stuxnet.
L'idée derrière le ver informatique Stuxnet est vraiment simple. Nous ne voulons pas que l'Iran ait la bombe atomique. Leur atout majeur pour développer des armes nucléaires est l'usine d'enrichissement de l'uranium de Natanz. Les boites grises que vous voyez, ce sont des systèmes de contrôle en temps réel. Et si on arrive à compromettre ces systèmes qui contrôlent la vitesse des disques et les valves, on peut effectivement causer de nombreux problèmes dans la centrifugeuse. Les boites grises ne tournent pas sous Windows; mais avec une technologie complètement différente. Mais si on arrive à placer un bon virus Windows sur un ordinateur qui est utilisé par un ingénieur de la maintenance pour configurer cette boite grise, alors on est dans la course. Et c'est le but du ver Stuxnet.
So we start with a Windows dropper. The payload goes onto the gray box, damages the centrifuge, and the Iranian nuclear program is delayed -- mission accomplished. That's easy, huh? I want to tell you how we found that out. When we started our research on Stuxnet six months ago, it was completely unknown what the purpose of this thing was. The only thing that was known is it's very, very complex on the Windows part, the dropper part, used multiple zero-day vulnerabilities. And it seemed to want to do something with these gray boxes, these real-time control systems. So that got our attention, and we started a lab project where we infected our environment with Stuxnet and checked this thing out. And then some very funny things happened. Stuxnet behaved like a lab rat that didn't like our cheese -- sniffed, but didn't want to eat. Didn't make sense to me. And after we experimented with different flavors of cheese, I realized, well, this is a directed attack. It's completely directed. The dropper is prowling actively on the gray box if a specific configuration is found, and even if the actual program code that it's trying to infect is actually running on that target. And if not, Stuxnet does nothing.
Donc nous commençons avec un simple dropper Windows. La charge utile s'incruste dans la boite grise, endommage la centrifugeuse, et le programme nucléaire iranien est retardé -- mission accomplie. C'est facile, n'est-ce pas? Je vais donc vous dire comment nous avons découvert tout cela. Il y a 6 mois lorsque nous avons commencé nos recherches sur Stuxnet, nous ignorions complètement le but du développement de ce programme. La seule chose que nous savions concernait la partie Windows très très complexe, la partie du dropper, elle utilisait de nombreuses vulnérabilités à jour zéro. Et ce dropper semblait vraiment vouloir faire quelque chose avec ces boites grises, ces systèmes de contrôle en temps réel. Cela a donc attiré notre attention, et nous avons entrepris un projet de laboratoire dans lequel nous avons infecté notre environnement avec le ver Stuxnet et examiné ses faits et gestes. Et il s'est passé certaines choses très intéressantes. Stuxnet s'est comporté comme un rat de laboratoire qui n'aimait pas notre fromage -- qui l'a reniflé mais qui ne l'a pas mangé. Pour moi cela n'avait pas de sens. Et après que nous ayons expérimenté avec différentes saveurs de fromage, j'ai réalisé qu'il s'agissait d'une attaque ciblée. C'était entièrement dirigée. Le dropper rôde activement dans la boite grise si une configuration spécifique est identifiée, et même si le programme qu'il essaye d'infecter est en train de tourner sur cette cible. Dans le cas contraire, Stuxnet ne fait rien.
So that really got my attention, and we started to work on this nearly around the clock, because I thought, "Well, we don't know what the target is. It could be, let's say for example, a U.S. power plant, or a chemical plant in Germany. So we better find out what the target is soon." So we extracted and decompiled the attack code, and we discovered that it's structured in two digital bombs -- a smaller one and a bigger one. And we also saw that they are very professionally engineered by people who obviously had all insider information. They knew all the bits and bites that they had to attack. They probably even know the shoe size of the operator. So they know everything.
Cela a donc vraiment attiré mon attention, et nous avons commencé à travailler la dessus presque continuellement, parce que je ne connaissais pas quelle était la cible. Cela aurait pu être par exemple, une centrale électrique américaine, ou une usine chimique en Allemagne. Il valait donc mieux que nous trouvons rapidement quelle est la cible. Donc nous avons extrait et décompilé le code d'attaque du virus, et nous avons découvert qu'il est structuré en deux bombes numériques -- une plus petite et une plus grosse. Nous nous sommes également aperçus qu'elles ont été conçues de façon très professionnelle par des gens qui avaient certainement des informations de l'intérieur. Ils connaissaient tous les détails et les octets qu'ils devaient attaquer. Ils connaissaient même probablement la pointure de l'opérateur. Au final ils connaissaient tout.
And if you have heard that the dropper of Stuxnet is complex and high-tech, let me tell you this: the payload is rocket science. It's way above everything that we have ever seen before. Here you see a sample of this actual attack code. We are talking about -- around about 15,000 lines of code. Looks pretty much like old-style assembly language. And I want to tell you how we were able to make sense out of this code. So what we were looking for is, first of all, system function calls, because we know what they do.
Et si vous avez entendu dire que le dropper de Stuxnet est complexe et sophistiqué, laissez-moi vous dire: la charge utile, c'est du très haut niveau. C'est bien au-dessus de tout ce que nous avons pu voir auparavant. Voici un échantillon de ce code d'attaque. Nous parlons de -- environ 15.000 lignes de code. Cela ressemble assez à du langage d'assembleur à l'ancienne. Je veux vous dire comment nous avons été capables de comprendre et déchiffrer ce code. Premièrement, ce que nous cherchions au début sont les appels de fonctions système, parce que nous savons ce qu'ils font.
And then we were looking for timers and data structures and trying to relate them to the real world -- to potential real world targets. So we do need target theories that we can prove or disprove. In order to get target theories, we remember that it's definitely hardcore sabotage, it must be a high-value target and it is most likely located in Iran, because that's where most of the infections had been reported. Now you don't find several thousand targets in that area. It basically boils down to the Bushehr nuclear power plant and to the Natanz fuel enrichment plant.
Ensuite, nous cherchions les minuteurs et les structures de données et nous essayions de les mettre en relation avec le monde réel -- avec des cibles potentielles. Nous avons donc besoin de théories de cibles qui nous pouvons confirmer ou infirmer. Pour obtenir ces théories de cibles, nous nous souvenons que c'est vraiment du sabotage hardcore, cela doit être une cible de haute valeur, et c'est plus probablement situé en Iran, parce que c'est là que la plupart des infections ont été signalées. Il est plutôt difficile de trouver plusieurs milliers de cibles dans cette zone. Ça se réduit en gros à la centrale nucléaire de Bushehr et l'usine d'enrichissement de Natanz.
So I told my assistant, "Get me a list of all centrifuge and power plant experts from our client base." And I phoned them up and picked their brain in an effort to match their expertise with what we found in code and data. And that worked pretty well. So we were able to associate the small digital warhead with the rotor control. The rotor is that moving part within the centrifuge, that black object that you see. And if you manipulate the speed of this rotor, you are actually able to crack the rotor and eventually even have the centrifuge explode. What we also saw is that the goal of the attack was really to do it slowly and creepy -- obviously in an effort to drive maintenance engineers crazy, that they would not be able to figure this out quickly.
Donc j'ai dit à mon assistant, "Trouve moi une liste de tous les experts en centrifugeuses et en centrales électriques dans notre base de clients." Je les ai appelés et les ai sollicités dans l'optique d'associer leur expertise à ce que nous avions trouvé dans le code et les données. Et cela a marché plutôt bien. Nous avons donc été capables d'associer la petite ogive numérique avec le contrôle du rotor. Le rotor est cette partie mobile dans la centrifugeuse, cet objet noir que vous voyez ici. Et si vous contrôlez la vitesse de ce rotor, vous pouvez finalement craquer le rotor et faire exploser la centrifugeuse. Ce que nous avons aussi constaté est que le but de l'attaque était vraiment de le faire lentement et progressivement -- certainement dans le but de rendre fou les ingénieurs, qui n'auraient pas été capables de résoudre cela rapidement.
The big digital warhead -- we had a shot at this by looking very closely at data and data structures. So for example, the number 164 really stands out in that code; you can't overlook it. I started to research scientific literature on how these centrifuges are actually built in Natanz and found they are structured in what is called a cascade, and each cascade holds 164 centrifuges. So that made sense, that was a match.
La grosse ogive numérique -- nous avons essayé en regardant de très près les données et les structures des données. Par exemple, le numéro 164 est très présent dans ce code; on ne peut pas ne pas le voir. J'ai commencé à chercher dans la littérature scientifique sur la façon dont ces centrifugeuses sont en fait construites à Natanz et j'ai trouvé qu'elles sont structurées en ce que l'on appelle une cascade, et que chaque cascade contient 164 centrifugeuses. Donc ça avait du sens, cela concordait.
And it even got better. These centrifuges in Iran are subdivided into 15, what is called, stages. And guess what we found in the attack code? An almost identical structure. So again, that was a real good match. And this gave us very high confidence for what we were looking at. Now don't get me wrong here, it didn't go like this. These results have been obtained over several weeks of really hard labor. And we often went into just a dead end and had to recover.
Et c'est encore mieux ensuite. Ces centrifugeuses en Iran sont divisées en 15 étages. Et devinez ce que nous avons trouvé dans le code d'attaque? Une structure presque identique. Encore une fois, cela concordait. Et cela nous a donné une très grande confiance dans ce que nous avions sous les yeux. Attention ne me faites pas dire ce que je n'ai pas dit, cela ne s'est pas fait facilement. Ces résultats ont été obtenus en plusieurs semaines de travail très intensif. Et nous avons souvent fini dans des impasses et il a fallu s'en remettre.
Anyway, so we figured out that both digital warheads were actually aiming at one and the same target, but from different angles. The small warhead is taking one cascade, and spinning up the rotors and slowing them down, and the big warhead is talking to six cascades and manipulating valves. So in all, we are very confident that we have actually determined what the target is. It is Natanz, and it is only Natanz. So we don't have to worry that other targets might be hit by Stuxnet.
En tout cas, nous avons réussi à comprendre ce que les deux ogives numériques visaient véritablement une seule et même cible, mais sous des angles différents. La petite ogive s'attaque à une cascade, et elle accélère les rotors puis les ralentit et la grosse ogive s'attaque à 6 cascades et cherche à prendre le contrôle des valves. Donc dans l'ensemble, nous sommes très confiants d'avoir déterminé la cible véritable de cette attaque. Il s'agit bien de Natanz, et uniquement Natanz. Nous n'avons pas à nous inquiéter que d'autres cibles soient visées par Stuxnet.
Here's some very cool stuff that we saw -- really knocked my socks off. Down there is the gray box, and on the top you see the centrifuges. Now what this thing does is it intercepts the input values from sensors -- so for example, from pressure sensors and vibration sensors -- and it provides legitimate program code, which is still running during the attack, with fake input data. And as a matter of fact, this fake input data is actually prerecorded by Stuxnet. So it's just like from the Hollywood movies where during the heist, the observation camera is fed with prerecorded video. That's cool, huh?
Voici certains des trucs très cools que nous avons vu -- ça m'a vraiment bluffé. En bas il y a la boite grise, et en haut vous voyez les centrifugeuses. Ce que ce programme fait est qu'il intercepte les valeurs entrantes des capteurs -- donc par exemple, des capteurs de pression et des capteurs de vibration -- et il fournit un code légitime, qui continue de tourner pendant l'attaque, avec des fausses données. Et en fait, ces fausses données d'input sont préenregistrées par Stuxnet. Donc c'est comme dans les films hollywoodiens quand pendant le hold-up, la caméra de surveillance est brouillée par des images préenregistrées. C'est cool, non?
The idea here is obviously not only to fool the operators in the control room. It actually is much more dangerous and aggressive. The idea is to circumvent a digital safety system. We need digital safety systems where a human operator could not act quick enough. So for example, in a power plant, when your big steam turbine gets too over speed, you must open relief valves within a millisecond. Obviously, this cannot be done by a human operator. So this is where we need digital safety systems. And when they are compromised, then real bad things can happen. Your plant can blow up. And neither your operators nor your safety system will notice it. That's scary.
Il est évident que l'idée ici n'est pas seulement de tromper les opérateurs de la salle de contrôle. C'est bien plus dangereux et agressif. L'idée est de contourner un système de sécurité numérique. Nous avons besoin de systèmes de sécurité numériques là où un opérateur humain ne pourrait pas agir assez rapidement. Par exemple, dans une centrale électrique, quand la grosse turbine à vapeur dépasse la vitesse limite, vous devez ouvrir les valves de délestage en moins d'une milliseconde. Clairement, cela peut ne pas être fait par un opérateur humain. C'est donc là que nous avons besoin de systèmes de sécurité numériques. Et quand ils sont compromis, des choses très graves peuvent se produire. Votre centrale peut exploser. Et ni vos opérateurs ni votre système de sécurité ne s'en rendront compte. Cela fait peur.
But it gets worse. And this is very important, what I'm going to say. Think about this: this attack is generic. It doesn't have anything to do, in specifics, with centrifuges, with uranium enrichment. So it would work as well, for example, in a power plant or in an automobile factory. It is generic. And you don't have -- as an attacker -- you don't have to deliver this payload by a USB stick, as we saw it in the case of Stuxnet. You could also use conventional worm technology for spreading. Just spread it as wide as possible. And if you do that, what you end up with is a cyber weapon of mass destruction. That's the consequence that we have to face. So unfortunately, the biggest number of targets for such attacks are not in the Middle East. They're in the United States and Europe and in Japan. So all of the green areas, these are your target-rich environments. We have to face the consequences, and we better start to prepare right now.
Mais il y a pire. Et ce que je vais dire est très important. Pensez-y. Cette attaque est générique. Elle n'a rien à voir, dans les détails, avec des centrifugeuses, avec l'enrichissement de l'uranium. Donc elle fonctionnerait tout aussi bien, par exemple, dans une centrale électrique ou dans une usine de construction automobile. Elle est générique. Et vous n'avez pas -- du point de vue de l'attaquant -- vous n'avez pas à livrer la charge utile par une clé USB, comme nous l'avons vu dans le cas de Stuxnet. Vous pourriez aussi utiliser un ver conventionnel pour le répandre. Simplement le répandre le plus largement possible. Et si vous faites cela, vous vous retrouvez avec une cyber-arme de destruction massive. Voici la conséquence à laquelle nous devons faire face. Ainsi malheureusement, la majorité des cibles potentielles de ces attaques ne se trouvent pas au Moyen-Orient. Elles sont aux États-Unis, en Europe et au Japon. Donc toutes les zones colorées en vert, ce sont les environnements riches en cibles potentielles. Nous devons faire face à ces conséquences, et nous ferions mieux à nous y préparer dès maintenant.
Thanks.
Merci.
(Applause)
(Applaudissements)
Chris Anderson: I've got a question. Ralph, it's been quite widely reported that people assume that Mossad is the main entity behind this. Is that your opinion?
Chris Anderson: "J'ai une question. Ralph, on a beaucoup dit que les gens pensent que le Mossad serait la principale organisation derrière tout cela. Qu'en pensez-vous?
Ralph Langner: Okay, you really want to hear that? Yeah. Okay. My opinion is that the Mossad is involved, but that the leading force is not Israel. So the leading force behind that is the cyber superpower. There is only one, and that's the United States -- fortunately, fortunately. Because otherwise, our problems would even be bigger.
Ralph Langner: Okay, voulez-vous vraiment entendre cela? Oui. Okay. Je pense en effet que le Mossad est impliqué, mais que la force principale n'est pas Israël. La force principale derrière ça est donc la cyber-superpuissance. Et il n'y en a qu'une, les États-Unis -- heureusement, heureusement. Parce que sinon, nos problèmes seraient encore plus importants.
CA: Thank you for scaring the living daylights out of us. Thank you, Ralph.
CA : Merci de nous avoir terrifiés. Merci Ralph.
(Applause)
(Applaudissements)