La maggior parte degli esperti concorderebbe sul fatto che quotidianamente si può imparare qualcosa di nuovo sul lavoro. Tuttavia, non sempre capita di imparare a cucinare un piatto delizioso mentre si analizzano dei malware. È possibile vivere questa esperienza unica grazie alla famiglia di malware di cui discutiamo in questo articolo – Casbaneiro.

Caratteristiche
Casbaneiro, noto anche come Metamorfo, è un tipico Trojan bancario progettato per colpire utenti latino americani di banche e servizi di criptovaluta in Brasile e Messico (Figura 1). Per ingannare le vittime visualizza delle finte finestre popup che tentano di convincere i malcapitati a inserire dati sensibili che verranno poi inviati all’operatore del malware.

Figura 1. Paesi in cui è stato diffuso Casbaneiro

Le funzionalità backdoor di questo malware sono quelle tipiche dei Trojan bancari latinoamericani. Può acquisire schermate e inviarle al proprio server C&C, simulare azioni del mouse e della tastiera e registrare sequenze di tasti, scaricare e installare dei propri aggiornamenti, limitare l’accesso a vari siti Web e scaricare ed avviare altri eseguibili.

Casbaneiro raccoglie le seguenti informazioni sulle sue vittime:

  • Elenco dei prodotti antivirus installati
  • Versione del sistema operativo
  • Nome utente
  • Nome computer
  • Se è installato uno dei seguenti software:
    • Diebold Warsaw GAS Tecnologia (un’applicazione per proteggere l’accesso all’Internet banking)
    • Trusteer
    • Diverse applicazioni bancarie latino americane

Sebbene sembrino esserci almeno quattro diverse varianti di questo malware, il core rimane sempre identico a quello presente nel repository GitHub analizzato dai ricercatori ESET. Tuttavia, è praticamente impossibile distinguerli l’uno dall’altro, principalmente perché alcune varianti che utilizzano un controllo delle versioni diverso, utilizzano la stessa chiave di decrittazione di stringhe e gli stessi meccanismi sono utilizzati in varianti diverse.

Inoltre, le differenze non sono importanti dal punto di vista della funzionalità, pertanto faremo riferimento a tutte queste varianti come Casbaneiro.

Casbaneiro è facile da identificare grazie all’utilizzo di un’enorme tabella di stringhe, con diverse centinaia di voci. Le stringhe vengono recuperate interrogando l’indice di questa tabella. Curiosamente, ogni volta che il malware deve ottenere una stringa, l’intera tabella di stringhe viene divisa in blocchi di testo registrati in memoria in forma crittografata, la stringa desiderata viene quindi decifrata e l’intera tabella in fine nuovamente scartata. Come mostrato dall’esempio nella Figura 2.

Figura 2. Casbaneiro ottiene una stringa dall’indice (0x205) e la decodifica

Vi sono diverse prove che questa famiglia di malware sia strettamente collegata ad Amavaldo, già descritto in altri articoli sui Trojan bancari latinoamericani. Riprenderemo queste analogie più avanti in questo documento.

Violazione degli appunti
Casbaneiro può tentare anche di sottrarre le criptovalute della vittima. Lo fa verificando il contenuto degli appunti e se i dati sembrano essere un portafoglio di criptovaluta, li sostituisce con quelli dell’attaccante. Questa tecnica non è nuova essendo già stata utilizzata da altri malware in passato, come nel caso del famigerato Trojan bancario BackSwap.
Il portafoglio dell’attaccante è codificato nel binario e attualmente ne abbiamo identificato solo uno. Esaminandolo, possiamo notare come siano già stati effettuati dei pagamenti.

Figura 3. Dettagli del portafoglio bitcoin dell’attaccante

Crittografia
Casbaneiro utilizza diversi algoritmi crittografici, ognuno dedicato alla protezione di differenti tipi di dati. Ci soffermeremo su questi nelle sezioni seguenti .

