Non tutti i professionisti della sicurezza informatica pensano che valga la pena capire esattamente chi vi sia dietro un attacco malware che li ha colpiti. Il tipico algoritmo di indagine sugli incidenti è più o meno questo: l’analista trova un file sospetto → se l’antivirus non lo ha rilevato, lo inserisce in una sandbox per test → conferma le eventuali attività dannose → aggiunge l’hash alla blocklist → va a fare una pausa caffè. Questi sono i passaggi obbligati per molti professionisti della sicurezza informatica, soprattutto quando sono sommersi da avvisi o non hanno le competenze forensi per sbrogliare un attacco complesso. Tuttavia, quando si ha a che fare con un attacco mirato, questo approccio è un biglietto di sola andata verso il disastro, ed ecco perché.
Se l’autore di attacco agisce in un quadro di maggior respiro, raramente si attiene a un singolo vettore d’attacco. È probabile che il file dannoso abbia già agito in un attacco in più fasi tanto da essere ormai di poca utilità all’utente malintenzionato, il quale avrà già scavato a fondo nell’infrastruttura aziendale e sarà pronto a operare con un set di strumenti completamente diverso. Per eliminare definitivamente la minaccia, il team di sicurezza deve scoprire e neutralizzare l’intera catena di attacco.
Ma come farlo in modo rapido ed efficace prima che gli autori dell’attacco riescano a fare un vero danno? Un modo è immergersi nel contesto. Analizzando un singolo file, un esperto può identificare esattamente chi sta attaccando la sua azienda, scoprire rapidamente quali altri strumenti e tattiche sono impiegate da quel gruppo specifico e quindi esaminare l’infrastruttura alla ricerca di eventuali minacce correlate. A tale scopo esistono molti strumenti di intelligence, ma qui mostrerò un esempio con il nostro Kaspersky Threat Intelligence Portal.
Un esempio pratico dell’importanza dell’attribuzione
Supponiamo di caricare in un apposito portale di threat intelligence un malware da noi scoperto e di apprendere che in genere viene utilizzato, ad esempio, dal gruppo MysterySnail. Cosa ne ricaviamo? Esaminiamo le informazioni disponibili:

Informazioni sul gruppo MysterySnail
Prima di tutto, gli autori di questi attacchiprendono di mira le istituzioni governative di Russia e Mongolia. È un gruppo di lingua cinese che in genere si concentra sullo spionaggio. Stando al dossier su di loro, stabiliscono un punto d’appoggio nelle infrastrutture e tengono un basso profilo finché non trovano qualcosa che valga la pena rubare. Sappiamo inoltre che in genere sfruttano la vulnerabilità CVE-2021-40449. Di cosa si tratta?

Dettagli sulla vulnerabilità CVE-2021-40449
Come possiamo vedere, si tratta di una vulnerabilità legata all’escalation dei privilegi, il che significa che viene utilizzata dopo che gli hacker si sono già infiltrati nell’infrastruttura. Questa vulnerabilità ha un punteggio di gravità elevato ed è ampiamente sfruttata. Quale software è vulnerabile?

Software vulnerabile
Per farla breve: Microsoft Windows. È ora di ricontrollare se la patch che corregge questa falla è stata effettivamente installata. Oltre alla vulnerabilità, cos’altro sappiamo degli hacker? Si dà il caso che hanno un modo particolare di controllare le configurazioni di rete: si connettono al sito pubblico 2ip.ru:
Ha quindi senso aggiungere una regola di correlazione a SIEM per segnalare questo tipo di comportamento.
Quindi è il momento di documentarsi su questo gruppo in modo più dettagliato e raccogliere indicatori di compromissione (IoC) aggiuntivi per il monitoraggio SIEM, nonché regole YARA pronte per l’uso (descrizioni in testo strutturato utilizzate per identificare il malware). Questo ci aiuterà a rintracciare tutti i tentacoli di questo kraken che potrebbero essersi già insinuati nell’infrastruttura aziendale e ad assicurarci di poterli intercettare rapidamente se dovessero tentare di reintrodursi.

