TDL4 – der Super-Bot

TDSS in verschiedenen Versionen

Zum gegenwärtigen Zeitpunkt zählt das von Kaspersky Anti-Virus als TDSS klassifizierte Schadprogramm zu den kompliziertesten Schädlingen überhaupt. TDSS verwendet verschiedene Methoden, um die signaturbasierte, heuristische und proaktive Erkennung zu umgehen. Zudem verschlüsselt das Programm die Kommunikation zwischen einem Bot-Rechner und dem Steuerungszentrum des Zombie-Netzes und verfügt über eine leistungsstarke Rootkit-Komponente, die es ermöglicht, beliebige andere Schadprogramme im System zu verbergen.

Der Name, der diesem Programm von seinen Autoren gegeben wurde, lautet TDL. Seit seinem Erscheinen im Jahr 2008 verbessern die Virenschreiber den Schädling fortwährend. Im Jahr 2010 war die Version TDL-3 aktuell, die wir im Sommer 2010 ausführlich beschrieben haben.

Die Entwickler von TDSS boten das Programm nie zum Verkauf an, doch das änderte sich gegen Ende letzten Jahres. Im Dezember 2010 entdeckten wir bei der Analyse eines der Samples etwas Seltsames: Das verschlüsselte Archiv von TDL-3 enthielt ein Modul von SHIZ, einem anderen Schadprogramm.


Inhalt des verschlüsselten Archivs von TDL-3 mit Modulen des Schadprogramms SHIZ

Etwa zur gleichen Zeit tauchte im Internet ein Partnerprogramm zur Manipulation der Ergebnisse von Suchsystemen auf. Das Programm gehörte den Entwicklern von SHIZ, basierte aber auf TDL-3.

Die Veränderungen in der Konfiguration von TDL-3 und das Erscheinen eines neuen Partnerprogramms zeugen davon, dass die Quellcodes von TDL-3 von denselben Cyberkriminellen verkauft wurden, die auch für die Entwicklung des Schadрrogramms SHIZ verantwortlich sind.

Warum entschlossen sich die TDL-Autoren zum Verkauf der Quellcodes von Programmversion Nummer drei? Zu dieser Zeit war bereits die Version TDL-4 erschienen und möglicherweise erschienen den Virenautoren die Veränderungen in dieser Version so bedeutend, dass sie keine Konkurrenz durch die neuen Besitzer von TDL-3 befürchteten.

Ende 2010 beschrieb Vyacheslav Rusakov die neue Version des TDSS-Rootkits hinsichtlich seiner Wechselbeziehungen mit dem Betriebssystem. Im Folgenden schauen wir uns TDL-4 näher an und betrachten dabei, wie und mit welcher Nutzlast der Schädling mit dem Botnetz interagiert, das zum Zeitpunkt der Untersuchung mehr als 4,5 Millionen infizierte Computer zählt.

Schon wieder ein Partnerprogramm

Die Verbreitungsmethode mit Hilfe von Partnerprogrammen ist wohl das einzige, was in der neuen TDL-Version gleich geblieben ist. Wie schon früher bieten die Partnerprogramme zur Verbreitung den TDL-Downloader an, der TDL-4 auf den Computer lädt, nachdem er die Version des Betriebssystems überprüft hat.


Partnerprogramme, die TDL verbreiten

Für die Verbreitung von TDL erhalten die Partner pro 1.000 Installationen des Schadprogramms zwischen 20 und 200 US-Dollar, abhängig von der geografischen Lage des infizierten Computers. Die Partner verwenden beliebige Installationsarten. Am häufigsten wird TDL auf Porno-Ressourcen, Piraten-Webseiten sowie Video- und Dateispeichern verbreitet.

Die Veränderungen in der Version TDL-4 betreffen mehr oder weniger alle Komponenten des Schadprogramms und seiner Aktivität im Netz. Die Virenautoren erweiterten die Funktionalität des Schädlings und änderten den Verschlüsselungsalgorithmus des Kommunikationsprotokolls, das Bots und Steuerungsserver des Botnetzes einsetzen. Zudem versuchten die Entwickler, selbst dann auf die infizierten Computer zugreifen zu können, wenn die Steuerungszentralen des Zombie-Netzes offline genommen würden. Allem Anschein nach versuchten die Entwickler von TDL, ein „unverwüstliches“ Botnetz zu erschaffen, das vor allen Angriffen, Konkurrenten und Antiviren-Unternehmen bestens geschützt ist.

