Il ransomware FTCode
FTCode è un tipo di ransomware che si diffonde tramite e-mail di spam ed è in grado di eseguire il suo payload dannoso basato su PowerShell solo in memoria, senza scaricare alcun file sul disco.
È stato visto per la prima volta in natura nel 2013, ma ora è una minaccia di rete molto più seria perché la maggior parte delle attuali workstation Windows ha PowerShell installato per impostazione predefinita.
Cos’è FTCode?
FTCode è un ceppo di ransomware, progettato per criptare i dati e costringere le vittime a pagare un riscatto per restituirli.
È completamente scritto in PowerShell, il che significa che può criptare i file su un dispositivo Windows senza scaricare altri componenti.
FTCode carica il suo codice eseguibile solo in memoria, senza salvarlo su disco, per impedirne il rilevamento da parte dell’antivirus.
La prima apparizione di FTCode risale probabilmente al 2013 ed è stato originariamente identificato da Sophos. Tuttavia, all’epoca non rappresentava un rischio serio perché PowerShell è installato per impostazione predefinita solo da Windows 7 in poi.
Oggi quasi tutte le macchine Windows hanno almeno Windows 7, quindi il malware basato su PowerShell come FTCode rappresenta un rischio molto maggiore.
Il ransomware FTCode viene distribuito principalmente tramite e-mail di spam contenenti un modello Word infetto in lingua italiana.
L’utente deve aprire l’allegato e disabilitare la modalità di visualizzazione protetta, quindi viene eseguita una macro dannosa che esegue il FTCode PowerShell.
Come funziona il malware?
Una volta che un utente viene indotto con l’inganno ad aprire il modello di Word infetto e viene eseguita la macro, si verificano i seguenti passaggi.
Questa discussione si basa sulla ricerca di Certego e rappresenta il comportamento della versione 930.5 del malware, le versioni future potrebbero mostrare un comportamento diverso.
La macro attiva la funzione DownloadString, che carica il codice di PowerShell in memoria, senza salvarlo su disco. Utilizza il comando PowerShell iex (invoke expression) per eseguire il codice dannoso.
Una volta in esecuzione, FTCode esegue quindi una richiesta GET per scaricare JasperLoader, una backdoor che scaricherà payload aggiuntivi. JasperLoader è uno script di Visual Basic che viene salvato in C: \ Users \ Public \ Libraries \ WindowsIndexingService.vbs.
Crea un file di collegamento chiamato WindowsIndexingService.lnk nella cartella di avvio dell’utente e crea un’attività pianificata denominata WindowsApplicationService, per eseguire il collegamento dopo ogni riavvio.
Quando il collegamento viene eseguito, verifica prima la presenza di file con estensione .FTCode e, se sono presenti, presume che il computer sia già stato attaccato ed esce.
Questo crea un modo per impedire l’esecuzione di FTCode, creando alcuni file con estensione .FTCode da qualche parte sulla macchina, con qualsiasi contenuto.
Genera un identificatore univoco globale e una password con 50 caratteri di cui almeno quattro caratteri non alfanumerici.
Una chiave pubblica RSA codificata viene utilizzata per criptare la password e può essere decifrata solo con la chiave privata dell’attaccante. Tuttavia, durante la comunicazione con il server di comando e controllo, FTCode invia una versione non crittografata della password nella codifica base64.
Ciò significa che nelle attuali varianti di FTPCode, il monitoraggio della comunicazione con il server dell’attaccante può fornire la password in grado di decodificare i file crittografati dell’utente.
Come agisce FTCode?
FTCode esegue una richiesta POST al proprio server e trasmette il numero di versione, la versione di PowerShell, l’ID univoco della vittima e la password codificata in base64.
Esegue quindi i seguenti comandi di PowerShell per impedire all’utente di ripristinare i propri file criptati:
bcdedit /set exgdccaxjz bootstatuspolicy ignoreallfailures
bcdedit /set exgdccaxjz recoveryenabled no
wbadmin delete catalog -quiet
wbadmin delete systemstatebackup
wbadmin delete backup
vssadmin delete shadows /all /quiet
Verifica poi la presenza di unità disco attive e cerca file con estensioni comuni come .mp4, .wav, .csv, .xls, ecc. FTCode esordisce criptando i primi byte di ciascun file utilizzando la crittografia a chiave simmetrica Rijndael e aggiunge l’estensione .FTCode .
FTCode crea infine la richiesta di riscatto come file denominato READ_ME_NOW.htm in tutte le cartelle che contengono file criptati.