Affluenza fallita: esponiamo l'AgenteTesla all'acqua pulita. Parte 1
Recentemente, un produttore europeo di apparecchiature per installazioni elettriche ha contattato Group-IB: il suo dipendente ha ricevuto una lettera sospetta con un allegato dannoso. Ilya Pomerantsev, uno specialista di analisi malware presso CERT Group-IB, ha condotto un'analisi dettagliata di questo file, ha scoperto lo spyware AgentTesla e ha spiegato cosa aspettarsi da tale malware e quanto sia pericoloso.
Con questo post apriamo una serie di articoli su come analizzare file così potenzialmente pericolosi, e aspettiamo i più curiosi il 5 dicembre per un webinar interattivo gratuito sull'argomento “Analisi del malware: analisi di casi reali”. Tutti i dettagli sono sotto il taglio.
Meccanismo di distribuzione
Sappiamo che il malware è arrivato al computer della vittima tramite e-mail di phishing. Il destinatario della lettera probabilmente era BCCed.
L'analisi delle intestazioni mostra che il mittente della lettera è stato falsificato. In effetti, la lettera è partita con vps56[.]oneworldhosting[.]com.
L'allegato e-mail contiene un archivio WinRar qoute_jpeg56a.r15 con un file eseguibile dannoso QOUTE_JPEG56A.exe dentro.
Ecosistema malware
Vediamo ora come si presenta l'ecosistema del malware in studio. Lo schema seguente ne mostra la struttura e le direzioni di interazione dei componenti.
Ora esaminiamo ciascuno dei componenti del malware in modo più dettagliato.
Caricatore
Fascicolo originale QOUTE_JPEG56A.exe è un compilato AutoIt v3 sceneggiatura.
Per offuscare la sceneggiatura originale, un offuscatore con similar PELock AutoIT-Obfuscatore Caratteristiche.
Il deoffuscamento viene effettuato in tre fasi:
Rimozione dell'offuscamento Per se
Il primo passaggio consiste nel ripristinare il flusso di controllo dello script. L'appiattimento del flusso di controllo è uno dei modi più comuni per proteggere il codice binario dell'applicazione dall'analisi. Trasformazioni confuse aumentano notevolmente la complessità dell'estrazione e del riconoscimento di algoritmi e strutture di dati.
Recupero fila
Per crittografare le stringhe vengono utilizzate due funzioni:
gdorizabegkvfca - Esegue la decodifica simile a Base64
xgacyukcyzxz - semplice XOR byte-byte della prima stringa con la lunghezza della seconda
Rimozione dell'offuscamento BinaryToString и Eseguire
Il carico principale viene memorizzato in forma divisa nella directory Caratteri sezioni delle risorse del file.
L'ordine di incollaggio è il seguente: TIEQHCXWFG, IME, SPDGUHIMPV, KQJMWQQAQTKTFXTUOSW, AOCHKRWWSKWO, JSHMSJPS, NHHWXJBMTTSPXVN, BFUTIFWWXVE, HWJHO, AVZOUMVFRDWFLWU.
La funzione WinAPI viene utilizzata per decrittografare i dati estratti CriptaDecrypte la chiave di sessione generata in base al valore viene utilizzata come chiave fZgFiZlJDxvuWatFRgRXZqmNCIyQgMYc.
Il file eseguibile decrittografato viene inviato all'input della funzione RunPEche svolge ProcessInject в RegAsm.exe utilizzando integrato ShellCode (conosciuto anche come EseguiPE ShellCode). La paternità appartiene all'utente del forum spagnolo non rilevabili[.]net sotto il soprannome di Wardow.
Vale anche la pena notare che in uno dei thread di questo forum è presente un offuscatore per AutoIt con proprietà simili identificate durante l'analisi del campione.
Se stesso ShellCode abbastanza semplice e attira l'attenzione solo presa in prestito dal gruppo di hacker AnunakCarbanak. Funzione di hashing delle chiamate API.
Siamo anche a conoscenza dei casi d’uso Shellcode francese versioni diverse.
Oltre alle funzionalità descritte, abbiamo individuato anche funzioni non attive:
Blocco della terminazione manuale del processo nel task manager
Riavvio di un processo figlio quando termina
Ignora l'UAC
Salvataggio del payload in un file
Dimostrazione delle finestre modali
In attesa che la posizione del cursore del mouse cambi
AntiVM e AntiSandbox
autodistruzione
Pompaggio del carico utile dalla rete
Sappiamo che tale funzionalità è tipica del protettore CypherIT, che, a quanto pare, è il bootloader in questione.
Modulo principale del software
Successivamente descriveremo brevemente il modulo principale del malware e lo considereremo più in dettaglio nel secondo articolo. In questo caso si tratta di un'applicazione attiva .NET.
Durante l'analisi abbiamo scoperto che veniva utilizzato un offuscatore ConfuserEX.
IELibrary.dll
La libreria è archiviata come risorsa del modulo principale ed è un plug-in ben noto per agente di Tesla, che fornisce funzionalità per l'estrazione di varie informazioni dai browser Internet Explorer ed Edge.
Agent Tesla è un software di spionaggio modulare distribuito utilizzando un modello malware-as-a-service sotto le spoglie di un prodotto keylogger legittimo. L'agente Tesla è in grado di estrarre e trasmettere le credenziali dell'utente da browser, client di posta elettronica e client FTP al server agli aggressori, registrare i dati degli appunti e catturare lo schermo del dispositivo. Al momento dell'analisi, il sito Web ufficiale degli sviluppatori non era disponibile.
Il punto di ingresso è la funzione Ottieni password salvate classe InternetExplorer.
In generale, l'esecuzione del codice è lineare e non contiene alcuna protezione contro l'analisi. Solo la funzione non realizzata merita attenzione Ottieni cookie salvati. Apparentemente la funzionalità del plugin avrebbe dovuto essere ampliata, ma ciò non è mai stato fatto.
Collegamento del bootloader al sistema
Studiamo come il bootloader è collegato al sistema. Il campione in studio non si ancora, ma in eventi simili si presenta secondo il seguente schema:
Nella cartella C:UtentiPubblico viene creato lo script Visual Basic
Esempio di sceneggiatura:
Il contenuto del file del caricatore viene riempito con un carattere null e salvato nella cartella %Temp%<Nome cartella personalizzata><Nome file>
Nel registro viene creata una chiave di esecuzione automatica per il file di script HKCUSoftwareMicrosoftWindowsCurrentVersionEsegui<nome script>
Quindi, sulla base dei risultati della prima parte dell'analisi, siamo riusciti a stabilire i nomi delle famiglie di tutti i componenti del malware studiato, ad analizzare il modello di infezione e anche a ottenere oggetti per la scrittura di firme. Continueremo la nostra analisi di questo oggetto nel prossimo articolo, dove vedremo più in dettaglio il modulo principale agente di Tesla. Non perdere!
A proposito, il 5 dicembre invitiamo tutti i lettori ad un webinar interattivo gratuito sul tema “Analisi del malware: analisi di casi reali”, dove l'autore di questo articolo, uno specialista del CERT-GIB, mostrerà online la prima fase di analisi del malware: decompressione semiautomatica dei campioni utilizzando l'esempio di tre mini-casi reali dalla pratica e puoi prendere parte all'analisi. Il webinar è adatto a specialisti che hanno già esperienza nell'analisi di file dannosi. La registrazione avviene rigorosamente dalla mail aziendale: зарегистрируйтесь. Ti aspetto!