Meine Bibliothek
Meine Bibliothek

+ Zur Bibliothek hinzufügen

Support

Ihre Anfragen

Rufen Sie uns an

+7 (495) 789-45-86

Profil

Zurück zu News

Trojan.DnsAmp.1 — Details zur Bedrohung

Hanau, 14. August 2014

Die Virenanalysten des IT-Sicherheitsspezialisten Doctor Web präsentieren eine detaillierte Beschreibung des Trojaners Trojan.DnsAmp.1.

Trojan.DnsAmp.1 ist ein Trojanerprogramm, das von chinesischen Virenschreibern zum Starten von DDoS-Angriffen entwickelt wurde. Der Schädling stellt eine Windows-kompatible Version des Linux.DnsAmp-Programms. Über die Verbreitung des Trojaners wurde im Mai 2014 berichtet. Der Trojaner besteht aus einem Dropper, der eine böswillige Datei auf der Festplatte des Rechners platziert, und Dateien, unter denen sich eine mit einer böswilligen Funktion ausgerüstet ist. Trojan.DnsAmp.1 ist in der Lage, mehrere DDoS-Attacken zu starten, und zwar Syn Flood, UDP Flood, Ping Flood, HTTP Get Flood. Er kann auch weitere böswillige Anwendungen herunterladen und auf dem infizierten Rechner starte.

Dropper

Der Dropper liest 0x90 Bites am Ende der Datei. Danach wird er durch den Algorithmus RC4 mit dem Schlüssel {F918FE01-164A-4e62-9954-EDC8C3964C1B} entschlüsselt. Die entschlüsselten Daten haben die nachfolgende Struktur:

struct DROP_INFO
{
    char szFirstDrop[0x40]; // Name der ersten Datei
    DWORD dwFirstDropData; // Verschiebung bis zur ersten Datei 
    DWORD dwFirstDropSize; // Größe der ersten Datei
    char szSecondDrop[0x40]; // Name der zweiten Datei
    DWORD dwSecondDropData; // Verschiebung bis zur zweiten Datei
    DWORD dwSecondDropSize; // Größe der zweiten Datei 
}

Die Daten sind in Bereichen wie "dwSecondDropData - dwFirstDropData" und "Filesize + 0x90 – dwSecondDropData" platziert. Danach entschlüsselt der Dropper Dateien durch den Algorithmus RC4 mit dem Schlüssel {E5A42E7E-8130-4f46-BECC-7E43235496A6} für die erste Datei und dem Schlüssel {ADAB6D32-3994-40e2-8C18-2F226306408C} für die zweite Datei. Die Dateien werden im Verzeichnis %TEMP% gespeichert, nachdem sie gestartet werden.

Unter den Dateien befindet sich Trojan.DnsAmp.1.

Installation

Der Trojaner installiert sich im System unter dem Deckmantel von Windows Test My Test Server 1.0 und erstellt seine eigene Kopie im Verzeichnis %System32% unter dem Namen vmware-vmx.exe. Nachdem sich der Schädling gestartet hat, prüft er das laufende Datum. Wenn es früher als am 21.02.2013, unternimmt der keinen Aktionen.

Böswillige Funktionen

Nachdem der Trojaner eine Verbindung zu zwei Verwaltungsservern hergestellt hat, schickt er an diese Server alle von ihm gesammelten Daten. Wenn auf dem infizierten Rechner das Betriebssystem Windows 7 oder Windows NT verwendet wird, то haben die versendeten Daten eine Struktur von PC_INFO_WIN7. Für andere Windows-Versionen ist die Struktur PC_INFO vorgesehen.

struct PC_INFO
{
    DWORD signature; //"UU\t"
    char szOSVersion[16]; Version des Betriebssystems
    DWORD dwSpuSpeed; // CPU, MHz
    BYTE dummy[492]; // Nullen
}
 
struct PC_INFO_WIN7
{
    DWORD signature;      //"UU\t"
    char szOSVersion[16]; //Version des Betriebssystems
    BYTE dummy[48];       //Nullen
    DWORD dwSpuSpeed;     //CPU, MHz 
    BYTE dummy1[444];     //Nullen
}

