• IT-Karriere:
  • Services:

Trojaner: Duqu-Code erweist sich als "Oldschool"

Eine erste Analyse des Trojaners Duqu ergab, dass die Schadsoftware weitgehend mit C++ programmiert wurde - bis auf das C-&-C-Modul. Zunächst vermuteten Sicherheitsexperten eine bislang unbekannte Programmiersprache, bis die Community bei der Entschlüsselung mithalf.

Artikel veröffentlicht am ,
Disassemblierter Duqu-Code
Disassemblierter Duqu-Code (Bild: Kaspersky)

Die Sicherheitsunternehmen Kaspersky und Symantec hatten monatelang versucht, dem auf Stuxnet basierenden Trojaner Duqu sein Geheimnis zu entlocken. Denn große Teile des etwa 500 KByte großen Trojaners waren zwar in der Programmiersprache C++ geschrieben. Ein kleiner Teil aber, der für die Verbindung zum Command-&-Control-Server zuständig ist, ließ sich partout nicht entschlüsseln.

  • Disassemblierter Duqu-Code
  • Disassemblierter OO-C-Beispielcode
Disassemblierter Duqu-Code

Nicht identifizierbare Programmiersprache

Stellenmarkt
  1. Münchener Rückversicherungs-Gesellschaft Aktiengesellschaft in München, München
  2. DMK E-BUSINESS GmbH, Chemnitz, Berlin-Potsdam, Köln

"Die Sprache ist definitiv nicht C++, Objective C, Java, Python, Ada, Lua oder eine der anderen vielen Sprachen, auf denen wir den Trojaner untersucht haben", hatte Kasperskys Sicherheitsexperte Igor Soumenkov noch am 7. März 2012 geschrieben. Es handele sich womöglich um eine bislang unbekannte Programmiersprache.

Jetzt hat Soumenkov mit Hilfe der Community die unbekannte Programmiersprache identifiziert, die allerdings gar nicht so unbekannt ist - sie wird nur fast nicht mehr verwendet. Daraus schließen die Sicherheitsexperten, dass der Programmierer nicht nur ein Experte, sondern auch ein erfahrener Entwickler ist. Denn das Modul für die Kommunikation wurde in Object Oriented C (OO C) - C mit einem eigenen Dialekt erstellt. OO C sei populär gewesen, als viele Entwickler von Assembler zu C wechselten, aber um C++ noch einen großen Bogen machten, sagte Vitaly Kamluk von Kaspersky.

Läuft zuverlässig und überall

Solcher Code findet sich in modernen Trojanern und Viren nicht. "Die Entwickler wollten sicherstellen, dass der Trojaner zuverlässig und überall läuft", resümiert Kamluk. Die Kaspersky-Mitarbeiter gehen davon aus, dass mehr als eine Person an der Entwicklung von Duqu beteiligt war.

Compiler unterstützen OO C mit entsprechenden Schaltern weiterhin, etwa Microsofts Visual Studio Compiler 2008, mit dem mutmaßlich auch der gesamte Duqu-Trojaner kompiliert wurde. Mit den Schaltern 01 und Ob1 konnten die Entwickler bei Kaspersky einen annähernd ähnlichen Code generieren wie die im Duqu-Trojaner verpackten Payload.

Duqu soll Daten stehlen

Duqu ist für das Stehlen von Daten konzipiert worden. Einer Analyse von Symantec zufolge basiert Duqu auf Stuxnet und das Sicherheitsunternehmen ist sich sicher, dass die Entwickler von Duqu Zugriff auf den Quelltext von Stuxnet hatten, nicht nur auf dessen ausführbare Dateien. Der Windows-Trojaner verhält sich wie ein klassischer Botnet-Trojaner: Dateien werden vom kompromittierten PC verschlüsselt an einen Command-&-Control-Server verschickt, zusätzlich wird andere Malware installiert, die Tastatureingaben abfangen kann.

Als Botnet-Trojaner war Duqu jedoch wohl nicht gedacht, denn das Programm verbreitet sich nicht selbst weiter und deinstalliert sich nach 36 Tagen selbst. Die von Duqu erbeuteten Daten werden unter anderem in Dateien verpackt, die wie JPEG-Bilder aussehen, eine Verschleierungstechnik, die in herkömmlichen Trojanern nicht vorkommt. Duqu installiert mit einem von Symantec gestohlenen und inzwischen widerrufenen Zertifikat einen Treiber, über den weitere Systemkomponenten nachinstalliert werden können.

Verwandtschaft zu Stuxnet

Symantec zufolge soll die Malware unter anderem bei Organisationen gefunden worden sein, die "in Verbindung mit der Herstellung von industriellen Anlagensteuerungen stehen", und damit mit Stuxnet, das gezielt nach Software zur Steuerung von Scada-Industrieanlagen suchte. Stuxnet nutzte zur Verbreitung vier bis dahin unbekannte Windows-Lücken aus.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Anzeige
Spiele-Angebote
  1. 7,50€
  2. 41,99€
  3. 8,50€
  4. 21,99€

petra-verheugen 24. Mär 2012

"....Die Programmierung sei ausgeklügelt und in komplexer Malware zu finden, die...

wth 22. Mär 2012

Er meint vermutlich: http://ooc-coding.sourceforge.net/

fool 22. Mär 2012

Och, irgendjemand wird sicher mal eine Sprache namens OOC gebastelt haben. Gibt ja...

fool 22. Mär 2012

Naja, dem "Rest der Welt" würde es vielleicht gar nicht schaden, auch mal mit Assembler...

wth 21. Mär 2012

Nicht unbedingt. Ich kenne solche Überlegungen aus anderen Motiven und tatsächlich macht...


Folgen Sie uns
       


Panasonic LUMIX DC-S5 im Hands on

Klein in der Hand, voll im Format - wir haben uns die neue Kamera von Panasonic angesehen.

Panasonic LUMIX DC-S5 im Hands on Video aufrufen
Astronomie: Arecibo wird abgerissen
Astronomie
Arecibo wird abgerissen

Das weltberühmte Radioteleskop ist nicht mehr zu retten. Reparaturarbeiten wären lebensgefährlich.

  1. Astronomie Zweites Kabel von Arecibo-Radioteleskop kaputt
  2. Die Zukunft des Universums Wie alles endet
  3. Astronomie Gibt es Leben auf der Venus?

Weiterbildung: Was IT-Führungskräfte können sollten
Weiterbildung
Was IT-Führungskräfte können sollten

Wenn IT-Spezialisten zu Führungskräften aufsteigen, müssen sie Fachwissen in fremden Gebieten aufbauen - um Probleme im neuen Job zu vermeiden.
Ein Bericht von Manuel Heckel

  1. IT-Profis und Visualisierung Sag's in Bildern
  2. IT-Jobs Die schwierige Suche nach dem richtigen Arbeitgeber
  3. Digitalisierung in Firmen Warum IT-Teams oft übergangen werden

Demon's Souls im Test: Düsternis auf Basis von 10,5 Tflops
Demon's Souls im Test
Düsternis auf Basis von 10,5 Tflops

Das Remake von Demon's Souls ist das einzige PS5-Spiel von Sony, das nicht für die PS4 erscheint - und ein toller Einstieg in die Serie!
Von Peter Steinlechner


      •  /