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?

4 Answers 4

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.

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.

0
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.

4
  • 5
    The leaked "source code" is just a reverse engineered binary.
    – chris
    Sep 26, 2011 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, 2016 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, 2016 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, 2016 at 15:12
-3

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

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .