Direzioni a breve e lungo termine per l'IA avversaria nella sicurezza informatica

12 settembre 2018
Sohrob Kazerounian
Distinguished AI Researcher
Direzioni a breve e lungo termine per l'IA avversaria nella sicurezza informatica

Il ritmo frenetico con cui l'intelligenza artificiale (AI) è progredita negli ultimi anni ha iniziato a produrre effetti di trasformazione in un'ampia gamma di settori. Insieme a un mondo sempre più (inter)connesso, in cui gli attacchi informatici si verificano con una frequenza e una scala allarmanti, non c'è da stupirsi che il settore della sicurezza informatica abbia rivolto lo sguardo all'intelligenza artificiale e all'apprendimento automatico (ML) per individuare e difendersi dagli avversari.

L'uso dell'IA nella cybersecurity non solo amplia la portata di ciò che un singolo esperto di sicurezza è in grado di monitorare, ma soprattutto consente di scoprire attacchi che altrimenti non sarebbero stati individuabili da un essere umano. Così come era quasi inevitabile che l'IA venisse utilizzata per scopi difensivi, è innegabile che i sistemi di IA verranno presto utilizzati per scopi di attacco.

AI L'intelligenza artificiale spiegata - Parte 8

Qui delineiamo le traiettorie a breve e a lungo termine che queste applicazioni avversarie dell'IA probabilmente prenderanno, data la storia e lo stato dell'IA.6

Applicazioni immediate

Esistono diversi settori in cui lo sviluppo dell'IA, e in particolare dell'apprendimento profondo, ha applicazioni specifiche che possono tuttavia essere modificate a fini malevoli dagli hacker.

Ad esempio, molte tecniche all'avanguardia per l'elaborazione del linguaggio naturale utilizzano una forma di rete neurale ricorrente nota come LSTM per elaborare, classificare, generare e persino tradurre il linguaggio naturale. Un modello linguistico LSTM addestrato su un set di dati di parlato o di testo può essere utilizzato per generare nuove frasi con la stessa voce o modalità del testo da cui è stato addestrato. Questo modello che ha imparato a generare tweet con la voce di Trump è un esempio di questo utilizzo:

Modelli come questi possono essere facilmente sfruttati dagli hacker come uno dei tanti strumenti del loro arsenale. Ad esempio, diverse famiglie di malware utilizzano algoritmi di generazione di domini (DGA) per costruire casualmente nuovi domini come punti di incontro in modo che le macchine infette possano raggiungere un server di comando e controllo. Se i domini fossero codificati, sarebbe banale per un amministratore di rete inserire nella blacklist i domini dannosi.

Poiché i domini generati in modo casuale (si prenda ad esempio nawntgvcbixvwh.net) hanno un aspetto molto diverso dai tipi di domini che un essere umano registrerebbe, è relativamente facile creare modelli in grado di rilevare i domini normali rispetto a quelli DGA. Un modello LSTM addestrato su nomi di dominio normali, tuttavia, potrebbe facilmente costruire domini falsi che sembrano indistinguibili da quelli che un essere umano potrebbe scegliere.

Un'altra classe di modelli (che spesso fa uso di LSTM) è nota come modelli sequenza-sequenza (seq2seq). I modelli seq2seq, attualmente all'avanguardia nel campo della traduzione, prendono in ingresso una sequenza in un dominio o in una lingua (ad esempio, una frase in inglese) e producono in uscita una sequenza in un altro dominio o in un'altra lingua (ad esempio, una frase in francese).

