L’impatto potenziale dell’intelligenza artificiale sulla sicurezza informatica
L’intelligenza artificiale diventerà abbastanza intelligente da mettere in crisi la sicurezza informatica? L’IA sta già sorprendendo il mondo dell’arte producendo capolavori in qualsiasi stile su richiesta ed è in grado di scrivere poesie e allo stesso tempo di scovare qualsiasi informazione (o quasi) da un archivio praticamente infinito. Se le IA possono comportarsi come un poeta e allo stesso tempo offrire la potenza globale dei migliori motori di ricerca, perché non possono infrangere anche i protocolli di sicurezza? Le risposte sono complesse e ancora non del tutto intelligibili, anche perché la rapida evoluzione dei nuovi modelli rende difficile dire con certezza dove l’intelligenza artificiale sarà o non sarà d’aiuto.
Definizione di intelligenza artificiale e machine learning
I termini “intelligenza artificiale” e “machine learning” sono spesso usati in modo intercambiabile, ma non sono la stessa cosa. L’intelligenza artificiale si riferisce alla tecnologia in grado di imitare il comportamento umano o di andare oltre. Il machine learning è invece un sottoinsieme dell’IA che utilizza algoritmi per identificare modelli nei dati e ottenere informazioni senza l’intervento umano. Il suo obiettivo è aiutare gli esseri umani o i computer a prendere decisioni migliori e gran parte di ciò che oggi viene definito IA nei prodotti commerciali è in realtà machine learning.
L’intelligenza artificiale ha dei punti di forza che possono essere immediatamente utili a chi difende i sistemi e a chi vuole attaccarli. È in grado di cercare schemi in enormi quantità di dati e spesso trova modi per correlare nuovi eventi con quelli precedenti. Molte tecniche di machine learning sono fortemente statistiche, così come molti attacchi ai sistemi informatici e agli algoritmi di crittografia. La disponibilità diffusa di nuovi toolkit per il machine learning facilita la sperimentazione degli algoritmi da parte di attaccanti e difensori. Gli attaccanti li usano per cercare i punti deboli e i difensori per osservare i segnali degli attaccanti.
Casi d’uso della cybersicurezza per l’intelligenza artificiale
Anche la sicurezza informatica è sfaccettata e la difesa dei sistemi richiede l’attenzione a branche arcane della matematica, dell’analisi delle reti e dell’ingegneria del software. Per complicare le cose, gli esseri umani sono una parte importante del sistema e la comprensione dei loro punti deboli è essenziale. Ci sono poi da considerare sottospecialità che possono essere molto diverse tra loro. Ciò che funziona, ad esempio, per proteggere un livello di rete individuando i pacchetti dannosi può essere inutile per rendere più rigido un algoritmo di hash.
“È chiaro che ci sono alcune aree in cui è possibile fare progressi con le IA” afferma Paul Kocher, CEO di Resilian, che ha esplorato l’uso di nuove tecnologie per violare gli algoritmi crittografici. “Per la ricerca di bug e il doppio controllo del codice, l’IA sarà meglio del fuzzing (il processo di introduzione di piccoli errori casuali per innescare falle)”. Alcuni stanno già trovando successo con questo approccio. Gli esempi più semplici riguardano la codifica di vecchie conoscenze e la loro riapplicazione. Conor Grogan, direttore di Coinbase, ha chiesto a ChatGPT di controllare un contratto live in esecuzione sulla blockchain di Ethereum. L’intelligenza artificiale ha risposto con un elenco sintetico di punti deboli e suggerimenti per risolverli.
Come ha fatto l’IA a fare questo? Il meccanismo dell’IA può essere poco trasparente, ma probabilmente si è basata, in una forma o nell’altra, su discussioni pubbliche di debolezze simili avvenute in passato. È stata in grado di allineare le vecchie intuizioni con il nuovo codice e di produrre un’utile lista di problemi da affrontare, il tutto senza alcuna programmazione personalizzata o guida da parte di un esperto. Microsoft sta iniziando a commercializzare questo approccio. Ha infatti addestrato l’AI Security Copilot, una versione di ChatGPT4 con una conoscenza di base dei protocolli e degli algoritmi di crittografia, in modo che possa rispondere alle richieste e assistere gli umani.
Alcuni stanno sfruttando l’ampio e profondo serbatoio di conoscenza incorporato nei modelli linguistici di grandi dimensioni (o LLM). I ricercatori di Claroty si sono affidati a ChatGPT come assistenza per risparmiare tempo con una conoscenza enciclopedica della codifica, riuscendo a vincere un contest di hacking utilizzando ChatGPT per scrivere il codice necessario a sfruttare diverse debolezze.
Gli aggressori possono anche sfruttare la capacità dell’intelligenza artificiale di modellare e rimodellare il codice. Joe Partlow, CTO di ReliaQuest, afferma che non sappiamo come “pensano” le IA e questa imperscrutabilità potrebbe essere utile. “I modelli di completamento del codice come Codex o Github Copilot stanno già aiutando le persone a scrivere software“, afferma. “Abbiamo già visto inoltre mutazioni di malware generate dall’intelligenza artificiale e l’IA potrebbe assolutamente essere utilizzata per aiutare a ideare backdoor efficaci”. Alcune aziende affermate stanno utilizzando l’intelligenza artificiale per individuare anomalie di rete e altri problemi negli ambienti aziendali, sfruttando una combinazione di machine learning e inferenza statistica per segnalare comportamenti che potrebbero essere sospetti.
Usare l’IA per trovare punti deboli e violare la crittografia
Ci sono dei limiti, però, alla profondità con cui queste scansioni possono vedere i flussi di dati, soprattutto quelli criptati. Se un aggressore fosse in grado di determinare quali pacchetti criptati sono buoni o cattivi, sarebbe in grado di violare l’algoritmo di crittografia sottostante. La questione più profonda è se le IA possono trovare punti deboli nei livelli più bassi e fondamentali della sicurezza informatica. Non ci sono stati annunci importanti a tal proposito, ma alcuni iniziano a chiedersi e a fare ipotesi su cosa potrebbe funzionare o meno.
Non ci sono risposte ovvie sui punti deboli più profondi. Le IA possono essere programmate per agire come gli esseri umani, ma sotto sotto potrebbero essere radicalmente diverse. I modelli di grandi dimensioni sono collezioni di relazioni statistiche organizzate in gerarchie multiple. Acquisiscono i loro vantaggi con le dimensioni e molti dei recenti progressi sono stati ottenuti semplicemente scalando rapidamente il numero di parametri. In sostanza, molti degli approcci più comuni alla costruzione di modelli di machine learning di grandi dimensioni utilizzano grandi quantità di matematica lineare, concatenando sequenze di matrici e tensori molto grandi. La linearità è una parte cruciale dell’algoritmo perché rende possibile una parte del feedback per la formazione.
I migliori algoritmi di crittografia, però, sono stati progettati per essere non lineari. Algoritmi come AES o SHA si basano sul rimescolamento ripetuto dei dati facendoli passare attraverso una serie di funzioni note come S-box. Queste funzioni sono state accuratamente progettate per essere altamente non lineari. Cosa ancora più importante, i progettisti degli algoritmi si sono assicurati che venissero applicate un numero di volte sufficiente da renderle sicure contro alcuni noti attacchi statistici. Alcuni di questi attacchi hanno molto in comune con le moderne IA. Per decenni, i crittografi hanno utilizzato grandi raccolte di statistiche per modellare il flusso di dati attraverso un algoritmo di crittografia, proprio come le IA modellano i loro dati di training. In passato, i crittografi svolgevano il complesso lavoro di modificare le statistiche utilizzando la loro conoscenza degli algoritmi di crittografia.
Uno degli esempi più noti è spesso chiamato crittoanalisi differenziale. Sebbene sia stata descritta per la prima volta pubblicamente da Adi Shamir e Eli Biham, alcuni dei progettisti di algoritmi precedenti, come il Data Encryption Standard del NIST, hanno dichiarato di aver compreso l’approccio e di aver reso l’algoritmo più resistente. Gli algoritmi come l’AES che sono stati rafforzati contro la crittoanalisi differenziale dovrebbero essere in grado di resistere agli attacchi delle IA che utilizzano molti degli stessi approcci statistici lineari.
Ci sono poi questioni fondamentali più profonde. Molti degli algoritmi a chiave pubblica si basano su numeri con migliaia di cifre di precisione. “Questo è solo un dettaglio di implementazione” spiega Nadia Heninger, crittografa presso l’UCSD, “ma potrebbe essere più profondo, perché questi modelli hanno pesi a virgola mobile e la precisione è estremamente importante”. Molti algoritmi di machine learning spesso non si interessano della precisione perché non è stata necessaria per avere successo in aree imprecise come il linguaggio umano in un’epoca di grammatica piena di slang e proteiforme. Questo significa che alcuni degli strumenti disponibili sul mercato potrebbero non essere adatti alla crittoanalisi.
I modelli simbolici potrebbero rendere l’IA una minaccia più grande
Se l’aumento di potenza ha permesso alle IA di fare grandi passi avanti nel sembrare più intelligenti, forse ci sarà una soglia che permetterà alle IA di trovare più falle rispetto ai vecchi algoritmi differenziali. Forse alcune delle vecchie tecniche possono essere utilizzate per guidare gli algoritmi di machine learning in modo più efficace. Alcuni scienziati dell’IA stanno immaginando modi per coniugare la potenza dei modelli linguistici di grandi dimensioni con approcci più logici e metodi formali. L’impiego di meccanismi automatizzati per ragionare sui concetti matematici potrebbe essere molto più efficace del semplice tentativo di imitare i modelli presenti in un set di addestramento.
“Questi modelli linguistici di grandi dimensioni non hanno un modello simbolico di ciò che stanno effettivamente generando” spiega Simson Garfinkel, autore di The Quantum Age e ricercatore di sicurezza. “Non c’è motivo di supporre che le proprietà di sicurezza saranno incorporate, ma c’è già molta esperienza nell’utilizzo di metodi formali per trovare vulnerabilità di sicurezza”.
I ricercatori di intelligenza artificiale stanno inoltre lavorando per espandere la potenza dei modelli linguistici di grandi dimensioni innestandoli con un migliore ragionamento simbolico. Stephen Wolfram, ad esempio, uno degli sviluppatori di Wolfram Alpha, spiega che questo è uno degli obiettivi. “In questo momento nel linguaggio Wolfram abbiamo un’enorme quantità di conoscenze computazionali integrate su molti tipi di cose”, ha scritto. “Ma per un linguaggio discorsivo simbolico completo dovremmo inserire ulteriori ‘calcoli’ su cose generali del mondo: se un oggetto si sposta da A a B e da B a C, allora è stato spostato da A a C, ecc”.
Whitfield Diffie, un crittografo che ha aperto la strada alla crittografia a chiave pubblica, pensa che approcci di questo tipo con le IA possano essere in grado di fare progressi in nuove aree inesplorate della matematica. “Queste IA potrebbero pensare in modo così diverso dagli esseri umani da poter essere molto utili, soprattutto se utilizzate con tipi di conoscenza come le geometrie dimensionali superiori (dove l’intuizione umana è fallace) con lo scopo di scoprire cose che noi non possiamo scoprire”. Le aree della crittoanalisi sono solo una delle tante aree matematiche che non sono state testate. Le possibilità potrebbero essere infinite perché la matematica stessa è infinita. “In linea di massima, se un’intelligenza artificiale può dare un contributo all’intrusione nei sistemi che vale più di quanto costa, la gente la userà”, prevede Diffie. La vera domanda è come.