Threat Database Backdoors BlackRota Backdoor

BlackRota Backdoor

BlackRota è una minaccia backdoor scritta nel linguaggio di programmazione Go. BlackRota sfrutta una vulnerabilità di accesso non autorizzato rilevata nell'API Docker Remote. La minaccia è in grado di compromettere sia le architetture a 64 bit che a 86 bit, ma funziona solo su sistemi Linux. Una caratteristica unica di BlackRota è l'enorme livello di offuscamento che è stato implementato dagli hacker responsabili della minaccia. È estremamente raro che il malware scritto in Go presenti misure di offuscamento così intense. In effetti, i ricercatori di infosec che hanno analizzato BlackRota affermano che si tratta del malware Go più offuscato che abbiano incontrato fino ad oggi.

Dopo essersi infiltrato nel suo obiettivo, BlackRota stabilisce quello che i ricercatori hanno chiamato un "geacon". Rappresenta un faro attraverso il quale il malware comunica con il suo server Command-and-Control per ricevere comandi ed esfiltrare i dati raccolti. Il particolare beacon implementato in BlackRota è stato precedentemente osservato per essere utilizzato da CobaltStrike, uno strumento malware utilizzato dagli autori delle minacce per diffondere ransomware. Tra le minacciose funzionalità disponibili per BlackRota c'è la capacità di eseguire comandi shell, browser, caricare e scaricare file dal sistema compromesso, cambiare directory o impostare un timer di spegnimento ritardato.

Per scoraggiare qualsiasi potenziale ricercatore dal reverse engineering, BlackRota impiega diverse tecniche di offuscamento. Innanzitutto, sfrutta uno strumento open source per il codice scritto in Go denominato gobfuscate, risultando in vari elementi del codice sottostante del malware come nomi di variabili globali e pacchetti, nomi di metodi, nomi di tipi e nomi di funzioni nascosti dietro caratteri casuali sostituzioni. La stessa app gobfuscate è anche responsabile della codifica di tutte le stringhe del codice con il cifrario crittografico XOR. Ogni stringa BlackRota viene decodificata dinamicamente durante l'esecuzione.

L'analisi del codice scritto da Go presenta sfide in sé e per sé a causa del modo in cui vengono creati i file binari. L'uso di librerie completamente statiche significa che i file binari corrispondenti raggiungono dimensioni relativamente grandi. Quando i ricercatori aprono un file di questo tipo in uno strumento di smontaggio, vengono presentate potenzialmente decine di migliaia di funzioni che, se mancano i simboli corrispondenti, potrebbero aumentare enormemente il tempo necessario per raggiungere un'analisi accettabile.

Tendenza

I più visti

Caricamento in corso...