Das „unverwüstliche“ Botnetz

Verschlüsselung der Netzverbindungen

Zu den grundlegenden Veränderungen in TDL-4 im Vergleich zu der Vorgängerversion gehört der aktualisierte Algorithmus des Verschlüsselungsprotokolls, das für die Kommunikation der infizierten Computer mit den Steuerungsservern des Botnetzes benutzt wird. Als Ersatz für den Algorithmus RC4 entwickelten die Cyberkriminellen einen eigenen Verschlüsselungsalgorithmus unter Verwendung von XOR-Swap und XOR-Operation. Als Chiffrierungsschlüssel dienen die Namen der Domains, mit denen die Verbindung hergestellt wird, sowie der Parameter bsh aus der Datei cfg.ini.

Ein besonderes Merkmal von Schadprogrammen aus der Familie TDSS ist das Vorhandensein einer Konfigurationsdatei. Diese enthält die Hauptparameter, die verschiedene TDSS-Module zur Erstellung von Berichten über ihre Aktivität nutzen und mit denen sie die Verbindung zu den Steuerungsservern aufbauen.


Beispiel für den Inhalt einer Konfigurationsdatei

Im Gegensatz zur dritten Version hat sich das Format der Konfigurationsdatei nur unwesentlich geändert. Die wichtigste Neuheit in dieser Datei ist der Parameter „bsh“. Dieser Parameter dient der Identifizierung des Schadprogramm-Exemplars, das vom Steuerungsserver bei der ersten Verbindung des Bots mit ihm ausgegeben wird. Er dient auch als einer der Chiffrierungsschlüssel für die nächsten Verbindungen mit dem Steuerungsserver.


Teil des rekonstruierten Codes des TDL-4-Protokolls

Nach der HTTP-Anfrage des Bots erstellt das Protokoll eine Tabelle. Diese wird durch zwei Schlüssel initialisiert: den Domainnamen des Bot-Steuerungsservers und den Parameter „bsh”. Die Botanfrage wird verschlüsselt und dann in das Format base64 übertragen. Daraufhin werden am Anfang und Ende der erhaltenen Nachricht die vorher nach dem Zufallsprinzip zusammengestellten Zeilen im Format base64 hinzugefügt. Die fertige Anfrage wird über das HTTPS-Protokoll an den Server geschickt.

Der Verschlüsselungsalgorithmus des Kommunikationsprotokolls der Botnetz-Steuerungszentren garantiert das reibungslose Funktionieren des Botnetzes mit den infizierten Rechnern, schützt das Zombie-Netz vor einer Analyse des Netztraffics und behindert Versuche anderer Cyberkrimineller, die Kontrolle über das Botnetz zu übernehmen.

Eigener „Antivirus“

Ebenso wie Sinowal ist auch TDL-4 ein Bootkit. Der Schädling infiziert für seinen Autostart also den MBR, was das Laden des Schadcodes noch vor dem Start des Betriebssystems ermöglicht. Diese Funktionsmethode klassischer Bootviren bietet diesen Programmen eine ungewöhnliche Zählebigkeit und macht sie für die meisten Schutzprogramme unsichtbar.

TDL war in der Lage, sich und die von ihm geladenen Schadprogramme vor Antiviren-Produkten zu verstecken. Damit andere Schädlinge, die ohne Kenntnis der TDL-Besitzer auf infizierte Computer gelangen, nicht die Aufmerksamkeit der Anwender wecken, kann TDL-4 diese Schädlinge löschen. Zwar betrifft das nicht alle, doch immerhin die bekanntesten schädlichen Programme.


Teil des Codes des TDSS-Moduls, das für die Suche nach anderen
Schadprogrammen in der Windows-Registry verantwortlich ist

TDSS enthält den Code zur Entfernung von ungefähr zwanzig Schadprogrammen, darunter Gbot, ZeuS, Clishmic und Optima. TDSS scannt die Windows-Registry, sucht nach spezifischen Dateinamen, übernimmt die Adressen von Steuerungsservern anderer Botnetze in seine schwarze Liste und blockiert den Zugriff des infizierten Computers auf diese.

