Advanced Persistent Threat (Apt): quali strategie di difesa adottare

Quando sentiamo parlare di Apt, acronimo di Advanced Persistent Threat, viene automatico pensare ai ransomware, come Cryptolocker, fondamentalmente a causa della loro grande diffusione, dovuta principalmente alla facilità d’accesso e di utilizzo di questi anche da parte di “cybercriminali” improvvisati e non in possesso delle competenze tecniche necessarie alla creazione di un “malware evoluto”. Come difendersi?

Pubblicato il 05 Set 2016

Avviare una campagna di diffusione ransomware è un’attività piuttosto facile e remunerativa: è sufficiente navigare con un browser Tor (software per navigare sul web in anonimato) su Darknet alla ricerca di un RaaS (Ransomware as a Service) dove, per una percentuale sui presunti guadagni che oscilla dal 5% al 20%, è possibile richiedere un “servizio” ransomware fissando il prezzo del riscatto, il tempo massimo per pagare il riscatto e l’eventuale prezzo dopo la scadenza del tempo massimo.

Un vero e proprio business alla portata di tutti

Un ulteriore fattore che ha reso i ransomware una tipologia di malware molto utilizzata è il bacino di utenti vastissimo, che comprende virtualmente tutti gli utilizzatori di Internet: dalle imprese private alle istituzioni pubbliche fino ai singoli cittadini.
Lo scenario d’attacco è molto semplice: basta utilizzare come vettore di attacco la modalità e-mail, possedere una lista di indirizzi di posta (facilmente ottenibile attraverso mailing list fake, forza bruta, web crawler, ecc.) e fare riferimento ad argomenti di interesse comune come, ad esempio, le tasse.
In effetti gli ultimi attacchi di tipo ransomware utilizzano il sistema collaudato di campagne di spear phishing basate su link presenti all’interno delle mail o allegati contenenti elementi attivi il cui unico scopo è quello di scaricare il secondo modulo dell’attacco dando il via al secondo stadio che gestisce il vero e proprio attacco.
Com’è facilmente deducibile, le soluzioni antivirus, basate prevalentemente su tecniche di pattern matching, risultano inefficaci contro questo tipo di malware in quanto i ransomware hanno un ciclo di vita molto breve e basta ricompilarli per non essere più riconosciuti dagli antivirus tradizionali. Alla crescente minaccia dei ransomware il mercato risponde con una parola magica: Sandbox.
Ad oggi tutti i vendor di sicurezza hanno una loro sandbox, miracolosa soluzione “definitiva” allo spinoso problema di Cryptolocker e le sue varianti.

Cosa fa effettivamente una sandbox?

Una sandbox non fa altro che simulare il comportamento di un normale client in un ambiente virtuale, esegue il codice potenzialmente malevolo e, attraverso l’analisi dinamica del codice, cerca di stabilire in base ad algoritmi propri se questo è effettivamente un malware oppure no.
I requisiti per una reale efficacia sono certamente la qualità degli algoritmi, l’utilizzo di hypervisor non noti e la possibilità di emulare efficacemente l’effettiva presenza di periferiche (molti Apt utilizzano tattiche di evasione in grado di verificare se stanno su macchine virtuali), l’uso simultaneo di molteplici macchine virtuali basate su diverse versioni di sistemi operativi e di software e la possibilità di accelerare il tempo per eseguire tutti gli stati del malware in tempi ragionevolmente brevi.

Figura 1 – Sandbox a difesa della posta elettronica

Fonte: Luca Di Bari, Security Specialist, Sogei S.p.A.

Eseguire tutte queste azioni in parallelo, su più ambienti e in tempi utili, implica un utilizzo notevole di risorse computazionali; inoltre, per essere realmente efficace, l’infrastruttura deve poter fare enforcement di sicurezza, ovvero essere una componente attiva in grado di contenere, direttamente o indirettamente, l’attacco in corso o almeno limitare i danni fermandolo prima che venga scaricato il modulo che avvia il secondo stadio dell’attacco.
Se analizziamo l’esempio citato in precedenza (una campagna di spear fishing per la diffusione di criptolocker), la sandbox dovrebbe essere in grado di indirizzare il contenuto delle e-mail pervenute inibendo all’utente finale la ricezione del messaggio stesso finché non sono state verificate tutte le componenti di rischio, inclusi i contenuti associati ai link presenti in una e-mail e gli eventuali allegati. L’implementazione descritta prevede l’inserimento della sandbox come componente di un’architettura d’insieme attiva (figura 1).
Seppur indirizzando uno scenario piuttosto tipico, il posizionamento della sandbox a difesa attiva della posta elettronica risulta inefficace nel caso in cui il vettore iniziale sia una e-mail con un link a un sito di phishing plausibile che all’interno abbia ulteriore link contenente il downloader (quindi modalità drive-to-click basata sulla collaborazione dell’utente), un post su blog o su pagine social in cui gli utenti possono incorrere nella loro navigazione (quindi modalità drive-to-click basata sugli interessi di navigazione degli utenti), un downloader incluso dentro altri file di interesse comune (drive-to-click basata sulle ricerche effettuate dagli utenti, tipicamente su keygen o software di uso comune usata in collaborazione con attacchi al page rank dei motori di ricerca) o semplicemente una webmail personale non controllata dalla implementazione precedentemente descritta.
In tali circostanze, infatti, la soluzione risulta efficace se e solo se affiancata ad un’altra componente che riesce a vedere anche l’accesso a questi canali ed eseguire, nei limiti dell’operatività delle piattaforme, questo tipo di attacchi (figura 2).
Un ulteriore punto di attenzione è dato dalla possibilità di veicolare il download dell’Apt su un canale cifrato. Una delle tecniche di evasion utilizzate è infatti l’utilizzo di cloud pubblici che offrono spazio storage gratuito per sfruttare un canale cifrato con certificati validi (drive-to-click su canale https). In tal caso un ulteriore fattore abilitante è la capacità della sandbox di essere configurata in modalità ssl inspection.

