I produttori di IceXLoader hanno rilasciato la nuova versione del malware: la 3.3.3, innescando una nuova, pesante ondata di phishing.

Il loader è scritto in linguaggio Nim e si arricchisce di nuove caratteristiche, tra le quali si nota una catena di infezione multi-stadio.

IceXloader malware attack

I Minerva Labs hanno scoperto e osservato per primi questa nuova versione del malware nel Novembre 2022, dopo che una sua versione beta era stata individuata e censita dai ricercatori di Fortinet nel giugno 2022.

Gli studi hanno consentito di ricostruire le modalità di iniezione del loader e i meccanismi che lo rendono persistente nel sistema.

Si tratta di un procedimento multi-stadio di nuova generazione che riesce a rimanere invisibile ai sistema di difesa attuali come Windows Defender.

In questo articolo ne esamineremo caratteristiche, modalità d’infezione e possibili misure preventive

  1. IceXLoader: di cosa si tratta
  2. IceXLoader: come viene iniettato
  3. Quali informazioni è in grado di esfiltrare
  4. IceXLoader: come il malware persiste nei sistemi
  5. Funzionamento e aggiornamento del database C2
  6. Misure preventive per arginare la minaccia IceXLoader
  7. Conclusione

IceXLoader: di cosa si tratta

IceXLoader è un malware identificato come un dropper di malware, il che significa che la sua funzione principale è quella di scaricare e installare ulteriori malware sul sistema infetto.

È stato osservato per la prima volta nel 2019 e ha colpito principalmente utenti in Russia e nei Paesi russofoni.

Il funzionamento di IceXLoader è tipico dei dropper di malware, ovvero:

  1. il malware si infiltra nel sistema
  2. esegue azioni per eludere le misure di sicurezza, come disabilitare antivirus e firewall
  3. contatta un server di comando e controllo per scaricare e installare altri malware, come ransomware, spyware o trojan bancari

IceXLoader: come viene iniettato

Dalle ricostruzioni disponibili, il contatto con la vittima avverrebbe tramite phishing. Viene inviata una mail corrotta contenente un file .ZIP, all’esecuzione del quale ha inizio il processo di infezione.

Il file autoestraente crea poi una cartella temporanea nascosta, denominata .temp nella directory “C:\Users\\AppData\Local\Temp”.

Qui viene a configurarsi lo stadio successivo, identificato nel file eseguibile STOREM~2.exe, scritto in linguaggio .NET.

A questo punto, in funzione dalle specifiche dell’operazione in atto, il sistema vittima potrebbe essere riavviato, previa manomissione dell’iter di riavvio al fine di eliminare la cartella temporanea in fase di startup.

Successivamente, l’eseguibile STOREM~2.exe dimostra la sua natura di downloader e recupera un’immagine .png da un URL codificato (hardcoded) al proprio interno.

Il file recuperato viene svolto in un array di byte contenenti delle informazioni grazie alle quali è possibile:

  • decriptare il loader vero e proprio (IceXLoader)
  • eludere la sicurezza dei sistemi di difesa
  • operare un timeout di esecuzione delle istruzioni, cruciale per portare a termine il process hollowing.

L’ultimo punto riguarda una tecnica avanzata che gli attaccanti usano per portare a termine le loro operazioni in maniera silente.

Avviene a livello di sistema operativo ed elude le misure di sicurezza concernenti i processi in atto.

Durante il timeout imposto dagli attaccanti, il processo relativo a STOREM~2.exe va in blocco, nell’attesa che termini il lasso di tempo prestabilito.

Durante questo tempo, però, il suo address space (luogo nella memoria dove risiedono dati e informazioni relative ad un processo) viene riconfigurato per ospitare del codice malevolo.

Il tutto avviene utilizzando comuni funzioni di libreria, perciò si vanno ad eludere i sistemi di sicurezza.

IceXLoader è finalmente iniettato nel sistema vittima e verrà eseguito come ogni altro processo lecito.

Quali informazioni è in grado di esfiltrare

Non appena iniettato, il malware comincia a raccogliere informazioni sul sistema e i suoi utenti.

Queste informazioni verranno utilizzate in un secondo momento per portare a termine ulteriori attacchi.

Dalle fonti dello studio si evince che tra i dati esfiltrati sono presenti:

  • Indirizzo IP
  • informazioni sull’hardware (RAM, CPU, GPU…)
  • UUID, “Universally Unique Identifier”, identificatore standardizzato utilizzato per identificare in modo univoco oggetti o entità informatiche
  • versione di Windows adottata nel sistema
  • username e nome macchina
  • informazioni sui prodotti di sicurezza installati
  • versione di .NET presente nel sistema

I Minerva Labs evidenziano la presenza di un database SQLite nel server di comando e controllo (C2).

Il database è accessibile e contiene le informazioni di migliaia di utenti e aziende colpite.

I ricercatori hanno notificato le compagnie colpite ma il database si aggiorna continuamente con nuovi dati.

IceXLoader: come il malware persiste nei sistemi

Se il sistema non riesce a disfarsi del malware, quest’ultimo può continuare indisturbato la sua mansione di esfiltrazione dati.

