La mia libreria
La mia libreria

+ Aggiungi alla libreria

Supporto
Supporto 24/7 | Regole per contattare

Richieste

Profile

Torna alla lista delle notizie

Trojan.DnsAmp.1 — dettagli della minaccia informatica

14 agosto 2014

Doctor Web presenta una descrizione tecnica dettagliata del programma malevolo Trojan.DnsAmp.1.

Il Trojan.DnsAmp.1 è stato creato dagli autori dei virus cinesi per il fine di esecuzione di attacchi DDoS. È una versione compatibile con Windows del malware Linux.DnsAmp, del quale Doctor Web ha informato a maggio 2014. Il trojan è costituito da un dropper che salva il programma malevolo sul disco del computer e da diversi file, uno dei quali include le principali funzioni dannose. Il Trojan.DnsAmp.1 può effettuare gli attacchi DDoS di diversi generi, in particolare Syn Flood, UDP Flood, Ping Flood, HTTP Get Flood, nonché può scaricare ed avviare altri programmi malevoli sul computer compromesso.

Dropper

Legge 0x90 byte dalla fine del file, dopodiché decifra questi dati tramite l'algoritmo RC4 con la chiave {F918FE01-164A-4e62-9954-EDC8C3964C1B}. La struttura dei dati decifrati è la seguente:

struct DROP_INFO
{
    char szFirstDrop[0x40]; // nome del primo file
    DWORD dwFirstDropData; // deviazione per il primo file
    DWORD dwFirstDropSize; // dimensione del primo file
    char szSecondDrop[0x40]; // nome del secondo file
    DWORD dwSecondDropData; // deviazione per il secondo file
    DWORD dwSecondDropSize; // dimensione del secondo file
}

I dati dei file si trovano alla deviazione: "dwSecondDropData - dwFirstDropData" e "Filesize + 0x90 – dwSecondDropData". In seguito il dropper decifra i file tramite l'algoritmo RC4 con la chiave {E5A42E7E-8130-4f46-BECC-7E43235496A6} per il primo file e con la chiave {ADAB6D32-3994-40e2-8C18-2F226306408C} per il secondo. I file vengono salvati nella cartella %TEMP% e vengono eseguiti.

Uno dei file è il Trojan.DnsAmp.1

Installazione

Il trojan si installa nel sistema sotto forma del servizio di Windows eseguito in automatico Test My Test Server 1.0 e crea la propria copia vmware-vmx.exe nella cartella %System32%. Dopo l'avvio, il programma controlla la data corrente, se è inferiore a 2013-02-21, il trojan rimane inattivo.

Funzioni dannose

Il trojan si connette a due server di controllo e ci manda le informazioni sul sistema. Se sul computer infetto viene utilizzato l'SO Windows 7 o Windows NT, le informazioni mandate hanno la struttura PC_INFO_WIN7, in caso degli altri versioni di Windows, la struttura dei dati è PC_INFO.

struct PC_INFO
{
    DWORD signature; //"UU\t"
    char szOSVersion[16]; //versione dell'SO
    DWORD dwSpuSpeed; //velocità CPU in MHz
    BYTE dummy[492]; //zero
}
 
struct PC_INFO_WIN7
{
    DWORD signature;      //"UU\t"
    char szOSVersion[16]; //versione dell'SO
    BYTE dummy[48];       //zero
    DWORD dwSpuSpeed;     //velocità CPU in MHz
    BYTE dummy1[444];     //zero
}

Il valore szOSVersion può corrispondere ad una delle seguenti stringhe:

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

In un flusso separato, il malware manda sul server le informazioni circa la quantità di byte trasferiti attraverso le interfacce di rete. Le informazioni mandate in questo flusso hanno la forma:

struct PC_INFO_NETWORK_DATA
{
    DWORD signature; // "ИИ\b"
    DWORD dwPacketsCount; // Numero di byte trasferiti calcolato
    BYTE dummy[508]; //zero
}

Il trojan può scaricare sul computer infetto altri programmi dannosi ed eseguirli. Inviate le informazioni, il trojan aspetta comandi dal server di controllo. I pacchetti accettati dal trojan hanno la forma:

struct CMD_PACKET
{
    DWORD Cmd; //comando
    BYTE Parameter[512]; //parametro di esecuzione del comando
}

Sono possibili tre comandi:

CmdComandoCommento
0x88Inizia attacco DDoS
0x99Ferma attacco DDoSViene disattivato il flag DDoS
0x77798Scarica ed avvia file

Quando il trojan riceve il comando di iniziare un attacco DDoS, prima controlla lo stato corrente del relativo flag: se l'attacco è già in corso, non esegue questo comando.

Il parametro del comando di esecuzione dell'attacco DDoS ha il seguente formato:

struct DDOS_PARAMS
{
    char szHost; // C - stringa che contiene l'indirizzo IP da attaccare
    DWORD dummy[95]; //zero
    WORD wPort; // porta dell'host da attaccare
    WORD dummy2; // zero
    DWORD dwDuration; // durata dell'attacco DDoS in secondi
    DWORD dwThreadsCount; //numero di flussi per l'attacco DDoS
    DWORD dwType; // tipo di attacco DDoS
    DWORD dwFlag; // flag supplementare, ha un valore diverso per diversi tipi di attacco
}

Поддерживаемый тип атак

CmdTipo di attacco
0x01Syn Flood
0x02Syn Flood
0x03UDP Flood
0x04Ping Flood
0x05HTTP Get Flood

Quando gli autori hanno modificato il trojan, originariamente scritto per Linux, per essere compatibile con l'SO Windows, hanno rinunciato al tipo di attacco DNS Amplification, sostituendolo con il tipo HTTP Get Flood.

Download di file

Per scaricare file, il trojan carica nella memoria la libreria urlmon.dll e ottiene l'indirizzo della funzione URLDownloadToFileA. Il link al download del file si trova alla deviazione dello zero del parametro Parameter della struttura CMD_PACKET.

Il file viene scaricato nella cartella %TEMP% e il nome di file viene formato come segue:

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);

Notizia sulla minaccia informatica

La tua opinione conta per noi

Per fare una domanda relativa alla notizia all'amministrazione del sito, inserire @admin all'inizio del commento. Se una domanda si fa all'autore di uno dei commenti — inserire @ prima del suo nome.


Altri commenti