Diese Art von „Antivirus“ hilft TDSS einerseits im Kampf gegen die Konkurrenz und ermöglicht dem Schädling andererseits, Unannehmlichkeiten von sich und seinem „Team“ – den von ihm hochgeladenen Schädlingen – fernzuhalten, die andere Schadprogramme im infizierten System hervorrufen könnten.

Welche Schadprogramme lädt nun TDL-4 selbst auf die infizierten Rechner? Seit Anfang 2011 wurden im Botnetz etwa 30 zusätzliche Schadprogramme installiert, unter anderem gefälschte Antiviren-Programme, Werbemodule und der Spambot Pushdo.


Liste der Schadprogramm-Downloads des TDSS-Botnetzes

Interessant ist, dass TDL-4 nach der Installation anderer Schadprogramme nicht gelöscht wird, seine „eigenen“ Schadprogramme aber jederzeit mit Hilfe des Moduls r.dll löschen kann.

Zugriff des Botnetzes auf das Kad-Netz

Eine der bedeutendsten Neuheiten der Version TDL-4 besteht in dem Modul kad.dll, das eine Zugriffsmöglichkeit des TDSS-Botnetzes auf das Kad-Netz bietet. Doch wofür brauchen die Cyberkriminellen ein Filesharing-Netzwerk?

Botnetze, die über P2P-Protokolle gesteuert werden, sind schon seit langem bekannt, doch handelte es sich dabei bisher um verborgene Verbindungsprotokolle, die von Cyberkriminellen entwickelt wurden. TDSS nutzt hingegen ein öffentliches P2P-Netz, um die Befehle der Botnetzbetreiber an alle Rechner im Zombie-Netzwerk weiterzuleiten. Die Kommunikation von TDSS mit diesem Netz stellt sich folgendermaßen dar:

  1. In dem öffentlichen Netz Kad ermöglichen die Cyberkriminellen den Zugriff auf eine Datei mit der Bezeichnung „ktzerules“. Die Datei ist verschlüsselt und enthält die Befehlsliste für TDSS.
  2. Die mit TDSS infizierten Computer empfangen den Befehl zum Download und zur Installation des Moduls kad.dll.
  3. Die installierte Datei kad.dll lädt die Datei nodes.dat, die wiederum eine öffentliche Liste von IP-Adressen der Server und Clients des Kad-Netzes enthält.
  4. Im öffentlichen Netz Kad sendet das Modul kad.dll eine Suchanfrage nach der Datei ktzerules.
  5. Nach Download und Entschlüsselung der Datei ktzerules führt kad.dll die in ktzerules enthaltenen Befehle aus.


Verschlüsselte Aktualisierung der Datei kad.dll, die sich im öffentlichen Kad-Netzwerk befindet

Nachfolgend eine Aufstellung der Befehle, die in der verschlüsselten Datei ktzerules enthalten sind.

  • SearchCfg – Suche nach einer neuen ktzerules-Datei im Kad-Netz
  • LoadExe – Laden und Starten der ausführbaren Datei
  • ConfigWrite – Eintragung in cfg.ini
  • Search – Datei im Kad-Netz suchen
  • Publish – Datei im Kad-Netz veröffentlichen
  • Knock – vom Steuerzentrum eine neue Datei nodes.dat herunterladen, die eine Liste der IP-Adressen der Server und Clients des Kad-Netzes enthält, darunter auch die mit TDSS infizierten Computer.

Der interessanteste Befehl ist Knock. Mit Hilfe dieses Kommandos bauen die Cyberkriminellen ihr eigenes P2P-Kad-Netz auf, deren einzige Kunden mit TDSS infizierte Computer sind.


Überschneidung des öffentlichen und geschlossenen KAD-Netzes

