TECNOLOGIA E SICUREZZA

Intelligenza artificiale come tecnologia di punta tra cyber defense e cyber attack: soluzioni

Per contrastare i moderni attacchi informatici, sempre più complessi, non bastano più l’antivirus o soluzioni semplificate, ma occorre sfruttare tecnologie di cyber defense all’avanguardia come quelle basate sull’intelligenza artificiale. Ecco gli scenari attuali e le possibili soluzioni tecnologiche

16 Lug 2020
D
Paolo Dotti

ATON IT direzione tecnica


Da sempre, nel mondo della sicurezza informatica, assistiamo ad una evoluzione concomitante sia delle modalità di conduzione dei cyber attack, sempre più mirati e devastanti, sia delle modalità di cyber defense che, per contrastare tali attacchi, sempre più spesso adottano soluzioni di intelligenza artificiale ormai indispensabili per garantire la necessaria rapidità di risposta.

Intelligenza artificiale, tra cyber defense e cyber attack: lo scenario

Come per l’uovo e la gallina si potrebbe discutere a lungo su cosa sia stato inventato prima dal genere umano, se l’idea di attacco o l’idea di difesa. Comunque sia cominciata, la storia ci fa vedere un’evoluzione parallela della difesa e della protezione dei dati da una parte e di un lato oscuro e insidioso dall’altra.

Se agli albori dei primi computer domestici era sufficiente un antivirus qualsiasi per proteggere il proprio hardware e i propri dati da curiosi indesiderati e questi ultimi spesso facevano azioni di spionaggio per puro sfizio, oggi lo scenario è ben diverso.

Lo scopo dei virus dai primi Anni 70 è sempre stato quello di distruggere PC, rubare dati sensibili, moltiplicarsi attraverso le reti. I primi circolavano tramite floppy disk e avevano bisogno di un host per fare il loro lavoro; poi arrivarono i worm in grado di replicarsi attraverso le reti; seguirono i trojan, in grado di creare delle backdoor e per i più evoluti in grado di prendere il controllo da remoto dei PC.

L’evoluzione successiva fu la creazione di virus che si diffondevano tramite le macro di altri software. Nel 2000 apparve “ILOVEYOU”, partito da un progetto per una tesi e si diffuse come allegato di posta elettronica; iniziava una nuova era.

Dal 2000 ad oggi la diffusione di internet, l’aumento della velocità di connessione e del numero di device connessi ha creato una varietà sempre più ampia di virus tra cui i ransomware e il famoso Cryptolocker e di conseguenza una delle più importanti attività informatiche: la cyber security. Per chi fosse interessato, una veloce ricerca in rete permette di rivisitare la storia dei peggiori virus dal 1970 ad oggi.

Ma i virus sono solo uno dei mezzi usati a scopo di hacking; gli strumenti per difendersi oggi vanno ben oltre il semplice antivirus anche se questo rimane una componente fondamentale di protezione. Per far fronte alle più insidiose tecniche di truffa informatica sono stati sviluppati software sempre più intelligenti e in grado di rilevare le minacce in tempo utile a farne fronte per limitare o evitare completamente i danni.

I software di protezione, dall’antivirus alle tecniche più evolute

Gli attacchi hacker sono strutturati, organizzati, fanno leva su diversi aspetti quali nuove vulnerabilità, diversi canali social e digitali per raggiungere le vittime.

Quando il tipo di attacco è evoluto, è importante rilevare la minaccia in un tempo minimo e in qualsiasi momento delle 24 ore la qual cosa rende improponibile affidare un’attività così intensiva e che necessita di una continua attenzione a un essere umano.

I migliori software di protezione globale per un’azienda ricorrono all’analisi in tempo reale di tutto il traffico di rete e al monitoraggio delle attività di ogni utente, di ogni dispositivo connesso alla rete e di ogni elemento che costituisce la rete. La rilevazione di una minaccia avviene in diversi modi di cui ne elenchiamo alcuni senza la pretesa di essere esaustivi:

  • rilevazione della presenza di un virus, modalità classica che a volte non è sufficientemente rapida ed efficace nel contenimento dei danni;
  • riconoscimento di e-mail di spam, i sistemi più evoluti sono sviluppati usando algoritmi di Machine Learning;
  • riconoscimento di alterazione di messaggi e-mail anche se non sono riconducibili a spam o rilevazione di allegati sospetti non ancora identificabili come phishing o contenenti malware;
  • rilevazione di attività anomala all’interno della rete come trasferimenti di dati insoliti, connessioni effettuate in uscita verso URL insoliti, allegati mail che si discostano dalla normalità aziendale;
  • cambi di MAC Address, rilevazione di scansioni delle porte, rilevazione di spoofing a livello di protocollo ARP, rilevazione di spoofing del DNS.