Rapporti aggiuntivi su MysterySnail
Kaspersky Threat Intelligence Portal offre numerosi rapporti aggiuntivi sugli attacchi MysterySnail, ognuno completo di un elenco di IoC e regole YARA. Le regole YARA possono essere utilizzate per eseguire la scansione di tutti gli endpoint e gli IoC possono essere aggiunti in SIEM per un monitoraggio costante. Già che ci siamo, esaminiamo i rapporti per vedere come questi utenti malintenzionati gestiscono l’esfiltrazione dei dati e che tipo di dati interessa loro. Adesso possiamo effettivamente adottare le misure per respingere l’attacco.
Quindi, caro MysterySnail, l’infrastruttura ora è ottimizzata per trovarti e rispondere immediatamente. Lo spionaggio finisce qui!
Metodi di attribuzione del malware
Prima di addentrarci nei metodi specifici, è necessario chiarire una cosa: affinché l’attribuzione funzioni, la threat intelligence richiede un’ampia base di conoscenze in fatto di tattiche, tecniche e procedure (TTP) adottate dagli autori degli attacchi. L’ambito e la qualità di questi database possono variare notevolmente a seconda dei fornitori. Nel nostro caso, prima ancora di creare lo strumento, abbiamo passato anni a tenere traccia dei gruppi noti in varie campagne e a registrare i relativi TTP, e oggi il database è continuamente aggiornato.
Con un database TTP attivo è possibile attuare i seguenti metodi di attribuzione:
- Attribuzione dinamica: identificazione delle TTP tramite l’analisi dinamica di file specifici, seguita da un confronto incrociato di tale set di TTP con quelli di gruppi di hacker noti
- Attribuzione tecnica: individuazione delle sovrapposizioni di codice tra file specifici e frammenti di codice noti per essere stati usati da specifici gruppi di hacker nei loro malware
Attribuzione dinamica
L’identificazione dei TTP durante l’analisi dinamica è relativamente semplice da mettere in atto, tanto da avere rappresentato per molto tempo un punto fermo di ogni sandbox moderna. Naturalmente, tutte le nostre sandbox identificano i TTP anche durante l’analisi dinamica di un campione di malware:

TTP di un campione di malware
Il fulcro di questo metodo risiede nella categorizzazione delle attività del malware utilizzando il framework MITRE ATT&CK. Un rapporto sandbox contiene in genere un elenco dei TTP rilevati. Sebbene molto utili, non sono però sufficienti per la completa attribuzione a un gruppo specifico. Cercare di identificare gli autori di un attacco utilizzando questo metodo è come quell’antica parabola indiana dei ciechi e dell’elefante in cui persone bendate toccano diverse parti di un elefante e cercano di dedurre ciò che hanno di fronte. Chi tocca la proboscide pensa che sia un pitone; chi tocca il fianco è sicuro che si tratti di un muro e così via.

I ciechi e l’elefante
Attribuzione tecnica
Il secondo metodo di attribuzione viene gestito tramite l’analisi del codice statico (tenendo presente però che questo tipo di attribuzione è sempre problematico). L’idea di base in questo caso è raggruppare anche file malware leggermente sovrapposti in base a determinate caratteristiche univoche. Prima di iniziare l’analisi, il campione di malware deve essere disassemblato. Il problema è che oltre ai bit informativi e utili, il codice recuperato contiene molto rumore. Se l’algoritmo di attribuzione tiene conto di questa spazzatura non informativa, qualsiasi campione di malware finirà per somigliare a un gran numero di file legittimi, rendendo impossibile un’attribuzione di qualità. D’altra parte, provare ad attribuire il malware solo in base ai frammenti utili, ma utilizzando un metodo matematicamente primitivo, farà solo salire alle stelle il tasso di falsi positivi. Inoltre, qualsiasi risultato di attribuzione deve essere sottoposto a un controllo incrociato per verificare la presenza di somiglianze con i file legittimi e la qualità di tale controllo di solito dipende fortemente dalle capacità tecniche del fornitore.
L’approccio di Kaspersky all’attribuzione
I nostri prodotti sfruttano un database esclusivo di malware associato a gruppi di hacker specifici, creato in oltre 25 anni. Inoltre, utilizziamo un algoritmo di attribuzione brevettato basato sull’analisi statica del codice disassemblato. Questo consente di determinare, con elevata precisione e persino una specifica percentuale di probabilità, quanto simile sia un file analizzato rispetto ai campioni noti di un determinato gruppo. In questo modo è possibile formare un verdetto fondato attribuendo il malware a uno specifico attore di minacce. I risultati vengono quindi sottoposti a riferimenti incrociati con un database di miliardi di file legittimi per filtrare i falsi positivi; se viene rilevata una corrispondenza con uno di essi, il verdetto di attribuzione viene adeguato di conseguenza. Questo approccio è la spina dorsale di Kaspersky Threat Attribution Engine, che alimenta il servizio di attribuzione delle minacce in Kaspersky Threat Intelligence Portal.
threat intelligence