Crittografia dei comandi
I comandi ricevuti dal server C&C sono crittografati tramite AES-256, viene utilizzata la libreria SynCrypto Delphi e la chiave AES è derivata tramite SHA-256 da una password memorizzata nel file binario. Questa non è memorizzata come una stringa, ma ricostruita in fase di esecuzione ricomponendola da parti separate, come mostrato nella Figura 4.

Figura 4. La costruzione della  password “ze102030ca”usata per recuperare la chiave AES

Codifica della stringa
L’algoritmo utilizzato per crittografare le stringhe è impiegato anche in altri Trojan bancari dell’America Latina. Lo pseudocodice dell’algoritmo di decodifica può essere visto nella Figura 5. La stessa chiave viene utilizzata per tutte le stringhe. Come per la crittografia dei comandi, la chiave viene nuovamente ricostruita in fase di esecuzione, solo che questa volta è composta da molte più parti (vedere la Figura 5). Notare come vengono aggiunte anche le stringhe di spazi bianchi, ma tagliate in seguito, quindi senza alcun impatto sul risultato finale.

Figura 5. Pseudocodice di decodifica della stringa (a sinistra) e parte del codice che concatena la chiave di decrittazione della stringa (a destra). Le parti valide della chiave sono contrassegnate in rosso. L’offuscamento di stringhe di spazi bianchi è contrassegnato in viola.

Crittografia della payload
In alcune campagne di Casbaneiro, l’attuale Trojan bancario è crittografato e associato a un iniettore. L’algoritmo utilizzato per decrittografare il file binario della payload principale in questi casi è esattamente lo stesso utilizzato dall’iniettore di Amavaldo. Lo pseudocodice si trova nella figura 6.

Codifica dei dati di configurazione remoti
Infine, un quarto algoritmo viene utilizzato per decrittografare i dati di configurazione non archiviati nel file binario, ma ottenuti da remoto. Di seguito alcuni esempi di tali situazioni.

Nella Figura 6 viene mostrato che questo e gli algoritmi di decodifica della payload sono quasi identici, solo che uno per aggiornare la chiave usa il testo in chiaro e l’altro il testo cifrato. Sospettiamo che l’autore abbia riscritto il codice a mano dalla stessa fonte e commettendo però un errore in uno dei due casi.

Figura 6. Algoritmo di decodifica della payload (a sinistra) e algoritmo di decodifica dei dati remote (a destra)

Distribuzione
Riteniamo che la catena di distribuzione di Casbaneiro inizi sempre con un’email pericolosa. Alcune di queste campagne sono state descritte da FireEye, Cisco ed enSilo. Leggendo altra documentazione in merito, si potrebbe notare che la campagna descritta da Cisco utilizza uno script PowerShell molto simile a quello impiegato da Amavaldo. Anche se alcune parti differiscono, entrambi gli script provengono chiaramente da una fonte comune e utilizzano gli stessi metodi di offuscamento.

Durante la stesura di questo documento, abbiamo notato una nuova campagna che utilizzava una tecnica simile a quella descritta da enSilo, con solo alcune modifiche. L’eseguibile di Avast non viene più alterato e la payload principale, jesus.dmp, non è più crittografata e quindi non associata a un iniettore. Infine, la cartella di installazione è stata modificata in% APPDATA% Sun Javar % RANDOM% . Poiché questa campagna più recente di Casbaneiro sfrutta il sistema di riduzione degli URL bit.ly, abbiamo l’opportunità di ricavare maggiori informazioni come mostrato dalla Figura 7.

Figura 7. Statistiche Bit.ly sull’ultima campagna di Casbaneiro

Inoltre nella nostra ricerca abbiamo identificato altre due campagne precedenti.

Campagna 1: Falso aggiornamento del programma finanziario
In questa campagna, la vittima è persuasa a scaricare e installare quello che potrebbe sembrare un legittimo aggiornamento del software finanziario (vedere la Figura 8). Invece, l’installer:

  • Scarica un archivio contenente:
    • Casbaneiro mascherato da Spotify.exe
    • Alter DLL legittime DLLs
  • Estrae il contenuto dell’archivio in %APPDATA%Spotify
  • Si assicura la propria persistenza usando la chiave HKCUSoftwareMicrosoftWindowsCurrentVersionRun, Spotify = %APPDATA%SpotifySpotify.exe

