Conosci il nemico

Conosci il nemico

Marco Ivaldi, Technical Director di HN Security

Il 9 giugno scorso ho tenuto un breve intervento dal titolo “Conosci il nemico” nell’ambito della rassegna L’accademia del cyber promossa da ANRA, l’associazione nazionale dei risk manager e dei responsabili delle assicurazioni aziendali.

“Il primo appuntamento dell’Accademia del cyber è dedicato alla contestualizzazione del rischio. […] Se più conosciuto è il punto di vista di chi subisce il rischio, sono poche le occasioni per approfondire l’altro lato della medaglia, quello dell’attaccante. In che modo gli hacker identificano i potenziali target? Quali sono le motivazioni principali degli attacchi? Avremo l’opportunità di approfondire questi aspetti direttamente con Marco Ivaldi, Technical Director di HN Security.”

Il video integrale dell’evento è disponibile su YouTube. Per chi, come me, preferisce leggere un articolo anziché guardare un video, di seguito riporto la trascrizione più o meno fedele dell’intervento.

Buongiorno a tutti. Mi chiamo Marco Ivaldi, e ho passato gli ultimi 20 anni ad attaccare le reti di aziende come la vostra. A differenza dei criminali, terminata l’intrusione consegno sempre una relazione sulle vulnerabilità rilevate e su come risolverle 😉 In altre parole, sono un penetration tester.

Avendo dedicato la mia carriera a studiare gli attaccanti per poterli emulare al meglio, spero di essere la persona adatta per raccontarvi il loro punto di vista.

Per cominciare, chiariamo subito una cosa importante: quando parliamo di attaccanti, non parliamo di “hacker”. Parliamo di criminali. Hacker è un termine molto carico di significati, e solo alcuni hanno una connotazione negativa. Ad esempio, come forse saprete, sono stati proprio gli hacker a creare la rete Internet.

Fatta chiarezza su chi sono i soggetti che ci interessano, cerchiamo di approfondire le loro motivazioni.

In questa timeline ho riportato alcuni esempi di minacce, evidenziando la loro comparsa nell’arco degli ultimi 20 anni.

In blu, ho indicato i tipici target dei penetration test in un dato momento storico, per dare una prospettiva sull’evoluzione tecnologica. Gli altri colori denotano invece diverse tipologie di minacce:

  • In verde, ho indicato malware senza finalità particolari a parte quella di propagarsi.
  • In arancione, malware utilizzato nell’ambito di campagne di spionaggio o sabotaggio.
  • In giallo, infine, ho riportato malware a scopo di lucro.

Come vediamo, nei primi anni 2000 i malware pensavano solamente a replicarsi. I loro autori non avevano né l’intento né il modo di monetizzare direttamente gli attacchi informatici (con le dovute eccezioni).

Tutto questo inizia a cambiare nel 2007: la crescente popolarità dei servizi di Internet Banking determina la comparsa di malware specifici (“Banker”) che compiono il furto delle credenziali di accesso al fine di effettuare operazioni bancarie fraudolente.

A partire dal 2010, poi, sono venute alla luce una serie di campagne internazionali di spionaggio e sabotaggio: la più famosa è sicuramente quella associata al malware Stuxnet, utilizzato per sabotare le operazioni di arricchimento dell’uranio da parte dell’Iran.

Ma il momento chiave, che ha cambiato la prospettiva sugli attacchi informatici in questi ultimi anni, risale secondo me al 2013: la prima campagna ransomware su vasta scala (CryptoLocker).

Se possiamo affermare che prima del 2013 le motivazioni preponderanti legate agli attacchi informatici fossero curiosità, sfida intellettuale, e anche attivismo e spionaggio, oggi oltre a queste motivazioni ne abbiamo una nuova che fa decisamente la parte del leone…

… I soldi!

Una volta, c’erano solamente i malware bancari che infettavano i PC degli utenti di Internet Banking e ne rubavano le credenziali. E l’occasionale email di phishing che chiedeva gentilmente di fare un bonifico verso l’IBAN fornito (personalmente non considererei questo tipo di attacco come un attacco informatico, anche se utilizza un mezzo informatico come l’email).

Oggi, anche grazie alla diffusione delle criptovalute, è molto più facile monetizzare gli attacchi. Si è creata una vera e propria “industria dell’estorsione”.