Tuttavia, questi modelli possono essere utilizzati anche per una tecnica nota come fuzzing, che automatizza il processo di individuazione di errori e falle di sicurezza nel codice(https://arxiv.org/pdf/1701.07232.pdf). Le falle di sicurezza trovate da queste tecniche possono spesso portare a buffer overflow, iniezioni di SQL e così via, che danno agli aggressori il controllo totale di un sistema.

Un modello RNN sequenza-sequenza per generare oggetti PDF

In generale, le aree in cui l'IA e il ML sono più immediatamente applicabili sono limitate e funzionano solo in combinazione con un aggressore umano che utilizza il sistema. È probabile che le aree di applicazione si limitino a velocizzare l'automazione di vari tipi di attività (come nel caso del fuzzing) o a imitare le prestazioni e il comportamento umano (come nel caso della DGA).

Applicazioni a breve termine

Estratti di un documento PDF ben formato.

Con lo sviluppo dell'IA nei prossimi anni, tecniche sviluppate solo di recente, come le reti generative avversarie (GAN), inizieranno ad ampliare le possibilità di attacco.

È interessante notare che le GAN sono state inizialmente motivate dall'esame degli attacchi avversari ai metodi di deep learning esistenti: semplici modifiche agli input che altrimenti sarebbero indistinguibili per gli esseri umani, ma che confonderebbero al massimo una rete neurale. Prendiamo il seguente esempio da Goodfellow et al. (2014)[https://arxiv.org/abs/1412.6572]:

L'aggiunta di una leggera quantità di rumore a un'immagine di un panda, produce un'immagine di panda indistinguibile dall'originale per la maggior parte degli esseri umani.

L'aggiunta di una leggera quantità di rumore a un'immagine di un panda (lato sinistro dell'equazione nella figura sopra), risulta in un'immagine di un panda indistinguibile dall'originale per la maggior parte degli esseri umani (lato destro dell'immagine sopra). Tuttavia, questa piccola aggiunta modifica la previsione di una rete neurale addestrata a riconoscere gli oggetti nelle immagini da "panda" a "gibbone". Un esempio più recente è stato in grado di generare confusioni simili con il cambiamento di un solo pixel(https://arxiv.org/abs/1710.08864v2).

Attacchi di un pixel creati con l'algoritmo proposto che hanno ingannato con successo un DNN bersaglio.

Questo tipo di attacchi diventerà sempre più diffuso man mano che l'IA e il ML entreranno nella nostra vita quotidiana. Le reti neurali profonde del tipo attaccato negli esempi precedenti sono il cuore dei sistemi di visione che governano le auto senza conducente, il riconoscimento facciale (si pensi alle telecamere quando si attraversa la sicurezza di frontiera per rientrare negli Stati Uniti) e altro ancora.

I tipi di attacchi avversari mostrati sopra saranno sempre più utilizzati per comportamenti dannosi, dato che sempre più sistemi si affidano a soluzioni di intelligenza artificiale automatizzate.

Le GAN, originariamente motivate da attacchi avversari, sono interessanti anche di per sé. Le GAN sono reti neurali accoppiate con una competizione tra una rete generatrice, il cui compito è generare un output, e una rete discriminatrice, il cui compito è determinare se l'input che vede è stato generato dal generatore o tratto da un set di dati reali.

Sorprendentemente, il gioco teorico che si svolge tra le reti dà luogo a un generatore che può produrre risultati straordinariamente realistici. Questo è particolarmente vero nel dominio delle immagini, dove le GAN hanno iniziato a creare immagini che sembrano iper-reali (ad esempio, volti di celebrità che non esistono: http://research.nvidia.com/publication/2017-10_Progressive-Growing-of), ma ora vengono utilizzate anche per generare linguaggio naturale.

Questi modelli saranno in grado di generare un discorso umano realistico con la voce o il codice di un'altra persona per raggiungere un particolare obiettivo o compito. Probabilmente inizieranno a essere utilizzati per ingannare i sistemi e gli esseri umani, generando output indistinguibili da quelli reali.

Immagini 1024 x 1024 generate con il dataset CELEBA-HQ.

Direzioni a lungo termine

Nel lungo periodo, ci aspettiamo che l'uso dell'IA in contesti di avversità o di malvagità si sposti sempre più verso il campo dell'apprendimento per rinforzo (RL). A differenza dei modelli discussi finora, l'RL consente a un agente di IA non solo di elaborare gli input, ma anche di prendere decisioni in risposta a tali input in modo da influenzare l'ambiente stesso.

Senza la capacità di prendere decisioni e di agire, un agente di IA è effettivamente in grado di elaborare solo gli input.

La capacità di osservare un ambiente o uno stato di input e poi agire in risposta ad esso chiude quello che Jean Piaget definiva il "ciclo azione-percezione" negli esseri umani. Senza la capacità di prendere decisioni e di agire, un agente di intelligenza artificiale è effettivamente in grado di elaborare solo gli input. L'RL è ciò che ha creato le moderne IA che giocano (ad esempio, https://deepmind.com/research/publications/playing-atari-deep-reinforcement-learning/) e che ha portato i sistemi di IA a battere i migliori giocatori di Go del mondo(https://deepmind.com/blog/alphago-zero-learning-scratch/).

In sostanza, la RL funziona dando a un agente una ricompensa positiva quando raggiunge un obiettivo e una ricompensa negativa quando fallisce. Le ricompense dovrebbero quindi aumentare la probabilità di intraprendere azioni reattive che probabilmente porteranno a ricompense positive, mentre inibiscono le azioni che probabilmente porteranno a ricompense negative.

Una qualche forma di RL (o di metodi correlati che si sviluppano da essa) sarà necessaria per creare agenti AI in grado di ricognire, colpire e attaccare autonomamente una rete. In effetti, in Vectra abbiamo già costruito agenti rudimentali che possono imparare a scansionare le reti in modo da eludere i sistemi di rilevamento. Questi sistemi sono stati addestrati premiando gli agenti per le informazioni raccolte e punendoli ogni volta che venivano scoperti.

Questo tipo di addestramento non è tuttavia semplice, poiché non esistono metodi chiari per definire l'ambiente e lo spazio delle azioni possibili (a differenza di cose come i giochi Atari o persino un gioco notoriamente difficile come il Go, in cui lo spazio degli stati e lo spazio delle azioni sono relativamente chiari).

Esiste anche un progetto che tenta di utilizzare le API di Metasploit per creare una serie di stati e azioni facilmente ingeribili da algoritmi RL, che possono poi essere utilizzati da algoritmi sviluppati in TensorFlow. Il progetto, chiamato DeepExploit, è stato presentato al Black Hat 2018(https://github.com/13o-bbr-bbq/machine_learning_security/tree/master/DeepExploit).

In definitiva, è quest'ultima categoria di IA per comportamenti dannosi o di attacco che ha storicamente catturato l'immaginazione degli scrittori di fantascienza e del pubblico in generale. Tuttavia, molto prima che questo tipo di agenti si realizzi, l'IA e il ML saranno utilizzati per un'ampia varietà di attacchi, alcuni dei quali possiamo già prevedere in anticipo, mentre altri non li conosceremo prima che si verifichino.

Godefroid, P., Peleg, H., & Singh, R. (2017, ottobre). Learn&fuzz: Machine learning for input fuzzing. InProceedings of the 32nd IEEE/ACM International Conference on Automated Software Engineering(pp. 50-59). IEEE Press.

Goodfellow, I. J., Shlens, J., & Szegedy, C. Explaining and harnessing adversarial examples (2014).arXiv preprint arXiv:1412.6572.

Karras, T., Aila, T., Laine, S., & Lehtinen, J. (2017). Coltivazione progressiva di gan per migliorare qualità, stabilità e variazione.arXiv preprint arXiv:1710.10196.

Mnih, V., Kavukcuoglu, K., Silver, D., Graves, A., Antonoglou, I., Wierstra, D., & Riedmiller, M. (2013). Giocare ad Atari con il deep reinforcement learning.arXiv preprint arXiv:1312.5602.

Silver, D., Schrittwieser, J., Simonyan, K., Antonoglou, I., Huang, A., Guez, A., ... & Chen, Y. (2017). Padroneggiare il gioco del Go senza la conoscenza umana.Nature,550(7676), 354.

Su, J., Vargas, D. V., & Kouichi, S. (2017). Attacco a un pixel per ingannare le reti neurali profonde.arXiv preprint arXiv:1710.08864.

DOMANDE FREQUENTI