In un post precedente è stato illustrato un esempio pratico di come l’attribuzione delle minacce aiuta nelle indagini sugli incidenti. È stato inoltre presentato Kaspersky Threat Attribution Engine (KTAE), il nostro strumento per formulare un’ipotesi plausibile in merito a quale gruppo APT specifico appartiene un campione di malware. Per dimostrarlo, abbiamo utilizzato il Kaspersky Threat Intelligence Portal, uno strumento basato sul cloud che fornisce l’accesso a KTAE come parte del nostro servizio completo di analisi delle minacce, insieme a una sandbox e a uno strumento di ricerca per similarità senza attribuzioni. I vantaggi di un servizio cloud sono ovvi: i clienti non devono investire in hardware, installare o gestire software. Tuttavia, come mostra l’esperienza nel mondo reale, la versione cloud di uno strumento di attribuzione non è per tutti…
In primo luogo, alcune organizzazioni sono vincolate da restrizioni normative che vietano rigorosamente ai dati di lasciare il proprio perimetro interno. Per gli analisti della sicurezza di queste aziende, il caricamento dei file in un servizio di terze parti è fuori discussione. In secondo luogo, alcune aziende impiegano ricercatori delle minacce accaniti che necessitano di un toolkit più flessibile, che consenta loro di lavorare con la propria ricerca proprietaria insieme a Kaspersky Threat Intelligence. Ecco perché KTAE è disponibile in due versioni: una versione basata sul cloud e una distribuzione in locale.
Quali sono i vantaggi di KTAE in locale rispetto alla versione cloud?
Prima di tutto, la versione locale di KTAE assicura che un’indagine rimanga completamente riservata. Tutta l’analisi ha luogo direttamente nella rete interna dell’organizzazione. La sorgente delle informazioni sulle minacce è un database distribuito all’interno del perimetro aziendale; è ricco di indicatori univoci e dati di attribuzione di ogni campione dannoso noto ai nostri esperti; e contiene inoltre le caratteristiche relative ai file legittimi per escludere i rilevamenti di falsi positivi. Il database riceve aggiornamenti regolari, ma funziona in modo unidirezionale: nessuna informazione lascia mai la rete del client.

Inoltre, la versione locale di KTAE offre agli esperti la possibilità di aggiungere nuovi gruppi di minacce al database per collegarli a campioni di malware scoperti autonomamente. Ciò significa che la successiva attribuzione di nuovi file terrà conto dei dati aggiunti dai ricercatori interni. Questo consente agli esperti di catalogare i propri cluster di malware univoci, utilizzarli e identificare le somiglianze.
Ecco un altro utile strumento per esperti: il nostro team ha sviluppato un plug-in gratuito per IDA Pro, un famoso disassembler, da utilizzare con la versione locale di KTAE.
Qual è lo scopo di un plug-in di attribuzione per un disassembler ?
Per un analista SOC in stato di allerta, attribuire un file dannoso trovato nell’infrastruttura è semplice: è sufficiente caricarlo in KTAE (cloud o locale) e ottenere un verdetto, come Manuscrypt (83%). È sufficiente per adottare le contromisure adeguate rispetto al kit di strumenti noto di quel gruppo e valutare la situazione generale. Un ricercatore delle minacce, tuttavia, potrebbe non voler prendere per buono quel verdetto. In alternativa, potrebbero chiedere “Quali frammenti di codice sono univoci in tutti gli esempi di malware utilizzati da questo gruppo?” In questo caso è utile un plug-in di attribuzione per un disassembler

All’interno dell’interfaccia di IDA Pro, il plug-in evidenzia i frammenti di codice disassemblati specifici che hanno attivato l’algoritmo di attribuzione. Questo non solo consente un approfondimento a livello di esperti nei nuovi campioni di malware; consente inoltre ai ricercatori di perfezionare al volo le regole di attribuzione. Di conseguenza, l’algoritmo, e lo stesso KTAE, continua a evolversi, rendendo l’attribuzione più accurata a ogni esecuzione.
Come impostare il plug-in
Il plug-in è uno script scritto in Python. Per renderlo operativo è necessario IDA Pro. Purtroppo non può funzionare in IDA Free, poiché non dispone del supporto per i plug-in Python. Se Python non è ancora installato, è necessario acquisirlo, impostare le dipendenze (controllare il file dei requisiti nel nostro archivio GitHub) e assicurarsi che le variabili di ambiente IDA Pro puntino alle librerie Python.
Successivamente, bisognerebbe inserire l’URL dell’istanza KTAE locale nel corpo dello script e fornire il token API (disponibile su base commerciale), proprio come avviene nello script di esempio descritto nella documentazione di KTAE.
Quindi è possibile semplicemente trascinare lo script nella cartella dei plug-in IDA Pro e avviare il disassembler. Se l’operazione è stata eseguita correttamente, dopo il caricamento e il disassembling di un campione verrà visualizzata l’opzione per avviare il plug-in Kaspersky Threat Attribution Engine (KTAE) in Modifica → Plugin:

Come utilizzare il plug-in
Quando il plug-in viene installato, ecco cosa succede dietro le quinte: il file attualmente caricato in IDA Pro viene inviato tramite API al servizio KTAE installato in locale, all’URL configurato nello script. Il servizio analizza il file e i risultati dell’analisi vengono reindirizzati a IDA Pro.
In una rete locale, lo script in genere termina il lavoro nel giro di pochi secondi (la durata dipende dalla connessione al server KTAE e dalle dimensioni del file analizzato). Una volta terminato il plug-in, un ricercatore può iniziare a scavare nei frammenti di codice evidenziati. Un doppio clic porta direttamente alla sezione pertinente nel codice binario o assembly (vista esadecimale) per l’analisi. Questi punti dati aggiuntivi consentono di individuare facilmente i blocchi di codice condivisi e di tenere traccia delle modifiche in un kit di strumenti malware.
Per ulteriori informazioni su Kaspersky Threat Attribution Engine e su come distribuirlo, consultate la documentazione ufficiale del prodotto. E per organizzare una dimostrazione o un progetto pilota, compilate il modulo nel sito Web di Kaspersky.
threat intelligence