Bei der Steuerung des TDSS-Botnetzes ist das Modul kad.dll im Grunde identisch mit cmd.dll. Indem sie mit den Dateien nodes.dat und ktzerules operieren, sind die Botnetzbetreiber in der Lage, infizierte Computer an das öffentliche Netz Kad anzuschließen und sie auch wieder davon auszuschließen. Während in der Datei nodes.dat die IP-Adressen aller Teilnehmer des Netzes Kad stehen, enthält ktzerules den Befehl für den Download einer neuen nodes.dat-Datei von den Servern der Cyberkriminellen. Zum öffentlichen Kad-Netz gehören nicht mehr als zehn mit TDSS infizierte Computer. Dadurch wird der Austauschprozess der Datei ktzerules so ineffizient wie nur möglich gemacht und behindert damit die Übernahme des Botnetzes durch andere Cyberkriminelle. Die Zahl der zu dem geschlossenen Netz gehörenden Computer, die mit TDSS infiziert sind, beträgt einige zehntausend.


Teil des Codes von kad.dll, der für die Übermittlung der Befehle
der Cyberkriminellen an TDL-4 verantwortlich ist

Zudem ermöglicht der Zugriff auf das Kad-Netz den Cyberkriminellen, beliebige Dateien auf die zum Botnetz gehörenden Computer zu laden und sie für die Nutzer des P2P-Netzes verfügbar zu machen – egal, ob es sich dabei um pornografische Inhalte oder um gestohlene Datenbanken handelt.

Die Gefährlichkeit eines derartigen Botnetzes besteht darin, dass die Botnetzbetreiber selbst dann die Kontrolle über die infizierten Rechner behalten, wenn die Steuerungszentralen offline genommen werden. Allerdings hat ein solches System auch seine Tücken:

  1. Mit der Nutzung des öffentlichen Kad-Netzes riskieren die Cyberkriminellen, mit falschen Befehlen für ihr Botnetz konfrontiert zu werden.
  2. Bei der Entwicklung des Moduls kad.dll, das die Zusammenarbeit mit dem Kad-Netz sicherstellt, wird Code verwendet, der unter die freie Software-Lizenz GPL fällt
    . Das bedeutet, dass die Autoren die Lizenzvereinbarung verletzen.

Erweiterung der Funktionalität

Neben der bereits bekannten Werbefunktionalität ist TDL-4 auch mit neuen Modulen ausgerüstet. Vom eigenen „Antivirus“-Programm und dem Modul für P2P-Netze war bereits die Rede. Darüber hinaus haben die Entwickler von TDSS das Schadprogramm um weitere Module ergänzt und können ihren Kunden mit Hilfe der infizierten Rechner nun einen Service für anonymen Internetzugriff sowie eine Unterstützung für 64-Bit-Systeme anbieten.

Proxy-Server-Modul

Socks.dll ist der Name der von TDSS in den Systemprozess svchost.exe eingeschleusten Datei, die dem Erstellen eines Proxy-Servers auf einem infizierten Computer dient. Dieses Modul macht es möglich, über infizierte Computer anonym auf Internet-Ressourcen zuzugreifen.

Als eine große Anzahl infizierter Computer mit dieser Funktionalität ausgestattet war, begannen die Kriminellen, den anonymen Internetzugriff als Service anzubieten. Die Kosten für diesen Dienst betragen um die 100 US-Dollar pro Monat. Um die Arbeit möglichst angenehm zu gestalten, entwickelten die Malware-Autoren zudem eine Erweiterung für den Browser Firefox, die einen schnellen Wechsel der Proxy-Server direkt aus dem Browser heraus ermöglicht.


Erweiterung für den Browser Firefox, die anonymes Surfen im Internet
über infizierte Rechner des TDSS-Botnetzes erleichtert

Unterstützung von 64-Bit-Systemen

Das Erscheinen eines schädlichen 64-Bit-Treibers in TDSS war eine der Neuheiten der Cybercrime-Technologie im Jahr 2010. Für die Unterstützung der Arbeit mit 64-Bit-Systemen im Anwendermodus enthält TDL-4 das Modul cmd64.dll – die cmd.dll-Version für 64-Bit-Systeme. Durch die Beschränkung auf 64-Bit-Systeme stellt der Code von cmd64.dll aber lediglich die Verbindung zu den Steuerungsservern des Botnetzes her.


Befehlsliste für TDSS vom Botnetz-Steuerungsserver

Arbeit mit Suchsystemen

