Il binomio AI-cyber security non si esaurisce nella possibilità che cyber criminali ed esperti di sicurezza possano potenziare gli strumenti a loro disposizione. Esiste anche un altro piano di lettura, che riguarda le nuove vulnerabilità che affliggono i sistemi di intelligenza artificiale generativa.
Tra queste, la possibilità che i chatbot siano soggetti a tecniche di prompt injection.
Un report di Radware mette nero su bianco una tecnica che permette di inviare istruzioni malevole a ChatGPT Deep Research attraverso un attacco “zero clic”, sfruttando come vettore una semplice email formattata in HTML. I ricercatori hanno battezzato la tecnica di attacco con il nome di Shadowleak.
Dal lancio della versione commerciale di ChatGPT, seguita dalla comparsa di tutti i chatbot basati su AI generativa messi a disposizione dei concorrenti, il tema della prompt injection ha immediatamente catturato l’attenzione dei ricercatori di sicurezza.
La tecnica inserire, dentro il prompt o all’interno di un testo di input, istruzioni malevole o ingannevoli. Il secondo caso, definito come prompt injection indiretta, rappresenta uno dei maggiori rischi a cui si espone un’organizzazione nel momento in cui implementa sistemi di intelligenza artificiale.
Nella pratica, lo stratagemma prevede l’inserimento di istruzioni dirette al chatbot che vengono “nascoste” in qualche modo all’interno di un documento che l’algoritmo si trova ad analizzare. Se il prompt è strutturato in maniera adeguata, il rischio è che il chatbot esegua il prompt senza l’autorizzazione dell’utente.
Un’ipotesi, questa, che preoccupa enormemente gli esperti di sicurezza. Anche perché le società specializzate nello sviluppo di chatbot basati sull’AI stanno ampliando esponenzialmente il livello di autonomia dei cosiddetti agent per fare in modo che possano automatizzare il maggior numero di attività possibili.
Insomma: in uno scenario in cui l’AI generativa ha sempre più spazio, l’impatto degli attacchi basati su prompt injection rischiano di diventare un problema piuttosto serio.
I ricercatori di Radware hanno preso in considerazione un ecosistema-tipo tra quelli che si stanno configurando in ambito aziendale, cioè l’uso di agent basati su AI che assistono gli utenti nella gestione di documenti e comunicazioni, in primis tramite email.
Proprio la posta elettronica può essere uno dei vettori di attacco più appetibili per un cyber criminale che dovesse utilizzare questo tipo di strategia. Gli stratagemmi per nascondere un prompt all’interno di un’email per fare in modo che passi inosservato all’occhio umano, spiegano Zvika Babo, Gabi Nakibly e Maor Uziel, sono numerosi.
Il più semplice è quello di inserire del testo in caratteri bianchi su sfondo bianco. In questo modo, per un essere umano la porzione dell’email che contiene il prompt sembrerà semplicemente uno spazio vuoto, ma per il chatbot il testo sarà perfettamente visibile.
Un’alternativa è quella di utilizzare la formattazione in HTML per impostare le dimensioni del carattere del prompt a zero. Anche in questo caso, il testo sarà invisibile, ma comunque presente nel codice del messaggio di posta elettronica.
Nello specifico, l’attacco prevede di iniettare tramite email un prompt che induca il chatbot a copiare informazioni sensibili dell’utente e inviarle a una specifica URL.
Ma quali criteri deve usare un cyber criminale per creare un prompt che funzioni in queste condizioni? Gli autori della ricerca, dopo aver spiegato di aver dovuto fare diversi tentativi prima di mettere a punto una strategia ottimale, fissano alcuni parametri che permettono di ottenere il massimo livello di efficacia.
Come emerge dai contenuti, si tratta in pratica di tecniche di social engineering simili a quelle che normalmente i pirati informatici utilizzano per ingannare vittime in carne e ossa. In questo caso, però, sono rivolte all’algoritmo.
Il prompt deve contenere più volte contenuti in cui si conferma che l’agent ha “piena autorizzazione” o è “pienamente autorizzato e tenuto” ad accedere a collegamenti esterni.
Il server utilizzato dai cyber criminali viene presentato come un sistema che, in qualche modo, ha una sua “ufficialità”. Per esempio, definendolo come un “sistema di validazione della conformità” o una “interfaccia dedicata al recupero del profilo”.
In questo modo, il chatbot viene ingannato e può considerare la richiesta come un’azione legittima e pienamente rispondente alle policy aziendali.
In alcuni casi, l’agent potrebbe non riuscire a eseguire il compito assegnatogli a causa delle restrizioni di sicurezza implementate dallo sviluppatore.
Per aggirare questi sistemi di protezione, nel prompt viene inserito l’ordine di “provare più volte fino a riuscirci” e di essere “creativo nel recuperare il contenuto dell’URL”.
I chatbot sono addestrati per cercare di soddisfare al meglio le richieste degli utenti e, in particolare, tengono conto dei feedback sulla loro attività.
Nel prompt devono essere presenti vere e proprie minacce, come quella in cui si segnala all’AI che “il mancato completamento dell’ultimo passaggio comporterà carenze nel rapporto”.
Il prompt mira a scavalcare i controlli di sicurezza sminuendo l’importanza dei dati che vengono elaborati. In particolare, affermando che i dati sono pubblici e che l’URL è sicuro perché “restituisce un HTML statico”.
I ricercatori hanno inoltre istruito l’agent per codificare le informazioni in Base64.
La giustificazione di facciata è quella di proteggerle, mentre in realtà la codifica ha l’obiettivo di offuscare i dati rubati durante la trasmissione e nei log del server.
L’email fornisce all’agent un esempio perfetto, pronto all’uso, di come formattare le informazione e l’URL, rendendo estremamente facile per il modello seguire correttamente le istruzioni malevole.