Pertanto, per persistere a lungo nel sistema, IceXLoader copia se stesso in due directory:

  • C:\Users\\AppData\Roaming\Opus.exe
  • C:\Users\ \AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\Opus.exe

Inoltre, crea una nuova chiave di registro “Run” chiamata “Opus” e posta su C:\Users\\AppData\Roaming\Opus.exe.

Tutto ciò garantisce la persistenza del malware, andando ad eseguirlo più volte durante l’esercizio della macchina.

Successivamente, il loader esegue il comando “cmd /c timeout 2 & “C:\Users\\AppData\Roaming\Opus.exe”, che innesca l’avvio della nuova istanza del malware appena copiata con un timeout di due secondi, eliminando poi il file in esecuzione (STOREM~2.exe).

Resistenza agli AntiVirus

Le applicazioni su sistema operativo Windows hanno bisogno di integrarsi con gli antivirus per garantire una corretta scansione.

A questo proposito, viene offerta un’interfaccia denominata AMSI (Antimalware Scan Interface). Per aggirare l’AMSI, i produttori del malware hanno escogitato un sistema che consiste nel sovrascriverne l’API, utilizzato per la scansione dell’input dell’utente.

Windows Defender e molti altri prodotti antivirus usano AMSI per interfacciarsi, pertanto IceXLoader è capace di rimanere silente in numerosi sistemi.

I tecnici dei Minerva Labs asseriscono, inoltre, che il loader sarebbe in grado di creare ed eseguire un file .bat, atto a:

  • disabilitare l’azione di scansione in tempo reale di Windows Defender
  • imporre che la directory nella quale risiede IceXLoader non sia scansionata

Funzionamento e aggiornamento del database C2

I dati esfiltrati vengono prontamente inviati ad una lista di server C2 già codificata nell’eseguibile di IceXLoader.

La comunicazione avviene tramite richieste HTTP, nelle quali i dati postati non sono cifrati (dunque sono in chiaro).

Inoltre, secondo quanto riportato dallo studio di Fortinet, l’intestazione HTTP User-Agent corrisponde alla GUID della macchina infetta, comportandosi, così, alla stregua di un identificativo univoco per il sistema colpito.

Dettaglio di funzionamento della comunicazione

La primissima comunicazione tra la macchina colpita e il server C2 fa da apripista per le successive, aprendo un canale con il quale l’autore dell’attacco può condurre le operazioni offensive in prima persona.

IceXLoader invia una richiesta HTTP di tipo POST con l’header “SetOn” settato a “On”, in modo tale da allertare il server che si è in grado di ricevere ulteriori direttive.

Il server risponde con uno specifico comando ed accredita il loader per futuri scambi.

La macchina infetta asserisce di aver ricevuto il comando, lo inoltra e infine lo esegue. Tale comando induce IceXLoader a fornire al database remoto tutte quelle informazioni che sono state precedentemente elencate in questo articolo.

Da questo momento in poi, il loader inoltra periodicamente una richiesta al server, chiedendo ulteriori direttive da eseguire.

I ricercatori di Fortinet hanno evidenziato un discreto numero di comandi che l’attaccante può impartire al loader da remoto.

Oltre alla gestione del flusso di esecuzione del malware, è possibile:

  • aprire finestre di dialogo
  • modificare l’entità dell’intervallo temporale dopo il quale il loader chiede nuovi comandi
  • effettuare il download di file da specifici URL ed, eventualmente, innescarne l’esecuzione (questa istanza è utilizzata per importare nuovi malware nella macchina già compromessa)
  • rimuovere ogni traccia del loader e terminare per sempre l’esecuzione

Per quanto riportato da Fortinet, un malware molto usato tramite IceXLoader risulta essere il DcRat, iniettato come primo malware subito dopo lo stanziamento del loader.

Un malware non ancora definito, inoltre, verrebbe utilizzato come apripista per installare dei cryptominer (software parassiti, che usano le risorse della macchina infetta per produrre criptovalute).

Misure preventive per arginare la minaccia IceXLoader

Grazie al susseguirsi di analisi più dettagliate circa la struttura ed il funzionamento di IceXLoader, è ad oggi possibile adottare delle soluzioni software mirate, specifiche per ogni versione.

Tuttavia, dato che la minaccia è in continuo aggiornamento, è bene provare ad eliminare il problema agendo da un’altra angolazione.

Questa minaccia utilizza il phishing come veicolo per entrare nei sistemi.

Come già accennato, vengono preferite delle e-mail corrotte: qualora l’utente interagisse con esse, il loader si insedierebbe immediatamente nel sistema. Pertanto, una corretta sensibilizzazione sul tema phishing è fondamentale per contenere il fenomeno, specialmente in ambito aziendale.

Conclusione

Il loader IceXLoader si aggiorna per offrire più funzionalità agli attaccanti che lo utilizzano.

Ha il compito di esfiltrare dati dalla macchina infetta e di fare da vettore per nuovi attacchi

. Pertanto, per prevenire questo fenomeno, si può intervenire:

  • con software specifici (poiché, come abbiamo visto, il malware è in grado di aggirare i comuni sistemi di sicurezza)
  • sensibilizzando gli utenti sul tema phishing, che è il principale veicolo di infezione per quanto concerne IceXLoader.