Le richieste di riscatto riguardano tipicamente:

  • Il recupero di file cifrati dagli attaccanti.
  • La minaccia di divulgare informazioni riservate rubate dai sistemi della vittima.
  • La minaccia di interrompere la connettività della vittima tramite attacchi Denial of Service.

Oltre alle richieste di riscatto, la crescente popolarità delle criptovalute determina anche altre possibilità di monetizzare gli attacchi informatici:

  • Tramite l’installazione di miner sui sistemi di ignare vittime (“CryptoJacking”). Spesso in questi casi gli attaccanti non controllano neanche a chi appartengono i sistemi che hanno violato, installano semplicemente un miner per generare nuove criptomonete.
  • Direttamente tramite il furto di bitcoin o altre ciptovalute da exchange o wallet connessi a Internet.

Esistono persino i cosiddetti “exit scam”. Si tratta di exchange fraudolenti che operano per un po’ di tempo allo scopo di raccogliere più soldi possibile e alla fine il proprietario dichiara bancarotta e scappa con i soldi di tutti.

L’exit scam (potenziale) più famoso è probabilmente quello di Mt. Gox del 2014, in cui sono spariti circa $460 milioni di allora (diversi miliardi oggi!).

Tornando alla nostra timeline, come abbiamo detto, dal 2013 a questa parte abbiamo assistito alla crescente popolarità degli attacchi ransomware. Da circa un anno, questa popolarità è stata portata alle estreme conseguenze, con una vera e propria industrializzazione delle campagne ransomware.

È nato il Ransomware as a Service (RaaS), un nuovo paradigma in cui c’è un vero e proprio fornitore che vende malware, infrastruttura tecnologica e personale a supporto degli attacchi a diversi gruppi criminali, che poi lanciano effettivamente gli attacchi.

Ma non voglio dilungarmi oltre su questo tema. Si parlerà più diffusamente di ransomware in occasione del prossimo appuntamento nell’ambito di questa iniziativa.

Ora che abbiamo chiarito le motivazioni degli attaccanti, vediamo come scelgono i loro potenziali obiettivi.

Nell’immaginario collettivo, un attaccante:

  • 1 – Seleziona accuratamente il proprio obiettivo sulla base di alcune caratteristiche di interesse (settore merceologico, dimensione, fatturato, capacità di pagamento, etc.).
  • 2 – Effettua una ricognizione facendo uso di tecniche avanzate di scansione attiva e passiva, avendo cura di non essere individuato, alla ricerca di vulnerabilità.
  • 3 – Sfrutta le vulnerabilità rilevate al fine di ottenere un accesso non autorizzato e fare ciò che deve.

Nella realtà, questo accade di rado…

Il tipico attaccante è opportunista: ha la capacità di sfruttare solamente alcune vulnerabilità specifiche ed effettua scansioni a tappeto su tutta Internet alla ricerca di obiettivi vulnerabili, che poi violerà.

È chiaro che gli attaccanti che fanno più paura sono quelli che hanno la capacità di effettuare attacchi mirati. Tuttavia, se un’organizzazione fosse in grado di bloccare anche solo gli attacchi degli opportunisti, si troverebbe già in una posizione di vantaggio rispetto alla maggior parte delle aziende, che purtroppo sulla base della mia esperienza non sono messe molto bene…

Per rendere meglio l’idea, con un perimetro sufficientemente ampio e regole di ingaggio sufficientemente permissive, non è mai successo che io e il mio team non siamo riusciti a violare un’organizzazione. In ambienti Active Directory, ad esempio, in 15 anni di test abbiamo una percentuale di successo prossima al 100%, e spesso bastano pochi minuti per diventare Domain Admin!

Ma in pratica, come avviene una compromissione? Vi racconto un paio di storie vere (anonimizzate).

Partiamo proprio da uno scenario che riguarda Active Directory, risalente a pochi mesi fa. Impresa medio-grande, tipica infrastruttura IT basata su Windows. Senza entrare nel tecnico, la compromissione segue questo flusso:

  • 1 – L’attaccante identifica un sistema di test, “dimenticato”, vulnerabile, afferente al dominio Active Directory.
  • 3 – Sfrutta le vulnerabilità presenti (credenziali deboli, software non aggiornato, errori di configurazione, etc.) per diventare amministratore locale su questo sistema.
  • 3 – Sfrutta la posizione di vantaggio ottenuta per reperire credenziali di utenti di dominio e allargare la compromissione dell’infrastruttura ad altri sistemi (movimento laterale), fino a quando non trova un processo con privilegi di amministratore di dominio da impersonare.

