Le minacce cyber che oggi esistono e attraversano le nostre reti sono numerose, ma tra queste la minaccia per eccellenza è rappresentata dagli zero-day: una vera e propria arma con cui si combatteranno le prossime guerre cibernetiche.
I conflitti del futuro non si combatteranno più corpo a corpo, con armi, missili o carrarmati. Il nuovo millennio sta aprendo le porte a nuove tipologie di conflitti, che definiremo “virtuali”, in cui i soldati come noi li ricordavamo hanno messo da parte l’armatura e armamentari vari, si sono seduti davanti un codice e ne hanno fatto ciò che vogliono.
È necessario non farsi condizionare dall’idea che una guerra “virtuale” possa essere meno cruenta di un conflitto “classico” solo per un’eventuale mancanza di corpo a corpo: mettere fuori uso i reattori di una centrale elettrica o nucleare da remoto, disattivare le difese di una infrastruttura critica, provocare uno “shut down” totale di un ospedale, appropriarsi indebitamente di informazioni sensibili sono solo un minimo esempio di minacce virtuali cui chiunque potrebbe esser messo di fronte.
Se escludiamo gli esperti del settore e coloro che hanno avuto a che farne, la maggior parte non ha idea di cosa sia uno zero-day e di quali possano essere le conseguenze di una possibile “vulnerabilità zero” o “attacco zero”.
Indice degli argomenti
Cosa sono gli zero-day?
Iniziamo col dare la definizione corretta: uno “0-day” è una “vulnerabilità software non nota”, un virus totalmente sconosciuto; per questa ragione il tempo che i programmi di sicurezza hanno a disposizione per rispondere al malware è pari a zero.
Per quanto chiara come spiegazione, è utile dare al lettore un paragone da “profano”, giusto per provare a rendere l’idea di cosa possa essere uno zero-day al di fuori dell’ambito informatico.
Facciamo un salto indietro nel tempo al 280 a.C.: durante la battaglia di Heraclea, Pirro sconfigge la superiore controparte romana grazie all’utilizzo di un’arma che i soldati non avevano mai affrontato: gli elefanti da battaglia. Questi sbaragliano la resistenza romana senza problemi, sfruttando la vulnerabilità dovuta all’impreparazione.
Profanamente, potremmo paragonare l’impreparazione delle truppe romane ad una “vulnerabilità zero-day”, strutturale e senza rimedi in quel frangente; allo stesso modo potremmo associare l’utilizzo degli elefanti da battaglia ad un “exploit zero-day”, caratterizzato da un fattore sorpresa massimo.
Già dal secondo utilizzo dei pachidermi, i romani avevano imparato come reagire a quegli animali rendendoli meno letali della prima volta; quindi, sempre profanamente, le legioni romane erano state in grado di applicare una “patch”, ovvero di trovare un rimedio alla loro vulnerabilità.
L’esempio degli elefanti macedoni ci supporta per introdurre una diade concettuale distintiva cruciale quando si trattano gli zero-day:
- Vulnerabilità zero-day: la vulnerabilità zero acquisisce il massimo grado di pericolosità in quanto è una falla nel sistema di sicurezza di un software per cui non esistono rimedi o patches al momento dell’elaborazione.
Alert! Il produttore del software potrebbe anche essere a conoscenza della falla (vulnerabilità) e sperare che non venga scoperta da volenterosi hackers, perlomeno non prima che venga creato un rimedio per coprirla.
- Exploit zero-day: exploit è un alias nominale per definire l’attacco che mira a sfruttare le vulnerabilità zero di cui sopra. Quindi ipotizziamo volenterosi hackers (come i pachidermi macedoni) che si prendono la briga di sfruttare la falla strutturale senza alcun impedimento.
Va sottolineato che non necessariamente una vulnerabilità zero sarà sempre vittima di un attacco, in quanto queste risiedono negli angoli più remoti della struttura del software.
Il problema subentra nell’esatto momento in cui la vulnerabilità viene scoperta esponendo il fianco ad un exploit.
Una minaccia chiamata exploit zero-day
L’attacco zero può manifestarsi sotto svariate forme, ma nella maggior parte dei casi il malware tende a sfruttare una vulnerabilità presente nel codice di programmazione che viene scoperta dall’hacker prima che il programmatore abbia il tempo di reagire. In casi come questi, l’hacker sarà temporalmente avanti ore, se non giorni, sui programmatori, i quali si renderanno conto della falla strutturale soltanto una volta che migliaia di utenti saranno già stati colpiti.
Spesso gli hacker tentano di diffondere il malware utilizzando dei link all’interno di e-mail ad ampio spettro (malspam, phishing), oppure prendendo di mira un sito cui fanno parte più utenti. In questo caso parliamo di una pratica sfortunatamente diffusa: il Watering Hole. Questo attacco, classificato nel 2012, letteralmente significa “pozza d’acqua” e consiste nell’infettare servizi o siti web che i target utilizzano spesso, e quindi aspettare che questi rimangano infettati.
Solitamente, un exploit zero-day consta di cinque fasi il cui tempo di implementazione può essere talmente breve da iniziare e concludersi nell’arco della lettura di questa analisi:
- scanning delle vulnerabilità: gli hacker passano al vaglio il codice di nuovi software in caccia di vulnerabilità. Accade, con frequenza, che il processo sia facilitato da un passaparola su dove sia la vulnerabilità;
- individuazione della falla: una volta che viene individuato il buco nella sicurezza, l’hacker sa come e dove colpire;
- scrittura di un codice d’infezione (malware): scoperta la natura della vulnerabilità, si passa all’elaborazione di un malware che possa infettare la struttura attraverso la vulnerabilità;
- infezione del sistema: anticipando il programmatore, l’hacker si insinua nella struttura per…
- … lanciare l’attacco: il malware viene impiantato per infettare il software.
Il ciclo appena descritto potrebbe, talvolta, avere un “finale alternativo”, non meno distruttivo per il programmatore del software vittima: l’hacker potrebbe ritenere più proficuo vendere la vulnerabilità del detto software online sul mercato nero. Questo porterebbe nelle sue un’ingente somma di denaro, o cripto valuta, e nel software della vittima un exploit scritto da qualcun altro.
Esempi di exploit zero-day
Sebbene gli zero-day siano sempre più frequenti e con uno spettro sempre più ampio, vorrei portare all’attenzione del lettore degli esempi di attacchi unici nel loro genere per portata, conseguenze e modalità:
Stuxnet, la “cyber-weapon” per eccellenza
Utilizzato nel 2006, il malware mirava a sabotare la centrale nucleare iraniana di Natanz; l’attacco doveva provocare malfunzionamenti alle centrifughe di arricchimento dell’uranio responsabili per la produzione delle armi chimiche dell’arsenale iraniano.
Sebbene non siano mai state trovate prove tangibili su chi abbia effettivamente scritto il codice d’infezione, il mondo investigativo e informatico convergono su un responsabile: la National Security Agency, l’Agenzia per la Sicurezza Nazionale a stelle e strisce, col supporto del governo israeliano.
Il “worm” mirava ad infettare i PLC, i Controllori Logici Programmabili (Programmable Logic Controller), componenti hardware programmabili via software, fondamentali per l’automatizzazione degli impianti della centrale, e nello specifico per il funzionamento delle centrifughe. Il codice infetto, in grado di far accelerare o decelerare le turbine, causò l’autodistruzione di queste, mentre gli schermi di monitoraggio degli operatori non manifestavano alcuna anomalia.
Stuxnet funzionò alla perfezione, danneggiò la produzione Iraniana di armi chimiche, e “tutti vissero felici e contenti”. Non proprio. Il virus, in grado di infettare qualsiasi software dotato di sistema SCADA o PLC, fu portato fuori dalla centrale nucleare attraverso un PC portatile infetto. Risultato? Il virus si ritorse contro coloro che lo avevano creato, colpendo le principali aziende statunitensi, europee e giapponesi da cui provenivano le attrezzature utilizzate dal programma nucleare iraniano.
Il caso Stuxnet divenne talmente famoso che nel 2016 il malware fu protagonista di un docu-film diretto da Alex Gibney, dal titolo “Zero Days”.
Sony e zero-day: un nuovo videogioco?
Nel 2014 la Sony è stata vittima di uno dei peggiori attacchi che un’azienda abbia mai subito.
Un gruppo di hacker chiamati “Guardiani della Pace” infettarono i network aziendali rilasciando informazioni sensibili su diversi siti di file sharing. Condivisero 4 film inediti, diversi business plan, contratti e email del top management.
Come se non bastasse, gli hacker affermarono di aver raccolto più di 100 terabyte di dati dalla Sony.
Tutto ciò per nessuna compensazione monetaria, ma solo per rivendicare che il film “The Interview”, incentrato su un tentativo orchestrato dalla CIA per assassinare il leader nord coreano Kim Jong-Un, non dovesse portare alcun introito alla Sony.
“Vendesi zero-day”
Nel 2016 un cyber criminale russo dal nome “BuggiCorp” mise in vendita sul Dark web uno zero-day per 90mia dollari.
Si riteneva che l’exploit in vendita, qualora utilizzato in tandem con un altro malware d’accesso, fosse in grado di infettare qualsiasi sistema su cui fosse stato installato Windows. Potenziale impatto: 1.500.000.000 di utenti.
L’attacco, in origine prezzato 95mila dollari, calò a 90mila dopo un paio di settimane sul mercato. Insieme col malware, BuggiCorp pubblicò due video di exploit successivi, uno dei quali seguente il “Patch Tuesday”, quindi implementato con la versione Windows più aggiornata.
Non è chiaro se l’exploit sia mai stato venduto.
Democratic National Committee Exploit
2017, in occasione delle primarie del partito democratico vennero esfiltrate dai network, e rilasciate pubblicamente, email sensibili del Comitato Nazionale Democratico.
Furono sfruttate almeno sei vulnerabilità presenti per accedere ai dati sensibili. Gli autori dell’attacco furono hacker russi cui alle spalle operava il Cremlino stesso, al fine di danneggiare e modificare l’esito delle elezioni. Per sfruttare le vulnerabilità presenti venne utilizzata la tecnica dello spear phishing.
In una campagna di spear phishing, gli hacker prendono di mira individui specifici invece di un ampio spettro di utenti (phishing standard). In questo caso, i russi mandarono migliaia di email a chiunque fosse coinvolto o facesse parte del Comitato Democratico. Nell’esatto momento in cui i destinatari avessero cliccato sui link suggeriti dalle email (bit.ly e tiny.cc), avrebbero ceduto il loro pc totalmente in mano agli hacker.
Più di un individuo del partito cliccò sui link.
Zero-day: crescita proporzionale allo sviluppo tecnologico
Questi sopra citati rappresentano solo alcuni esempi di attacchi zero-day andati a segno negli ultimi anni. Sfortunatamente il numero è destinato a crescere sempre più.
Già nel 2016, un’analisi approfondita sui vari sistemi operativi più utilizzati aveva esposto numerose vulnerabilità: 135 su prodotti Adobe, 76 su Microsoft e 50 su Apple.
Nel 2017 gli attacchi zero-day sono passati da poco più di 30 a più di 50. Nel 2018 intorno ai 90.
Gli esperti affermano che la crescita sarà direttamente proporzionale al costante sviluppo tecnologico che attraverseremo anno dopo anno. Cybersecurity Ventures, uno dei più famosi centri di ricerca in ambito cyber al mondo, ha calcolato che, mentre nel 2015 si verificava un attacco ogni settimana, nel 2021 saremo testimoni di un nuovo attacco ogni giorno.
Il lettore può intuire adesso che quanto riportato in questa analisi – numeri, nomi e procedure – non va né sottovalutato né inteso in maniera “eccessivamente” catastrofica.
Ritrovarsi vittima di un cyber attacco, con “il vaso rotto e i cocci nelle mani” è la peggiore delle ipotesi, ma non per questo irrealizzabile.
Bisogna imparare a esser pronti, a curare ma soprattutto prevenire.
Ma come?