Abbiamo anche riscontrato casi in cui la payload si maschera da OneDrive o WhatsApp, cambiando di conseguenza il nome della cartella di destinazione.

Figura 8. Falso programma di aggiornamento

Campagna 2:  sistema di attivazione pirata per Windows
Questa campagna è molto simile a quella descritta da enSilo; utilizza un programma di installazione MSI con un downloader JavaScript incorporato. Solo che questa volta, il programma di installazione viene distribuito in bundle con lo strumento di cracking Re-Loader che consente l’attivazione pirata di Windows o Microsoft Office. Una volta avviato il pacchetto viene immediatamente scaricato ed eseguito Casbaneiro in maniera silente, poi regolarmente il Re-Loader.
Questo metodo non è molto comune per i Trojan bancari latinoamericani e si rivela molto pericoloso perché può facilmente trarre in inganno le potenziali vittime .

Figure 9. Lo strumento di cracking Re-Loader installato insieme al Casbaneiro

Dov’è il C&C?
Gli operatori hanno fatto di tutto per nascondere l’attuale dominio e la porta usata dal server C&C, ed è una delle funzionalità più interessanti di Casbaneiro. Analizziamo ora dove sono stati nascosti i server C&C …

1) Salvati e crittografati nel file binario
La crittografia è sicuramente il metodo più semplice per nascondere l’indirizzo di un server C&C. Il dominio è crittografato con una chiave codificata mentre la porta è solo codificata. Abbiamo riscontrato casi in cui la porta è stata archiviata nella sezione dati, nel modulo Delphi o scelta casualmente all’interno di un intervallo.

2) Incorporati in un documento
Un metodo più avanzato è quello di archiviare i dati in un percorso online, in questo caso su Google Documenti. Un esempio in cui Casbaneiro utilizza questo sistema viene rappresentato nella Figura 10, in cui il documento è pieno di testo spazzatura. Il dominio crittografato è codificato con un valore esadecimale e quindi memorizzato tra i delimitatori “!”. La crittografia utilizzata è quella impiegata per tutte le altre stringhe e la porta è codificata nel file binario.

Figura 10. Il dominio del server C&C (evidenziato in rosso) crittografato e codificato con un valore esadeimale, nascosto in un documento online

Un altro modo in cui questo metodo viene utilizzato coinvolge più delimitatori. Un esempio è riportato nella Figura 11, in cui vengono impiegati diversi delimitatori per la porta C&C, il dominio C&C e l’URL utilizzato per inviare le informazioni sulla vittima. Inizialmente, questo metodo veniva impiegato per memorizzare solo la porta; gli altri dati di configurazione sono stati aggiunti nelle varianti successive.

Figura 11. Porta del server C&C (“thedoor”), dominio (“sundski”) e URL di invio delle informazioni sulla vittima (“contict”) crittografati e archiviati in un documento online

3) Incorporati  in un sito Web creato appositamente
In questo scenario, gli operatori hanno creato un falso sito Web (Figura 12) che imita quello legittimo per la visualizzazione dell’ora corrente in Brasile. Il vero dominio C&C è nascosto all’interno dei metadati della pagina Web, come si può vedere nella Figura 13, e la porta è codificata nel file binario. Abbiamo identificato almeno tre siti Web identici con URL diversi.

Figura 12. Sito Web creato dai criminali copiato da uno legittimo.

Figura 13. Comparazione tra i metadata dei siti legittimi (a sinistra) e di quelli falsi (a destra). Il tag google-site-verification contiene il dominio C&C codificato.

Una differenza importante rispetto al metodo precedente è che i dati vengono crittografati in modo diverso rispetto a tutte le altre stringhe, utilizzando l’algoritmo per decrittografare i dati di configurazione remota descritti in precedenza. Le tre chiavi richieste sono i primi 12 byte della stringa, ognuno dei quali richiede 4 byte.