Questo breve elenco non esaurisce tutti i tipi di scenari possibili, ma traccia l’evoluzione e l’innovazione nelle tecniche di difesa che si basano sempre più su algoritmi di Machine Learning e in alcuni casi anche sul Deep Learning.

WHITEPAPER
Ecco come fornire servizi IT in outsourcing in modo efficace
Software
Trade

La velocità e la potenza di calcolo attuali permettono l’esecuzione in tempo utile di una quantità di operazioni sufficiente all’uso in tempo reale di algoritmi di intelligenza artificiale su un notebook, cosa possibile da pochi anni, tanto che dal 2014 circa sono apparsi sul mercato i primi software di protezione di un sistema informatico sviluppati con l’uso di algoritmi basati sull’intelligenza artificiale e in grado di distinguere il funzionamento regolare dai comportamenti anomali all’interno del sistema.

Intelligenza artificiale e cyber defense: prodotti sul mercato e loro evoluzione

Non sono elencati i prodotti disponibili per non fare preferenze o torti, ma i leader di mercato possono proporre oggi sistemi software in grado di fare i guardiani di un sistema informatico e intervenire al minimo sospetto di minaccia immediatamente all’atto della sua rilevazione.

Tali sistemi possono produrre dei falsi positivi e il blocco di un sistema per falso allarme ma certamente si tratta di una modalità di operare che non lascia il tempo necessario per un attacco informatico.

L’uso di algoritmi di ML (Machine Learning) nei sistemi di “cyber defense” ha segnato una svolta nella protezione delle infrastrutture digitali.

Quando gli attacchi sono sempre più evoluti e a causa del volume e della complessità non sono più sufficienti le persone, la risposta efficace alle minacce è un sistema che rileva l’attacco in modo autonomo e lo blocca.

Alcuni produttori di questi software installano presso il cliente una rete neurale pre-addestrata e ne completano in loco l’addestramento (training è il termine tecnico). L’aspetto interessante è che i responsabili della sicurezza in azienda hanno una molteplicità di strumenti per indagare, analizzare e contrastare le minacce.

La svolta dei cyber attack non ha tardato a svilupparsi; attaccare questi sistemi così “intelligenti” richiede l’uso di stratagemmi e una tecnologia altrettanto “intelligente”.

Intelligenza artificiale e machine learning per il security assessment e l’hacking

La stessa tecnologia basata sull’intelligenza artificiale per realizzare i prodotti di cyber defense può essere utilizzata per fare i test di vulnerabilità (VAPT) di una infrastruttura digitale e per stabilire il grado di sicurezza globale di un sistema di protezione.

In generale, intelligenza artificiale e machine learning possono essere usati, nell’ambito della cyber defense, per creare validi strumenti di “security assessment”. Purtroppo, gli stessi strumenti sono ugualmente validi per la raccolta massiva di informazioni sulle vittime e per architettare un attacco a regola d’arte.

Nel machine learning gli algoritmi di tipo “supervisionato” permettono di rilevare minacce note per cui il sistema di difesa viene precedentemente “addestrato”; il “training” viene eseguito su un dataset costituito da esempi di situazioni malevole ed esempi di situazioni sicure. Ciò fornisce dei classificatori in grado di riconoscere le minacce note al momento e i comportamenti sia degli utenti sia dei software all’interno di un sistema sulla base degli esempi forniti e già classificati come malevoli.

Gli algoritmi di tipo “non supervisionato” permettono la rilevazione di minacce non ancora note e di far fronte ad attacchi in cui si tenta di eludere il sistema di protezione; l’uso di questi algoritmi non si basa su esempi già correttamente classificati ma può lavorare su caratteristiche di similarità e permette di identificare le attività che si discostano dal funzionamento usuale del sistema informatico.

Facciamo qualche esempio di algoritmi ricordando che non è un elenco completo e non rappresentano una ricetta infallibile in quanto devono essere ottimizzati con dei parametri, possono essere usati da soli o combinati con altri e ci sono diverse alternative:

  • Un esempio di algoritmo supervisionato per rilevare i malware è XGBoost che è considerato fra i più flessibili e accurati per molti problemi gestiti con il ML e per la semplicità di utilizzo a volte è preferito rispetto ad algoritmi più recenti.
  • Altre tecniche di difesa ricorrono all’analisi di script e di codice in diversi linguaggi; prima viene analizzato il testo con algoritmi di NLP (Natural Language Processing) poi (sempre per esempio) con un algoritmo RandomForest si possono identificare le parti di codice che eseguono azioni malevole.
  • Un esempio di algoritmo non supervisionato molto in uso per la rilevazione di anomalie (outlier) è Isolation Forest che invece di lavorare su esempi di normalità, isola direttamente i punti anomali di un sistema identificando le azioni potenzialmente minacciose.
  • In alcune soluzioni si ricorre a una “sandbox” che da un lato depista l’attaccante, dall’altro permette un’analisi dinamica del malware. L’analisi statica del malware ormai è poco applicabile a causa di tecniche di oscuramento ed elusione mentre l’analisi dinamica, ovvero con il malware in esecuzione, può essere eseguita con successo nella sandbox.
  • Dopo un arco temporale di funzionamento sufficiente, alcuni software di cyber defense permettono lo studio della serie storica degli eventi rilevati.
  • Nei prodotti più spinti tecnologicamente si arriva all’ uso di modelli di Deep Learning, basati su reti neurali, per riconoscere in tempo reale minacce note e ed attività anomale di natura sospetta che possono costituire nuove minacce.