Come ho detto, questo attacco solitamente richiede poche ore per scalare da utente non privilegiato ad amministratore di dominio. Una volta che l’attaccante è amministratore di dominio, può fare quello che vuole: leggere le email del CEO, cancellare o alterare i dati sui file server, effettuare ogni genere di operazione fraudolenta. Ha letteralmente in mano le chiavi dell’azienda!

Vediamo ora un secondo caso reale che esemplifica un altro tipo di attacco che andava di moda qualche anno fa (ma che comunque rimane valido): stiamo parlando del wardialing.

Questo attacco prende il proprio nome dal film WarGames (del 1983), in cui il giovane protagonista chiama in sequenza una serie di numeri telefonici alla ricerca di computer che rispondano dall’altra parte, per poi provare ad ottenere un accesso non autorizzato, ad esempio indovinando le password.

Il wardialing è esattamente questo: si prendono le numerazioni associate ad un’azienda e le si chiama una per una alla ricerca di cose interessanti. Si può trovare veramente di tutto: un centralino VoIP, un accesso remoto per la manutenzione di dispositivi particolari (storage, antifurti, condizionatori), addirittura cancelli automatici comandabili a distanza!

Una volta, però, mi è capitata una cosa davvero particolare. A seguito di una scansione io e il mio team abbiamo isolato alcune numerazioni telefoniche che rispondevano a chiamate vocali standard (non modem) in modo strano: a volte c’era silenzio, a volte invece si sentivano delle voci e dei suoni come dei beep. Indagando, con il supporto del cliente, siamo riusciti a risalire al fatto che si trattava di…

… Ascensori!

I moderni ascensori sono dotati di un sistema di allarme che mette in contatto telefonico con un operatore remoto, in caso si prema il tasto di emergenza. Quello che allora non sapevo è che è possibile chiamare direttamente il loro numero (se lo si conosce) e utilizzare il sistema di comunicazione di emergenza per fare intercettazioni ambientali, ascoltando le conversazioni che avvengono in ascensore, o, siccome oltre ad ascoltare si può anche parlare, fare scherzi di particolare cattivo gusto 😉

Che cosa hanno in comune questi due esempi (e tanti altri che non oggi non abbiamo il tempo di affrontare)? Se doveste ricordarvi solo una cosa di questo intervento…

… Dovrebbe essere questa: “Non è possibile proteggere ciò che non si conosce”.

Tutte le compromissioni derivano dalla non conoscenza… Non conoscenza di avere quel determinato sistema di test “abbandonato”, o quell’utenza amministrativa che non è mai stata disattivata, o quella regola del firewall “temporanea” che esiste da più di 10 anni! O ancora, l’ascensore o il cancello che possono essere chiamati e comandati a distanza tramite un semplice telefono.

Un attaccante non ha quasi mai bisogno di strumenti o abilità particolari: per portare a termine un’intrusione, spesso è sufficiente la logica.

Da difensori, che cosa possiamo fare per far fronte a questo problema? Dobbiamo ribaltare questo squilibrio di conoscenza.

Ed è qui che ci viene in aiuto la disciplina dell’offensive security. Un penetration test di qualità ci consente innanzitutto di conoscere:

  • Conoscere il nostro nemico, emulando le tecniche utilizzate dagli avversari.
  • Conoscere noi stessi, sfruttando il punto di vista di un attaccante esterno.

Può sembrarvi assurdo, ma vi assicuro che la verità scomoda è che spesso gli attaccanti arrivano a conoscere le reti target meglio dei legittimi amministratori! Per questo motivo il punto di vista imparziale di una terza parte esterna è fondamentale.

La collaborazione tra blue team (come vengono chiamati i difensori) e red team (gli attaccanti) ci permette di ottenere una conoscenza concreta della nostra postura di sicurezza, su cui basare le nostre decisioni per la gestione dei rischi aziendali.

Questa conoscenza ci dà un vantaggio strategico nei confronti dei nostri avversari, perché come diceva qualcuno prevenire è sempre meglio che curare 😉

Con questo, ho finito. Grazie a tutti! Per chi volesse approfondire questi temi, questi sono i miei contatti. Buon proseguimento.