4) Incorporato in un sito Web legittimo
Casbaneiro ha iniziato a sfruttare illegittimamente YouTube per diffondere gli indirizzi dei suoi server C&C. Abbiamo identificato due diversi account utilizzati dall’attore per nascondere le minacce: uno incentrato sulle ricette di cucina e l’altro sul calcio.
Quindi, dove è nascosto il server C&C? Ogni video su questi canali contiene una descrizione. Alla fine di questa descrizione, c’è un collegamento a un falso URL di Facebook o Instagram (vedere la Figura 15). Il dominio del server C&C è inserito in questo collegamento, utilizzando lo stesso schema di crittografia del caso precedente: la chiave viene archiviata all’inizio dei dati crittografati. La porta è, ancora una volta, codificata nel binario.

Figura 14. Uno dei canali YouTube usato dai criminali

Figura 15. Descrizione di uno dei video postati dai criminali. Alla fine il dominio C&C crittografato viene incorporato in un falso link Facebook (in rosso).

Ciò che rende pericolosa questa tecnica è la facilità di ingannare le vittime senza suscitare alcun sospetto. La connessione a YouTube non è considerata insolita e anche se il video viene esaminato, il collegamento alla fine della descrizione potrebbe facilmente passare inosservato.

5) Generati utilizzando dei falsi valori DNS
L’idea generale di questo metodo è quella di registrare un dominio e associarlo a un indirizzo IP falso in modo che il vero indirizzo IP possa essere derivato da quest’ultimo. L’algoritmo utilizza tre valori di input:

  1. Un dominio di base (B) – un dominio utilizzato per derivare altri domini
  2. Un elenco di suffissi (LS): un elenco di stringhe che verranno utilizzate per derivare altri domini dal dominio di base B
  3. Un numero (N): un numero utilizzato per trasformare un indirizzo IP falso in uno reale

Un dominio di base diverso viene utilizzato per il valore dominio e la porta C&C. Nella Figura 16 viene mostrato un esempio di pseudocodice. La logica di base dell’algoritmo è:

  1. Generare un dominio dal dominio di base B e risolverlo in un indirizzo IP falso (FIP)
  2. Aggiungere un numero N al FIP dell’indirizzo IP falso per ottenere l’indirizzo IP reale
  3. Per ottenere la porta, sommare gli oggetti dell’indirizzo IP reale e moltiplicare per 7

Figura 16. Pseudocodice dell’algoritmo usato per generare il dominio e la porta del server C&C utilizzando un falso valore DNS

Funzionalità di download ed esecuzione
La maggior parte dei Trojan bancari dell’America Latina, incluso Casbaneiro, per scaricare ed eseguire altri eseguibili di solito utilizzano un comando backdoor. Tuttavia, Casbaneiro impiega un’implementazione diversa di questa funzionalità. Inizialmente abbiamo pensato fosse un meccanismo di aggiornamento perché sfruttato per distribuire versioni più recenti del Trojan bancario ma, come abbiamo scoperto in seguito, non si limita solo a questo. Per la diffusione vengono effettivamente usati due diversi meccanismi.

Attraverso un documento XML
Un modo in cui viene utilizzata questa funzionalità è il download di un documento XML. I dati memorizzati in questo documento tra le etichette ## e ## sono crittografati utilizzando l’algoritmo per i dati remoti mostrato nella Figura 6.

Una volta decodificati i dati possono includere i seguenti tag:

  • – nuovo dominio del server C&C
  • – nuova porta del server C&C
  • – un URL da utilizzare per scaricare ed eseguire file

Attraverso uno speciale file di configurazione
Riteniamo che questo approccio sia utilizzato in (probabilmente un sottoinsieme di) campioni di Casbaneiro che vengono venduti ad altri criminali informatici. In questo metodo, viene scaricato un file di configurazione (come mostrato nella Figura 17) composto da più righe, ognuna contenente:

  • Un ID dell’acquirente
  • Nome file dell’archivio della payload
  • L’URL principale dove è contenuto l’archivio
  • L’URL di backup dove è contenuto l’archivio
  • Versione (non usato)
  • Un numero (non usato)
  • Data (non usato)

