12

I was listening to a story about Stuxnet and was curious if anyone knew what language it was written in?

Is the source code for Stuxnet available anywhere?

Anders
  • 64,406
  • 24
  • 178
  • 215
Abe Miessler
  • 8,155
  • 10
  • 44
  • 72

4 Answers4

18

According to some analysis, Stuxnet was written "was written in multiple languages, including C, C++ and other object-oriented languages." Source code is not available, but binaries can be found in the right places. You can try Googling around. I suggest confirming the hash with a reputable site.

Jeff Ferland
  • 38,090
  • 9
  • 93
  • 171
8

The Stuxnet dropper and payload were almost certainly written in C, based on the reverse engineering that has been done.

The payload inserts itself between the PC used to monitor the Natanz centrifuge array and the target centrifuge array. A classic 'man in the middle' attack.

Stuxnet injects Siemens PCS7 language malware into motor controllers to control the target centrifuge controllers. While the attacks are in process Stuxnet 'plays back' normal readings to the Siemens monitor software running on Windows.

The Stuxnet team certainly had experts both in Windows and Siemens controller internals.

Some functions called by Stuxnet have not been positively identified.

The Wikipedia article on Stuxnet lists many useful references.

Jim In Texas
  • 329
  • 2
  • 3
4

Given that nobody is 100% certain who wrote Stuxnet, I find it hard to believe that anyone has found the source code for it.

Given the nature of its inner workings, it likely wasn’t written using a high-level language — especially a high-level language that is easily reverse-engineered. It’s probably written in C/C++ (well, those are high-level), but most of it is probably written in assembly.

TRiG
  • 609
  • 5
  • 14
Steve
  • 15,155
  • 3
  • 37
  • 66
  • 5
    The leaked "source code" is just a reverse engineered binary. – chris Sep 26 '11 at 17:43
  • 2
    How can C and C++ be considered high-level languages nowadays? In the 80s maybe but not today – Mr. E Dec 21 '16 at 14:27
  • @Mr.E in the scheme of things people still write complex software in assembly. All OS's are still written in C/C++. It's all relative. – Steve Dec 21 '16 at 14:54
  • @Steve OS's need to use languages that allow them to control low level resources such as direct access to memory so it can manage it for applications running on it. I won't consider a OS a "high-level" piece of software at all. But that depends on what programs are you used to deal with, if you're a firmware programmer then yeah, you can consider C a high-level language, but for most use cases I don't think so – Mr. E Dec 21 '16 at 15:12
-3

Stuxnet was written using Assembly language you might check a documentary that is recently released that says zero days.

Negatu
  • 1