Figura 2 – Sandbox a presidio dei canali di navigazione

Fonte: Luca Di Bari, Security Specialist, Sogei S.p.A.

Anche questa seconda implementazione non è tuttavia completamente soddisfacente in quanto attacchi indirizzati attraverso e-mail di posta elettronica contenenti downloader che richiedono più stadi, possono essere contenuti solo se la componente sandbox dedicata alla navigazione riesce a correlare le proprie rilevazioni con quelle ottenute dalla sandbox che presidia il canale di ricezione della posta elettronica (figura 3).
Un’implementazione di questo tipo può rispondere in modo soddisfacente all’esigenza immediata di proteggersi dai malware di tipo ransomware, tuttavia è necessario puntualizzare che “Ransomware” e “Advanced Persistent Threat” non sono sinonimi o termini intercambiabili.

Ransomware e Apt: conoscerli per combatterli

La grande risonanza avuta negli ultimi tempi da parte di questo tipo di malware, ottenuta prevalentemente grazie agli effetti devastanti su client e fileserver di reti aziendali, ha creato molta confusione in merito a cosa siano gli Apt e alla reale minaccia che costituiscono.
Un attacco perpetrato attraverso un Advanced Persistent Threat è eseguito con presupposti totalmente opposti rispetto ad un attacco ransomware, seppur sfruttando i medesimi vettori di attacco e modalità di deploy (malware modulare su più stadi, comunicazione con dropzone e command&control, ecc).

Figura 3 – Gestione centralizzata delle sandboz a difesa di e-mail e navigazione

Fonte: Luca Di Bari, Security Specialist, Sogei S.p.A.

Un Apt è creato per rimanere nascosto; l’obiettivo non è causare danno ma rubare dati altamente riservati la cui divulgazione potrebbe compromettere un’azienda (ad esempio segreti industriali) o una nazione (segreti di stato, dati riservati inerenti il mondo politico, dati di magistratura, dati riguardanti la difesa, ecc).
In breve, quanto parliamo di protezione dagli Apt parliamo di cybersecurity.
Un Apt riesce a rimanere nascosto grazie al fatto che è sempre un malware“0 day”, tipicamente creato ad-hoc per lo scopo specifico e cancellato una volta conclusa la sua specifica funzione, pertanto è facilmente intuibile l’inutilità dei sistemi “automatizzati”.
Per contenere questo tipo di minacce è necessario innanzitutto uno strumento volto all’analisi approfondita di oggetti o file, a supporto di eventuali Cert o gruppi di Incident Response, che fornisca in tempo reale un’esecuzione completa dell’oggetto, eseguendo tutti gli elementi della catena di un attacco e rilevando in maniera estremamente puntuale le azioni e i componenti utilizzati da un eventuale Apt direttamente sugli endpoint compromessi (figura 4).

Figura 4 – Gestione centralizzata delle sandboz a difesa di e-mail e navigazione combinata con la protezione degli endpoint

Fonte: Luca Di Bari, Security Specialist, Sogei S.p.A.

Tale visibilità permette ai gruppi di analisti di un eventuale Cert o Incident Response Team di classificare rapidamente e decidere in maniera opportuna ed efficace le azioni di contenimento da applicare. Determinante è la possibilità di raccogliere e correlare le informazioni pervenute dalle varie piattaforme dedicate alla prevenzione e analisi degli Advanced Persistent Threat, dando modo ai gruppi di analisti competenti, grazie alle informazioni di dettaglio ottenute dalla malware analisys sugli endpoint, di istruire l’intera infrastruttura attraverso la creazione di nuove “signature” personalizzate, rendendo il sistema complessivo edotto su come rilevare anche attacchi complessi.

Ridurre i tempi di analisi per aumentare l’efficacia della difesa