Das Modul cmd.dll blieb praktisch unverändert. Seine Aufgabe besteht darin, die Verbindung mit den Botnetz-Steuerungsservern herzustellen und die Ergebnisse von Werbe- und Suchsystemen zu manipulieren. In der Liste der Befehle für TDSS ist die bedeutendste Neuheit das Kommando SetName, das jedem infizierten Computer seine eigene Nummer zuordnet. Bei der Arbeit mit Suchsystemen und Bannernetzen setzt TDSS dieselben Technologien ein, die auch andere Schadprogramme zum Hochtreiben der Klicks und des Traffics verwenden. Allerdings verfügt TDSS über die längste Liste von Suchsystemen, deren Trefferlisten der Schädling manipuliert.


Liste von Suchsystemen, die TDSS manipuliert

Steuerungsserver des Botnetzes

Während seiner Arbeit nutzt TDSS verschiedene Quellen, um an die Adressliste der Steuerungsserver zu gelangen. Standardmäßig wird die Liste der Datei cmd.dll entnommen. Sollten die Server nicht verfügbar sein, wird die Liste aus cfg.ini gezogen. Steht in der Liste von cfg.ini aus irgendeinem Grund kein einziges Steuerungszentrum, wird die Liste aus der verschlüsselten Datei bckfg.tmp zusammengestellt, die der Bot vom Steuerungsserver bei der ersten Verbindung mit diesem erhält. Seit Beginn dieses Jahres wurden rund weltweit etwa 60 Administrationsserver des Botnetzes aufgespürt.

Adresse des
Steuerungsservers
Adresse des Servers
– Stand Anfang Februar
Adresse des Servers –
Stand Anfang März
Anteil der Verweise
in den Listen der
Steuerungszentren
01n02n4cx00.cc noip noip 0,05%
01n02n4cx00.com 91.212.226.5 noip 0,43%
01n20n4cx00.com 91.212.226.5 91.193.194.9 0,21%
0imh17agcla.com 77.79.13.28 91.207.192.22 0,80%
10n02n4cx00.com 194.28.113.20 194.28.113.20 0,22%
1il1il1il.com 91.212.158.72 91.212.158.72 6,89%
1l1i16b0.com 91.193.194.11 91.193.194.11 0,43%
34jh7alm94.asia 205.209.148.232 noip 0,03%
4gat16ag100.com noip noip 2,07%
4tag16ag100.com 178.17.164.129 91.216.122.250 6,69%
68b6b6b6.com noip noip 0,03%
69b69b6b96b.com 91.212.158.75 noip 6,89%
7gaur15eb71.com 195.234.124.66 195.234.124.66 6,85%
7uagr15eb71.com noip noip 2,07%
86b6b6b6.com 193.27.232.75 193.27.232.75 0,14%
86b6b96b.com noip noip 0,24%
9669b6b96b.com 193.27.232.75 193.27.232.75 0,22%
cap01tchaa.com noip noip 2,19%
cap0itchaa.com noip noip 0,58%
countri1l.com 91.212.226.6 91.212.158.72 6,89%
dg6a51ja813.com 91.216.122.250 93.114.40.221 6,85%
gd6a15ja813.com 91.212.226.5 91.212.226.5 2,07%
i0m71gmak01.com noip noip 0,80%
ikaturi11.com 91.212.158.75 noip 6,89%
jna0-0akq8x.com 77.79.13.28 77.79.13.28 0,80%
ka18i7gah10.com 93.114.40.221 93.114.40.221 6,85%
kai817hag10.com noip noip 2,07%
kangojim1.com noip noip 0,14%
kangojjm1.com noip noip 0,24%
kur1k0nona.com 68.168.212.21 68.168.212.21 2,19%
l04undreyk.com noip noip 0,58%
li1i16b0.com noip noip 0,05%
lj1i16b0.com noip noip 0,05%
lkaturi71.com noip noip 0,14%
lkaturl11.com 193.27.232.72 193.27.232.72 0,22%
lkaturl71.com 91.212.226.6 91.212.158.72 7,13%
lo4undreyk.com 68.168.212.18 93.114.40.221 2,19%
n16fa53.com 91.193.194.9 noip 0,05%
neywrika.in noip noip 0,14%
nichtadden.in noip noip 0,02%
nl6fa53.com noip noip 0,03%
nyewrika.in noip noip 0,03%
rukkeianno.com noip noip 0,08%
rukkeianno.in noip noip 0,08%
rukkieanno.in noip noip 0,03%
sh01cilewk.com 91.212.158.75 noip 2,19%
sho1cilewk.com noip noip 0,58%
u101mnay2k.com noip noip 2,19%
u101mnuy2k.com noip noip 0,58%
xx87lhfda88.com 91.193.194.8 noip 0,21%
zna61udha01.com 195.234.124.66 195.234.124.66 6,85%
zna81udha01.com noip noip 2,07%
zz87ihfda88.com noip noip 0,43%
zz87jhfda88.com 205.209.148.232 205.209.148.233 0,05%
zz87lhfda88.com noip noip 0,22%