Questi ultimi tre valori sembrano essere completamente ignorati. La data “07/05/2018”, ad esempio, viene ancora utilizzata anche nei file di configurazione più recenti.

Figura 17: File di configurazione ottenuto da Casbaneiro

Ogni campione di Casbaneiro che utilizza questo metodo presenta l’ID dell’acquirente codificato nei propri dati. Quando scarica tale file di configurazione, lo analizza e dopo aver rintracciato la riga destinata all’ID dell’acquirente specifico, scarica ed esegue la payload.

Come mostrato nella Figura 17, la payload è sostanzialmente la stessa per tutti gli acquirenti. Tuttavia, abbiamo riscontrato un campione che ha scaricato tale file di configurazione in cui però non era presente l’ID dell’acquirente. Questo modo di distribuire payload aggiuntive offre all’autore principale (probabilmente il venditore) la possibilità di escludere alcuni acquirenti.

Oltre agli aggiornamenti di Casbaneiro, abbiamo notato altre due payload distribuite con questo metodo, che analizzeremo nelle prossime sezioni di questo documento.

Strumento email
Si tratta di uno strumento scritto in C # che registra automaticamente un gran numero di nuovi account di posta elettronica utilizzando la piattaforma di posta elettronica Brasil Online (BOL) e che in fine ne restituisce le credenziali all’attaccante.

Strumento per la sottrazione di password
Un’altra payload distribuita attraverso questa funzionalità è un semplicissimo strumento per la sottrazione di password da Outlook. Questo malware, una volta eseguito, visualizza per prima cosa una finestra che denuncia, in portoghese, un fantomatico problema con l’account Outlook della vittima. Successivamente, visualizza una falsa pagina di accesso Microsoft che richiede le credenziali di Outlook.

Figura 18: Messaggio mostrato dallo strumento per la sottrazione delle password

Figura 19: Finestra mostrata dallo strumento per la sottrazione delle password per tentare di ottenere le credenziali Outlook della vittima

Conclusioni

In questo articolo abbiamo parlato di Casbaneiro, un altro Trojan bancario latinoamericano. Abbiamo dimostrato che presenta caratteristiche comuni a questa tipologia di malware, come l’uso di finestre popup false e funzionalità backdoor. In alcune campagne, diffonde sia un iniettore sia il Trojan bancario. Nella maggior parte delle campagne si presenta come un’applicazione legittima destinata agli utenti del Brasile e del Messico.

Abbiamo individuato anche indizi determinanti che ci spingono a credere che Casbaneiro sia strettamente legato ad Amavaldo. Entrambi i malware utilizzano lo stesso algoritmo crittografico non comune nell’iniettore, in una delle loro campagne impiegano lo stesso script PowerShell e sono stati rilevati casi in cui distribuivano uno strumento di posta elettronica molto simile.

Abbiamo descritto varie tecniche impiegate da Casbaneiro per nascondere il suo indirizzo del server C&C. Questi includono l’utilizzo di documenti archiviati in remoto, siti Web legittimi e fasulli e falsi valori DNS.

Infine, abbiamo descritto due tecniche utilizzate da Casbaneiro per aggiornarsi o scaricare ed eseguire payload aggiuntive.

Attualmente la diffusione di questa minaccia è circoscritta all’America Latina, ma non è da escludere la creazione futura di versioni dedicate ai paesi dell’Europa, con particolare attenzione a quelli con forti tradizioni gastronomiche, come l’Italia.

L’articolo Casbaneiro: ricetta pericolosa con un ingrediente segreto proviene da ESET Italia security blog.

Fonte: https://blog.eset.it/2019/10/casbaneiro-ricetta-pericolosa-con-un-ingrediente-segreto/