
Uno strumento per assistere nella caccia basata sulla rete per GRU's Drovorub malware c2

Recentemente, la National Security Agency e il Federal Bureau of Investigation hanno pubblicato un rapporto che delinea le capacità di comando e controllo utilizzate dal 85° Centro Principale dei Servizi Speciali (GTsSS) dello Stato Maggiore Generale dell'Intelligence (GRU) russo, unità militare 26265, per interferire con le elezioni presidenziali statunitensi del 2016. Sebbene il rapporto contenesse dettagli tecnici sulle tecnologie malware, non forniva uno strumento su scala di rete pronto per la caccia alle minacce basata sulla rete. Oggi, Insane Forensics rende pubblico uno strumento gratuito e open source per assistere nel rilevamento e nella risposta su larga scala per il malware Drovorub del GRU utilizzando Elasticsearch e Kibana. Lo strumento fornito funziona su acquisizioni di rete esistenti (file pcap) e supporta anche la modalità di acquisizione in tempo reale.

Disclaimer: Abbiamo costruito questo strumento interamente con i dati del rapporto NSA/FBI. Non avevamo campioni di malware effettivi o acquisizioni di pacchetti. Se disponete di campioni/acquisizioni di rete o potete validare questo strumento con dati reali, contattateci.
Queste istruzioni sono solo a scopo informativo. Comprendere le variazioni necessarie per il proprio ambiente prima di procedere
pip install -r requirements.txtpython3 create_elk_index.py https://<elk ip>:9200 drovorub_test -elk_un <elk username> -elk_pw <elk password>python3 drovorubhunt.py <elk ip> drovorub_test -elk_un <username> -elk_pw <password> -pcap <pcap file>python3 drovorubhunt.py <elk ip> drovorub_test -elk_un <username> -elk_pw <password> -live <interface>python3 drovorubhunt.py <elk ip> drovorub_test -elk_un <username> -elk_pw <password> -test. Se si utilizzano dati di test, assicurarsi di impostare la finestra temporale al 2016 poiché i dati di esempio provengono da quel timestamp. Il payload dei dati di test proviene dagli screenshot del rapporto NSA/FBI.La dashboard fornita consente tecniche primarie di caccia e risposta che coprono il comando e controllo (C2) di Drovorub. Il C2 di Drovorub utilizza il protocollo WebSocket definito nell'RFC 6455. Tutte le comunicazioni WebSocket appariranno nei pannelli sorgente, destinazione e protocollo di rete della dashboard fornita. Siamo giunti a questa decisione di design per consentire un'apertura più ampia su potenziali comunicazioni WebSocket sconosciute o non decodificate oltre ai formati di comunicazione noti descritti nel rapporto.

Come analista di rete, si dovrebbe cercare di comprendere la differenza tra comunicazioni WebSocket sane e anomale nel proprio ambiente. L'anello più interno dei pannelli sorgente e destinazione mostra gli indirizzi MAC degli asset comunicanti. Il cerchio intermedio mostra gli indirizzi IP, e l'anello esterno mostra la porta. Per il pannello del protocollo di rete, l'anello interno mostra il protocollo di trasporto mentre l'anello esterno mostra i protocolli a livello applicativo. È possibile effettuare pivot facendo clic su qualsiasi valore dell'anello o sui valori a destra.

Il pannello intitolato 'Drovorub Session Tracking' consente di effettuare pivot tra gli ID di sessione presenti nelle sessioni C2 di Drovorub. Questo pannello può anche mostrare quante sessioni sono attive nell'ambiente e verso un singolo host. L'anello interno rappresenta l'ID di destinazione, l'anello intermedio rappresenta l'ID sorgente e l'anello esterno rappresenta l'ID di sessione. Nella dashboard mostrata, vediamo una sessione tra due asset comunicanti di Drovorub.

I pannelli dei moduli e delle azioni consentono di effettuare pivot per modulo o azione di Drovorub osservati. Ogni pannello rappresenta una nuvola di parole del conteggio ponderato di ciascun modulo o azione visto. È possibile effettuare pivot su un modulo particolare semplicemente cliccandovi sopra. Il clic applica un filtro Kibana all'intera dashboard. Nell'immagine sottostante, il filtro attivo mostra il traffico di comunicazione del modulo shell di Drovorub. Possiamo vedere rapidamente il traffico del modulo shell tra due host con un prompt dei comandi di livello root restituito nel campo dati.


Il resto della dashboard visualizza alcuni parametri per vari moduli e azioni. I pannelli di connessione locale del tunnel e connessione remota del tunnel sopra mostrano le informazioni del tunnel utilizzate dal modulo tunnel di Drovorub.

I campi del percorso locale e remoto mostrano informazioni su quali file sono stati richiesti e dove i file sono stati spostati. In questo caso, il file /etc/passwd è stato spostato in /tmp/passwd.
Se trovate utile questo strumento, avete bisogno di aiuto o volete contribuire, fatecelo sapere! Potete contattarci sul nostro sito web o su LinkedIn.