Bei genauerer Betrachtung der oben stehenden Liste stellt man fest, dass sich die IP-Adressen der Steuerungsserver ständig ändern, jedoch einige Steuerungszentren aufhören zu funktionieren. Diese Veränderungen sind durch die Verwendung von Proxy-Servern bedingt, die den wahren Standort der Steuerungszentren verschleiern.

Statistik der Steuerungsserver

Trotz der von den Cyberkriminellen ergriffenen Maßnahmen zum Schutz der Botnetz-Steuerungszentren ist es mit Hilfe des Kommunikationsprotokolls von TDL-4 möglich, spezielle Anfragen an die Steuerungszentren zu erstellen und so eine Statistik über die Menge der infizierten Rechner zu erhalten. Eine von Kaspersky Lab durchgeführte Analyse der so erhaltenen Daten hat drei einzelne MySQL-Datenbanken zutage gefördert, die sich in Moldawien, Litauen und den USA befinden und die Arbeit des Botnetzes hinter den Proxy-Servern unterstützen.

Den Informationen aus diesen Datenbanken zufolge wurden allein in den ersten drei Monaten des Jahres 2011 weltweit 4.524.488 Computer mit TDL-4 infiziert.


Verteilung der mit TDL-4 infizierten Computer nach Ländern

Fast ein Drittel der befallenen Computer befindet sich in den USA. Den Einschätzungen von Partnerprogrammen zufolge kostet die Infizierung einer solchen Menge an Rechnern in den USA 250.000 US-Dollar. Diese sind vermutlich auch in die Taschen der TDSS-Entwickler gewandert. Bemerkenswert ist, dass russische Anwender nicht in der Statistik erscheinen. Das liegt daran, dass Partnerprogramme kein Geld für die Infizierung russischer Computer bieten.

Das ist noch nicht das Ende!

Der Titel des letzten Kapitels in unseren Artikeln über TDSS bleibt traditionell unverändert. Auch jetzt haben wir wieder allen Grund zu der Annahme, dass TDSS weiterentwickelt wird. Die aktive Nachbearbeitung des TDL-4-Codes, das Rootkit für 64-Bit-Systeme, der Start vor dem Booten des Betriebssystems, die Verwendung von Exploits aus dem Stuxnet-Arsenal Stuxnet-Arsenal, der Einsatz von P2P-Technologie, der eigene „Antivirus“ und viele andere Faktoren verleihen dem Schadprogramm TDSS einen Platz in der ersten Reihe der technisch höchstentwickelten und am schwierigsten zu analysierenden Computerschädlinge. Das mehr als 4,5 Millionen infizierte Rechner umfassende Zombie-Netz wird von den Cyberkriminellen für Machenschaften mit Werbung und Suchsystemen genutzt, ermöglicht ihnen anonymen Zugriff auf das Internet und dient der Installation weiterer Schadprogramme.

TDSS und das Botnetz, das von diesem Schädling befallene Computer vereint, verursacht sowohl Anwendern als auch Experten für IT-Sicherheit noch immer eine Menge Unannehmlichkeiten. Dieses dezentralisierte, serverlose Botnetz ist praktisch unzerstörbar, was durch die Epidemie des Wurms KIDO einmal mehr bestätigt wurde.

Der Artikel und Zitate daraus dürfen unter Nennung des Unternehmens Kaspersky Lab sowie des Autors frei veröffentlicht werden.

Ähnliche Beiträge

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.