Der Wert szOSVersion kann eine der nachfolgenden Zeilen sein:

Windows NT         
Windows 7          
Windows Server 2008
Windows Vista                  
Windows Server 2003
Windows XP         
Windows Server 2000

Der Trojaner versendet Daten zu den über Netzwerkoberflächen übertragenen Daten. Daten, die in diesem Strom versendet werden, sind wie folgt dargestellt:

struct PC_INFO_NETWORK_DATA
{
    DWORD signature; // "ИИ\b"
    DWORD dwPacketsCount; //Übertragene Bites
    BYTE dummy[508]; //Nullen
}

Der Trojaner kann andere böswillige Anwendungen herunterladen und starten. Nachdem die Daten versendet wurden, wartet der Schädling auf einen Befehl vom Verwaltungsserver. Die übertragenen Pakete sind wie folgt dargestellt:

struct CMD_PACKET
{
    DWORD Cmd; //Befehl
    BYTE Parameter[512]; //Parameter für die Ausführung des Befehls

Es sind drei Befehle möglich:

CmdBefehlKommentar
0x88DDoS starten
0x9ADDoS abbrechenDDoS-Flag zurücksetzen
0x77798Datei herunterladen und ausführen

Wenn ein DDoS-Angriff angeordnet wird, prüft der Trojaner den Stand des Flags. Wenn der Angriff gestartet wurde, wird der Befehl ignoriert.

Das Format des Parameter für den DDoS-Befehl ist wie folgt dargestellt:

struct DDOS_PARAMS
{
    char szHost; // С-Zeile, die eine IP-Adresse für den Angriff enthält  
    DWORD dummy[95]; //Nullen
    WORD wPort; // Host-Port, gegen das eine Attacke durchgeführt wird
    WORD dummy2; // Nullen
    DWORD dwDuration; // Dauer des DDoS-Agriffs in Sek.
    DWORD dwThreadsCount; //Anzahl von Strömen für einen DDoS-Angriff  
    DWORD dwType; // DDoS-Angriffstyp 
    DWORD dwFlag; // Zusätzliches Flag hat verschiedene Werte bei verschiedenen Angriffstypen
}

Unterstützter Angriffstyp

CmdAngriffstyp
0x01Syn Flood
0x02Syn Flood
0x03UDP Flood
0x04Ping Flood
0x05HTTP Get Flood

Beim Anpassen des Linux-Trojaners Linux an das Betriebssystem Windows verzichten die Autoren auf den Angriffstyp DNS Amplification, indem sie diesen gegen HTTP Get Flood ersetzt haben.

Herunterladen von Dateien

Um Dateien herunterzuladen, lädt der Trojaner die Bibliothek urlmon.dll herunter und erhält eine Adresse der Funktion URLDownloadToFileA. Ein Link zum Herunterladen der Datei befindet sich im Null-Parameter-Bereich der Struktur CMD_PACKET.

Die Datei wird ins Verzeichnis %TEMP% heruntergeladen. Der Dateiname wird wie folgt generiert:

DWORD GetRnd(DWORD modulus)
{
  DWORD dwTicks;
  dwTicks = GetTickCount();
  return ticks * (rand() + 3) % modulus;
}
...
dwRnd0 = GetRnd(26u) + 97;
dwRnd1 = GetRnd(26u) + 97;
dwRnd2 = GetRnd(26u) + 97;
dwRnd3 = GetRnd(26u) + 97;
dwRnd4 = GetRnd(26u) + 97;
wsprintfA(wszFileName, "%c%c%c%c%c.exe", dwRnd4, dwRnd3, dwRnd2, dwRnd1, dwRnd0);
strcat(szTmpDir, szFileName);

Meldung über die Bedrohung

Ihre Meinung ist uns wichtig!

Um dem Administrator der Webseite eine Frage zu stellen, geben Sie in Ihrem Post zunächst @admin ein. Wenn Ihre Frage an den Autor eines Kommentars adressiert ist, schreiben Sie @ und den Namen des Autors im Anschluß.


Andere Kommentare