Come capita spesso anche in altri ambiti, la stessa tecnologia di difesa può essere utilizzata come strumento di attacco; inoltre c’è una terra di mezzo in cui lo stesso software basato su machine learning e deep learning e sviluppato per i più sofisticati attacchi, è utile per eseguire il test delle vulnerabilità di un sistema informatico.

Visto da questo punto di vista sembra un gioco infinito di “guardie e ladri” dove c’è la continua rincorsa al sistema migliore per difendersi e al sistema più furbo per eludere una difesa.

Riportiamo di seguito alcune tecniche di attacco sempre senza pretesa di essere esaustivi e sottolineando che non sono segrete e se ne possono trovare i riferimenti online.

  • Si può fare uso del ML per la raccolta massiva di informazioni su aziende e loro dipendenti, partner, clienti, fornitori; tutti questi possono diventare la vittima dell’attacco anche se la più bersagliata sarà l’azienda target. Le informazioni possono essere cercate sui social e raccolte con software di crawling e scraping; la raccolta di informazioni sulla vittima è una fase preliminare nella strategia in quanto fornisce gli elementi di base su cui sviluppare le strategie successive.
  • I post sui social inerenti la vittima, le mail e i messaggi vocali possono essere usati per fare il training di sistemi che riproducono lo stile di scrittura e la voce di una persona e in seguito creare delle campagne di spam e phishing molto reali e sempre più vicini agli originali.
  • Le catene di Markov sono molto efficaci per la generazione di testi fake.
  • Altri metodi per imitare lo stile di scrittura e la voce sono le reti neurali, in particolare le GAN (Generative Adversarial Networks). Queste sono utili anche per generare malware evasivi e ransomware che si adattano al sistema di difesa e sono sempre più invisibili.
  • La steganografia, tecnica di inserimento di contenuti nascosti in un media che fa da contenitore, può essere usata per nascondere codici malevoli in immagini e documenti apparentemente innocui; l’attivazione dei contenuti avviene in un secondo momento a seguito di un’azione specifica della vittima.
  • Anche il CAPTCHA di una pagina web può essere aggirato: la schermata viene catturata come immagine e una rete neurale riconosce la presenza del campo e la relativa codifica da inserire.
  • Un’altra tipologia di informazioni disponibile in rete è costituita dagli exploit, script o programmi che sfruttano uno zero day per inserirsi in un sistema informatico e prenderne il controllo; l’intera operazione può essere eseguita molto velocemente da un bot che cerca la vulnerabilità e la sfrutta per esempio per ottenere una shell nel sistema attaccato con i diritti di amministratore.

Si evince che molte delle tecniche descritte e altre possono essere combinate per architettare e condurre attacchi strutturati, coordinati e guidati da “bot” opportunamente parametrizzati; il fatto che si faccia uso dell’intelligenza artificiale è facilitato dalla potenza di calcolo disponibile a basso costo.

Conclusioni

Ormai la complessità, il volume e la velocità di conduzione di un attacco informatico sono tali da non poter essere contrastati con un semplice antivirus o con soluzioni semplificate e sviluppate in piccolo sia per la necessità di continui aggiornamenti sia per la possibilità di sfruttare sempre tecnologie all’avanguardia.

Anche senza affidarsi ai leader di mercato è fondamentale che un’azienda o un ente sia privato sia pubblico scelga una soluzione di cyber defense che sia stata sviluppata sfruttando le più moderne tecnologie, basata su algoritmi di intelligenza artificiale e soprattutto che sia sempre aggiornata.

Parallelamente, è opportuno che ogni entità che opera con sistemi informatici ne faccia eseguire un’analisi di vulnerabilità (VAPT); tale attività normalmente viene eseguita con gli stessi strumenti di attacco o similari ma con il puro scopo di scoprire le vulnerabilità e di conseguenza rinforzare le protezioni.

Nella corsa continua tra attacco e difesa il punto debole che non può essere corretto con algoritmi di Intelligenza Artificiale è il fattore umano che deve essere opportunamente addestrato; l’intelligenza umana deve essere sempre vigile anche in presenza dei più raffinati software di cyber defense.

WEBINAR
Blockchain, Iot, AI per una Supply Chain intelligente e più efficiente
Blockchain
Intelligenza Artificiale

@RIPRODUZIONE RISERVATA

Articolo 1 di 5