Contesto: Open Directory e Threat Intelligence
Un’open directory, o directory aperta, è una vulnerabilità che si verifica quando su un server web non sono correttamente configurati i permessi di accesso ai file. Ciò rende accessibili a chiunque, anche senza autenticazione, file e directory che dovrebbero essere riservati.
Nel contesto della threat intelligence, le open directory assumono un’importanza cruciale. I threat actor, ossia gli hacker, posizionano malware e tool all’interno dei web server per poterci successivamente accedere o semplicemente avere una cartella pubblica verso internet comodamente accessibile.
Spesso i threat actor creano server virtuali e posizionano i file all’interno, senza dover necessariamente sfruttare vulnerabilità di server terzi, semplificando e velocizzando così le operazioni.
Analisi di Malware e Reverse Engineering
L’analisi di malware trovati in open directory è un’importante attività di threat intelligence. Attraverso l’analisi dei malware, gli analisti possono:
- Comprendere il comportamento del malware: identificare la tipologia, che tipo di azioni esegue e lo scopo voluto dai threat actor.
- Identificare le vulnerabilità sfruttate dal malware: questo permette di sviluppare patch e mitigare il rischio di attacchi futuri.
- Attribuire l’attacco a un gruppo specifico di threat actor: le tecniche utilizzate nel malware possono essere riconducibili a specifici gruppi, fornendo informazioni utili per le investigazioni e le attività di contrasto.
Il reverse engineering è una tecnica fondamentale per l’analisi di malware. Permette di disassemblare il codice binario del malware e ricostruirne parzialmente il codice sorgente, rendendolo più comprensibile agli analisti.
Anticipare le Minacce
L’analisi di malware trovati in open directory, combinata con il reverse engineering, può aiutare a:
- Identificare nuove varianti di malware: i threat actor modificano frequentemente il codice dei loro malware per eludere i sistemi di sicurezza. L’analisi di nuove varianti permette di aggiornare le difese in modo tempestivo.
- Prevedere le future mosse dei threat actor: comprendendo le loro tattiche e tecniche, è possibile anticipare i loro attacchi e mettere in atto misure di protezione adeguate.
Analisi: scelta dei sample
Durante le attività di ricerca da parte del team di threat intelligence di Cyberoo, è stata recentemente trovata un’open directory contenente svariati file con nomi sospetti.
Figura 1 – File contenuti nella open directory
Gli analisti del team IR di Cyberoo hanno analizzato tutti i file contenuti nella directory e hanno scoperto che svariati file sono collegati uno all’altro.
Per la scrittura di questo articolo sono stati scelti 3 file simili tra loro, con dimensioni e data di creazione simile ma aventi hash differenti. I 3 file sono i seguenti:
- Nzewxakqtk.exe
- Nvokcuobkn.exe
- Pparetcoju.exe
Al momento delle analisi i file sono rilevati da Microsoft Defender:
Figura 2 – Rilevazione di Microsoft Defender
Reverse Engineering
Da una prima analisi, i sample sono stati scritti in C# con il framework .NET, sono altamente offuscati e usano algoritmi di decifratura e hash table.
Figura 3 – Anomalie riscontrate nei file tramite il tool Malcat
Essendo i file compilati in .NET, è stato utilizzato il tool dnSpy per effettuare il reverse engineering e per debuggare il codice.
Figura 4 – File aperti con DnSpy e tutti pressoché identici tra loro
Per facilità di lettura, nel documento sono riportate le analisi di un singolo file, essendo tutti i sample identici tra loro tranne per i C2.
Prima di effettuare l’analisi statica, i file sono stati eseguiti e tramite l’utilizzo di alcuni tool, sono state tracciate le attività eseguite dai malware.
Figura 5 – Cattura del traffico durante l’esecuzione del malware
Figura 6 – Alcune delle stringhe trovate nella memoria del processo malevolo
Dalle immagini sopra, si può notare che il malware tenta di risolvere l’indirizzo cdn.discordapp[.]com, comunemente usato dagli utenti della piattaforma di comunicazione Discord e sfruttato anche dai cyber criminali per distribuire file malevoli.
Dalle analisi effettuate dal team IR di Cyberoo e dalle fonti di threat intelligence, è infatti comune l’uso di tale piattaforma come fonte di distribuzione.
Figura 7 – Funzione iniziale del malware
Dall’analisi statica è possibile vedere che gli sviluppatori hanno implementato diverse funzioni per cifrare il testo e per offuscare il codice.
Nella funzione in figura 7 il malware crea una richiesta http per scaricare un file remoto. Per velocizzare e semplificare le analisi, il codice è stato eseguito in una sessione di debug:
Figura 8 – Host remoto della prima chiamata
Figura 9 – Parametri passati nella prima chiamata
Inizialmente il malware esegue una chiamata verso il sito in figura 8, passando una richiesta in POST con i parametri in figura 9. Non è chiara l’utilità di tale chiamata, considerando che il sito www.example[.]com è un sito generico e restituisce sempre un errore, non potendo gestire la chiamata con quei parametri.
Le funzionalità del malware non dipendono da quella chiamata, quindi probabilmente è eseguita per depistare in qualche modo le analisi. Successivamente viene chiamato l’indirizzo reale che contiene il secondo stage del malware:
Figura 10 – Sezione del codice con la chiamata verso la CDN Discord
Figura 11 – C2 su Discord
Il malware chiama quindi il server Discord per tentare di recuperare il contenuto creato sulla piattaforma ma al momento delle analisi il contenuto è stato rimosso.
Qui sotto l’evidenza tramite la cattura della chiamata verso il server Discord:
Figura 12 – Chiamata e risposta del server Discord
Non essendo più disponibili i file ospitati su Discord, i 3 sample in questione sono disarmati ed innocui, considerando che le uniche attività eseguite sono quelle di download ed esecuzione dello stage successivo.
I 3 file sono quindi catalogati come downloader/loader. Le analisi di reverse engineering sono state sospese e si è continuato a lavorare nell’ambito della ricerca e della threat intelligence.
Attività di Threat Intelligence
Durante il lavoro quotidiano del team di IR, ma soprattutto durante le analisi di sample malevoli e di reverse engineering, la threat intelligence è fondamentale, in quanto può aiutare a velocizzare le analisi e ad arricchire i risultati trovati.
I team di ricerca utilizzano svariate tecniche, tool e piattaforme pubbliche e private per cercare e trovare informazioni, correlarle tra loro e completare così le analisi che altrimenti sarebbero meno utili. Cercando su VirusTotal l’hash del sample analizzato, è stato possibile procedere con ulteriori analisi.
Figura 13 – Analisi di VirusTotal
Il malware era già stato precedentemente caricato (poche ore prima), probabilmente da altri analisti per verificarne il contenuto ed effettuare un’analisi iniziale.
La cosa più interessante è stato scoprire che poche ore prima dell’analisi del team IR di Cyberoo, molto probabilmente i file dello stage successivo erano ancora presenti su Discord, in quanto le analisi su VirusTotal hanno rilevato attività compatibili con il RAT “BitRAT”:
Figura 14 – Configurazione di BitRAT e relativo C2
L’IP in questione, segnalato come malevolo, è il C2 di BitRAT.
Figura 15 – C2 BitRAT
Procedendo con le analisi dell’IP, è stato possibile recuperare la lista di alcuni degli eseguibili che comunicano con tale C2:
Figura 16 – Lista degli eseguibili malevoli che hanno comunicato con il C2
Tra i file in figura 15 si può notare che sono presenti svariati file nell’elenco in figura 1, quelli all’interno dell’open directory, come ad esempio il file stub.exe.
Figura 17 – Connessione da parte del file stub.exe verso il C2
Figura 18 – Identificazione della famiglia tramite il tool YARA e rule BitRAT
Dall’analisi dinamica si conferma che il C2 è effettivamente chiamato dal file stub.exe.
Arrivati a questo punto, si potrebbe procedere con l’analisi e reverse engineering del sample oppure, come nel nostro caso, essendo il file identificato come BitRAT, sappiamo già che è conosciuto ed è stato analizzato più volte.
Tramite articoli e fonti di Threat Intelligence si può approfondire la conoscenza di tale RAT (Remote Access Tool) e capire come funziona, che caratteristiche ha e come viene sfruttato dai threat actor.
Conclusione
L’analisi di malware trovati in open directory è un’attività di threat intelligence di primaria importanza. Attraverso l’analisi del codice e il reverse engineering, gli analisti possono ottenere informazioni cruciali per contrastare le minacce e proteggere le infrastrutture.
IOC
SHA1 dei 3 sample .net e del malware BitRAT:
Nzewxakqtk.exe 9ad29b0652b419df2840526002f2c9ae483c0f48
Nvokcuobkn.exe 5c20b6cf56287c18566e50b0249e6cd9285f3ca3
Pparetcoju.exe f718a2f84876b63d98106478b298600fab739778
Stub.exe (BitRAT) b02b8b4c0ee1f8b850e420d754ef1f398c1ebf4d
C2 BitRAT: 103.153.182[.]247
C2 downloader: cdn.discordapp.com
Distribution server/Open directory: 94.242.61[.]211