Skype-Trojaner von Megapanzer - Eine Analyse

Skype-Trojaner von Megapanzer

Eine Analyse

Marc Ruef
von Marc Ruef
Lesezeit: 4 Minuten

Ende August 2009 veröffentlichte die umstrittene Underground-Seite gulli.com ein Interview mit Ruben Unteregger. Im Mittelpunkt des Interesses steht der von ihm entwickelte Skype-Trojaner. Dieser soll Einblick in die Funktionsweise des Backdoorings durch Ermittlungsbehörden aufzeigen. Die Veröffentlichung der Quellen wurde am 25. August 2009 auf dem Blog des Entwicklers vorgenommen.

Es wurde schon im Vorfeld viel über die Funktionsweise und Möglichkeiten dieses Trojaners spekuliert. Da wir ebenfalls Backdoor-Tests anbieten, war dies natürlich eine gute Möglichkeit, um Einblicke in die Herangehensweise anderer Entwickler erhaschen zu können.

SkypeTrojan von Megapanzer

Als Version wird 0.4 ausgewiesen. Die Kommunikation findet über reguläres HTTP statt, indem auf die Funktionen von winhttp.h zugegriffen wird. Der Server in der Dropzone wird in SkypeTrojan.cpp durch die Konstante gUploadServer spezifiziert. Das Vorhandensein eines Proxies wird in GeneralFunctions.cpp durch die Funktion getProxySettings() ermittelt und das Resultat in die HTTP-Kommunikation miteinbezogen.

Die Software legt die für die Uploads vorgesehenen Dateien mit der Dateiendung .bin ab. In SkypeTrojan.cpp wird mit der Funktion doHTTPUploadsThread() regelmässig die für die Datensammlung vorgesehenen Verzeichnisse auf potentielle Uploads hin untersucht und diese dann mit der Funktion uploadData_DirectMain() auf den Server übertragen.

Die Datenkommunikation könnte wohl verschlüsselt werden, da in Crypto.cpp eine simple Implementierung von RC4 dargeboten wird. Die entsprechende Funktion encrypt() wird jedoch nirgends aufgerufen. Entsprechend ist anzunehmen, dass es sich hierbei um eine noch nicht fertige oder eine abgespeckte Fassung der Software handelt.

In DetectPersonalFirewall.cpp wird ein Mechanismus angeboten, anhand dem bekannte Antiviren- und Personal Firewall-Lösungen anhand ihres Prozessnamens identifiziert werden. Dieser kommt jedoch erst beim Aufruf der Funktion deleteEverything() zum Einsatz. Diese wird genutzt, um nach getaner Arbeit sämtliche Spuren der Infektion zu eliminieren. Temporäre Dateien und Registry-Einträge ({HKLM|HKCU}\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\RUN) sowie bestehende Prozesse (z.B. laufende Instanzen von cscript) werden eliminiert. Hierzu kommen verschiedene Aufrufe auf der Kommandozeile sowie VBS-Skripte zum Einsatz. Die Möglichkeiten werden zuerst mit isScriptingActive() überprüft und notfalls mit activateWindowsScriptingHost() das Windows Scripting Host Environment aktiviert (der Ursprungszustand wird jedoch nicht mehr zurückgesetzt). Der Erfolg der gesamten Säuberung wird dem Server anhand der Status-Meldung, die als HTTP GET-Variable übertragen wird, mitgeteilt.

Als Fazit muss gesagt werden, dass es sich hierbei in keinster Weise um eine neuartige Entwicklung handelt. Die genutzten Mechanismen sind altbekannt. Man muss jedoch eingestehen, dass viele davon “straightforward” und solid implementiert wurden (viele grundlegende Mechanismen via API-Calls). Nur an einigen wenigen Stellen tun sich Unschönheiten im Code auf (z.B. teilweise deutsche Benennung von Funktionen). Die grundlegenden technischen Probleme, die im Zusammenhang mit der Strafverfolgung von Skype so mancher Behörde Kopfzerbrechen bereitet, können aber auch hier nicht eliminiert werden. Auch wenn viele Medienberichte etwas anderes vermuten liessen.

Über den Autor

Marc Ruef

Marc Ruef ist seit Ende der 1990er Jahre im Cybersecurity-Bereich aktiv. Er hat vor allem im deutschsprachigen Raum aufgrund der Vielzahl durch ihn veröffentlichten Fachpublikationen und Bücher – dazu gehört besonders Die Kunst des Penetration Testing – Bekanntheit erlangt. Er ist Dozent an verschiedenen Hochschulen, darunter ETH, HWZ, HSLU und IKF. (ORCID 0000-0002-1328-6357)

Links

Sie wollen die Sicherheit Ihrer Firewall prüfen?

Unsere Spezialisten kontaktieren Sie gern!

×
Cyber Threat Intelligence

Cyber Threat Intelligence

Marc Ruef

3D Printing

3D Printing

Marc Ruef

Contact Tracing App DP3T

Contact Tracing App DP3T

Marc Ruef

Sie wollen mehr?

Weitere Artikel im Archiv

Sie brauchen Unterstützung bei einem solchen Projekt?

Unsere Spezialisten kontaktieren Sie gern!

Sie wollen mehr?

Weitere Artikel im Archiv