Ovviamente la realizzazione di un tale sistema di protezione dagli Apt è vincolato alla presenza di gruppi di analisi degli incidenti interni in quanto prevede una modalità di sottomissione manuale degli oggetti in cui le azioni di decisione devono essere monitorate da un analista di sicurezza esperto.
In altre parole, due sono i fattori determinanti per difendersi dagli Apt: il dettaglio sulle azioni intraprese dal malware (servizi attivati, comandi lanciati, file modificati, ecc.) e la riduzione dei tempi di analisi al fine di contenere l’attacco, evitando la compromissione di altri endpoint o l’annidamento di altri Apt “silenti”.
Avere uno strumento che permetta di ottenere il dettaglio di quanto svolto da un Apt è un punto chiave dell’effettiva efficacia dell’infrastruttura posta a difesa di attacchi di questo tipo in quanto una volta stabilito il colloquio con la Command & Control un Apt diventa il mezzo per poter fare virtualmente tutto quello che potrebbe essere fatto dall’utenza con cui è stato lanciato il malware (inclusa un’eventuale tentativo di escalation di privilegi).
È importante sottolineare il fatto che un Apt è un “malware che non è un malware” per due ragioni: la prima è che la vera azione malevola viene svolta inconsapevolmente dall’utente attivando l’Apt e la seconda è che un Apt è lo strumento che permette ad un attaccante esterno di svolgere tutte le azioni normalmente consentite dall’utenza che lo manda in esecuzione (navigazione internet attraverso proxy, download, upload, uso di comandi, programmi e tool presenti sull’endpoint, ecc), pertanto è impossibile discernere cosa ha esattamente fatto l’Apt e cosa invece fa parte della normale operatività senza uno strumento che fornisca in maniera puntale tale dettaglio.

Architettura integrata per intercettare e sconfiggere il malware

Un’architettura integrata permette quindi ai gruppi di analisi di identificare e validare l’attacco, ossia ricostruire tutta la dinamica dell’attacco dal momento in cui il malware è stato scaricato al momento in cui è stato rilevato e quindi operare le azioni di indagine e bonifica riducendo tempi, costi e soprattutto senza il dubbio che qualcosa sia sfuggita a causa di una visibilità parziale data dall’analisi del solo contesto infrastrutturale o dal solo reverse del codice sorgente del malware.

Figura 5 – Architettura integrata e monitoraggio costante

Fonte: Luca Di Bari, Security Specialist, Sogei S.p.A.

In parole povere è l’unico strumento in grado di definire un perimetro di impatto ragionevolmente certo, soprattutto se consideriamo che nella maggior parte dei casi dobbiamo venire a patti con il fatto che ci sarà un “paziente zero” (figura 5).
Lo scopo pertanto non è quello di operare a livello preventivo in modalità automatizzata, obiettivo realisticamente irraggiungibile trattandosi di malware ciclicamente ricompilati e quindi non noti, con un ciclo di vita molto breve, ma è quello di ridurre quanto più possibile il tempo di esposizione al rischio, validare rapidamente attacchi molto complessi grazie alla visibilità di dettaglio sia sui vettori di attacco sia sugli endpoint e definire quali contromisure adottare.
Oltre ciò, non meno importante è la possibilità di validare l’effettivo impatto dell’attacco nel lasso di esposizione in termini di elementi compromessi, di dati fuoriusciti dall’organizzazione e, più in generale, dalle attività svolte dagli attaccanti nell’intervallo di tempo in cui è avvenuto l’attacco.
Accanto al valore della tecnologia in se è quindi imprescindibile sia una progettazione che tenga conto del contesto architetturale, in modo da presidiare tutti i possibili vettori di attacco, sia una corretta ingegnerizzazione del monitoraggio al fine di ottenere la massima sinergia dalle fonti dati, dagli strumenti a supporto e dai gruppi competenti. L’intera infrastruttura “anti Apt” diventa pertanto parte integrande del processo di Incident handling dal quale dipendono i due fattori chiave: tempo e visibilità (figura 6).

Figura 6 – L’intera infrastruttura “anti Apt” diventa parte integrande del processo di Incident handling

Fonte: Luca Di Bari, Security Specialist, Sogei S.p.A.

Se esponiamo direttamente su Internet un server con una nuova versione di un sistema operativo o un application server, appena questo verrà rilevato dai crawler (software che analizza i contenuti di una rete, o di un database, in un modo metodico e automatizzato) sarà oggetto delle attenzioni più o meno desiderate di Internet. Se lo esponiamo appositamente per attirare l’attenzione aspettando che qualcuno violi tale server al fine di studiare l’attacco, non abbiamo fatto altro che creare un honeypot che non è altro che una sandbox statica. Se siamo stati molto bravi a prepararla e siamo molto fortunati, potremmo addirittura avere il privilegio di analizzare un nuovo tipo di attacco.
Nel caso specifico, la validità delle sandbox prodotte dai vendor è data dalla loro ingegnerizzazione e dal dettaglio che forniscono sul comportamento degli Apt rilevati.
Quindi cos’è una sandbox? Una parola magica? No, principalmente uno strumento a supporto che non esime i gruppi di sicurezza dalle attività di monitoraggio, analisi e indagine e che se interpretato diversamente, potrebbe rilevarsi un semplice placebo.

*Luca Di Bari è Security Specialist, Sogei S.p.A

Valuta la qualità di questo articolo

La tua opinione è importante per noi!

Articoli correlati

Articolo 1 di 5