I ricercatori di ESET hanno scoperto una backdoor collegata al malware utilizzato dal gruppo Stealth Falcon, autore di diversi attacchi spyware mirati contro giornalisti, attivisti e dissidenti in Medio Oriente.
Stealth Falcon è un gruppo attivo dal 2012 le cui attività vengono costantemente controllate dal Citizen Lab, un’organizzazione no profit focalizzata sulla sicurezza e sui diritti umani, che ha pubblicato un’analisi su un particolare attacco informatico nel 2016. Nel gennaio del 2019, Reuters ha divulgato un rapporto investigativo sul Progetto Raven, un’iniziativa che presumibilmente impiega ex agenti della NSA e indirizzata sugli stessi tipi di obiettivi di Stealth Falcon.
Sulla base di questi due rapporti riferiti agli stessi obiettivi e attacchi, il Senior Technologist di Amnesty International, Claudio Guarnieri, ha concluso che Stealth Falcon e Project Raven sono effettivamente lo stesso gruppo.

Figura 1. Claudio Guarnieri ha collegato Stealth Falcon al Progetto Raven
Alcune informazioni tecniche su Stealth Falcon sono già state rese pubbliche, in particolare nella già citata analisi del Citizen Lab.
Il componente chiave dell’attacco documentato nel rapporto Citizen Lab era una backdoor basata su PowerShell, diffusa attraverso un documento pericoloso allegato a un’e-mail sospetta.
Ora, abbiamo individuato una backdoor binaria precedentemente non segnalata che abbiamo chiamato Win32/StealthFalcon. In questo articolo, sveliamo somiglianze tra questa backdoor binaria e lo script PowerShell con funzionalità backdoor attribuite al gruppo Stealth Falcon. Consideriamo le somiglianze come una prova evidente che Win32 / StealthFalcon è stato creato da questo gruppo.
La backdoor Win32 / StealthFalcon, che sembra essere stata creata nel 2015, consente all’attaccante di controllare da remoto il computer infetto. Abbiamo registrato un numero limitato di obiettivi negli Emirati Arabi Uniti, in Arabia Saudita, in Thailandia e nei Paesi Bassi; in quest’ultimo caso, l’obiettivo era una missione diplomatica in un paese del Medio Oriente. Il modo in cui la backdoor è stata distribuita ed eseguita sui sistemi va oltre lo scopo di questa indagine; la nostra analisi si concentra sulle sue capacità e sulla sua comunicazione C&C.
Comunicazione C&C
Per comunicare con il server C&C, Win32 / StealthFalcon utilizza il componente standard Windows Intelligent Transfer Service (BITS), una tecnica piuttosto insolita. BITS è stato progettato per trasferire grandi quantità di dati limitando l’impatto sulla banda di rete, inviando i dati con throughput limitato, in modo da non influire sul trasferimento dati di altre applicazioni. Comunemente viene usato da programmi di aggiornamento, messenger e altre applicazioni progettate per funzionare in background. Ciò significa che è più probabile che le attività BITS non vengano bloccate dai firewall basati su host.
Rispetto alla comunicazione tradizionale tramite funzioni API, il meccanismo BITS è esposto attraverso un’interfaccia COM e quindi più difficile da rilevare per un prodotto di sicurezza. Inoltre, risulta quindi affidabile e invisibile. Il trasferimento riprende automaticamente in seguito al ripristino di situazioni bloccanti come un’interruzione della rete, la disconnessione dell’utente o un riavvio del sistema. Inoltre, poiché BITS regola la velocità con cui i file vengono trasferiti in base alla larghezza di banda disponibile, l’utente non ha motivo di sospettare.
Win32 / StealthFalcon può cambiare la comunicazione tra due server C&C i cui indirizzi sono memorizzati in una chiave di registro, insieme ad altri valori di configurazione, e può essere aggiornato da uno dei comandi della backdoor. Nel caso in cui la backdoor dopo un numero preconfigurato di tentativi falliti non riesca a raggiungere i suoi server C&C, viene rimossa automaticamente dal sistema compromesso.
Funzionalità
Win32 / StealthFalcon è un file DLL che, dopo l’esecuzione, si pianifica come un’attività in esecuzione a ogni accesso utente. Supporta soltanto alcuni comandi di base, tuttavia dalla nostra analisi risulta prevalentemente dedicato alla raccolta di dati, alla loro esfiltrazione, all’impiego di ulteriori strumenti dannosi e all’aggiornamento della sua configurazione.

Tabella 1: comandi della backdoor
Ad esempio, la capacità chiave della backdoor, il download e l’esecuzione di file, è ottenuta tramite controlli regolari delle librerie denominate “win * .dll” o “std * .dll” nella directory da cui viene eseguito il malware e caricando queste librerie.
Inoltre, Win32 / StealthFalcon raccoglie i file e li prepara per l’esfiltrazione memorizzando una copia crittografata con un prefisso hardcoded in una cartella temporanea. Quindi controlla periodicamente la presenza di tali file e li invia automaticamente. Dopo che i file sono stati esfiltrati con successo, il malware elimina in modo sicuro tutte le proprie voci di registro e i file raccolti – prima di eliminare i file, li riscrive con dati casuali – per impedire l’analisi forense e il recupero dei dati eliminati.
I valori di configurazione sono archiviati nella chiave del Registro di sistema HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Shell Extensions . Tutti i valori sono preceduti dal nome file del malware (senza estensione).

Tabella 2. Dati di configurazione memorizzati nel registro
Possibile tecnica per eludere il rilevamento
Da notare che si tratta di una funzione che viene eseguita prima dell’avvio di qualsiasi payload dannosa e che sembra ridondante. Fa riferimento a oltre 300 import, ma non li utilizza affatto. Invece, ritorna sempre e continua con la propria payload, senza verifiche di condizione che suggerirebbero un trucco anti-emulazione.


Figura 2. Una funzione che fa riferimento a centinaia di import non utilizzati, eventualmente aggiunti per evitare il rilevamento del malware
Non conosciamo l’intenzione precisa di questa funzione, ma sospettiamo che si tratti di un tentativo di eludere il rilevamento o di qualche parte residua di un framework più ampio utilizzato dagli autori di malware.
Collegamenti a Stealth Falcon
Sia Win32 / StealthFalcon che la backdoor basata su PowerShell descritta nell’analisi di Citizen Lab condividono lo stesso server C&C: l’indirizzo windowsearchcache [.] Com è stato utilizzato come ” fase due C2 del dominio del server ” nella backdoor analizzata da Citizen Lab e anche in una delle versioni di Win32 / StealthFalcon.
Entrambe le backdoor mostrano significative somiglianze nel codice e la logica di base viene preservata, sebbene siano scritte in lingue diverse. Entrambi utilizzano identificativi codificati (molto probabilmente ID campagna / ID target). In entrambi i casi, tutte le comunicazioni di rete dal sistema compromesso sono precedute da questi identificatori e crittografate con RC4 utilizzando una chiave codificata.
Per la comunicazione con il server C&C, entrambi utilizzano il protocollo HTTPS, ma impostano flag specifici per la connessione in modo da ignorare il certificato del server.
Conclusioni
Abbiamo scoperto e analizzato una backdoor con una tecnica non comune per la comunicazione C&C – utilizzando Windows BITS – e alcune tecniche avanzate per impedire il rilevamento, l’analisi e per garantire la persistenza complicando così notevolmente l’analisi forense. Analogie nel codice e nell’infrastruttura con un malware precedentemente noto di Stealth Falcon ci portano alla conclusione che la backdoor Win32 / StealthFalcon sia frutto del lavoro dello stesso gruppo di criminali.





1 Commento