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

"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


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



Aktuell auf der Startseite von Golem.de
Rennelektroauto
Tesla Model 3 Performance mit 262 km/h Höchstgeschwindigkeit

Tesla hat das Model 3 Performance vorgestellt, das eine Systemleistung von 340 kW und eine Höchstgeschwindigkeit von 262 km/h bietet.

Rennelektroauto: Tesla Model 3 Performance mit 262 km/h Höchstgeschwindigkeit
Artikel
  1. Fritzbox: AVM bestätigt gute Einigung mit Huawei zu Patenten
    Fritzbox
    AVM bestätigt "gute Einigung" mit Huawei zu Patenten

    Trotz viel Geheimhaltung lobt AVM die Einigung mit Huawei zu Wi-Fi-Patenten. Die Workarounds für die Fritzbox werden zurückgenommen.

  2. Windows: Smart-TV bringt Computer zum Absturz
    Windows
    Smart-TV bringt Computer zum Absturz

    Über Jahre sind bei der Sound-Designerin Priscilla Snow immer mehr Funktionen ihres PCs ausgefallen, bis er fast unbrauchbar war. Als Übeltäter hat sich ihr Hisense-Fernseher herausgestellt.

  3. KI-Modell: Microsoft stellt mit Phi-3 Mini ein LLM für das iPhone vor
    KI-Modell
    Microsoft stellt mit Phi-3 Mini ein LLM für das iPhone vor

    Microsoft hat mit Phi-3 Mini sein bisher kompaktestes KI-Modell vorgestellt. Es soll die Leistung von GPT 3.5 bieten, läuft aber auch auf dem iPhone.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    • Daily Deals • Galaxy S23 400€ günstiger • MindStar: Radeon-Grafikkarten zu Tiefstpreisen • Alternate: Asus Gaming-Laptop 899€ statt 1.599€ • Anker USB-Ladegeräte -45% • MSI MEG 342CDE OLED 999€ • Gamesplanet Spring Sale [Werbung]
    •  /