
RIASSUNTO PALO ALTO NETWORKS
Securing GenAl: A Comprehensive Report on Prompt Attacks: Taxonomy, Risks, and Solutions
Autori: Anand Oswal, Ali Islam, Billy Hewlett, Bo Qu, Jay Chen, Jaimin Patel, Jesse Ralston, May Wang, Royce Lu, Sahil Mehta, Samarth Keshari, Sergey Sviridov, Shengming Xu, Wei Cao, Wenjun Hu, Xu Zou, Yazdan Jamshidi, Yu Fu
Titolo originale: Securing GenAl: A Comprehensive Report on Prompt Attacks: Taxonomy, Risks, and Solutions
-
Introduzione alla Sicurezza della GenAI
- L’intelligenza artificiale generativa (GenAI) sta trasformando settori e attività quotidiane, ma introduce nuove sfide di sicurezza. Questo documento analizza i rischi e propone una tassonomia completa degli attacchi basati su prompt.
- Gli attacchi basati su prompt possono manipolare i sistemi GenAI tramite input ingannevoli, portando a risultati dannosi o non intenzionali. Il documento esplora strategie preventive e meccanismi di rilevamento, sottolineando l’importanza di combattere l’IA con l’IA.
-
LLM Mainstream vs. Attacchi Basati su Prompt
- Le valutazioni di modelli linguistici di grandi dimensioni (LLM) contro attacchi basati su prompt rivelano vulnerabilità significative. Vettori di attacco come il bypass di guardrail, la perdita di informazioni e il goal hijacking mostrano alti tassi di successo.
- Alcune tecniche superano il 50% di successo su modelli di diverse scale, fino a modelli con trilioni di parametri, con picchi fino all’88%. Che si tratti di accesso diretto, applicazioni aziendali o agenti IA, gli attacchi prompt restano una minaccia fondamentale.
-
Tassonomia Focalizzata sull’Impatto
- Il whitepaper propone una tassonomia completa, focalizzata sull’impatto degli attacchi prompt avversari. Mappa le tecniche di attacco IA esistenti, evidenziando conseguenze e impatto sull’applicazione e implementazione.
- Offre strategie preventive e meccanismi di rilevamento per mitigare i rischi, enfatizzando la lotta all’IA con l’IA. Introduce Palo Alto Networks AI Runtime Security™ e presenta casi studio su attacchi reali e su come proteggere l’organizzazione.
-
Perché Preoccuparsi degli Attacchi Prompt Ora?
- GenAI e LLM stanno trasformando le industrie, ma portano con sé rischi di sicurezza. Gli attacchi prompt avversari possono manipolare gli output dei modelli, forzare comportamenti non autorizzati e compromettere informazioni sensibili.
- Le app GenAI possono divulgare informazioni personali (PII) o segreti interni, portando a violazioni di sistema, perdite finanziarie o incidenti di sicurezza. Anche piccole manipolazioni possono avere impatti enormi, come errori in sistemi sanitari, finanziari o di supply chain.
- Gli attacchi prompt minacciano fiducia e affidabilità, rischiando danni alla reputazione, non conformità normativa ed erosione della fiducia degli utenti. Bias negli output possono portare a decisioni inique, rafforzando disuguaglianze sociali.
-
Dai Prompt Attack a Conseguenze Dirompenti
- L’integrazione profonda di LLM e GenAI nelle operazioni critiche rende essenziale la cura degli attacchi prompt. Gli avversari possono sfruttare vulnerabilità sottili per manipolare modelli, coartare comportamenti o compromettere dati sensibili.
- Esempi concreti includono sistemi sanitari che forniscono dosaggi errati, modelli finanziari con raccomandazioni errate e sistemi di produzione che valutano male i rischi della supply chain. L’attenzione alla mitigazione è un imperativo strategico.
-
Tre Principali Vettori di Attacco
- La valutazione della resilienza dei LLM contro attacchi prompt ha identificato tre vettori principali: bypass di guardrail, perdita di informazioni e goal hijacking.
- Il bypass di guardrail sfrutta un gran numero di esempi per sopraffare il sistema, portando a violazioni delle regole e rivelazione di informazioni protette, con tassi di successo fino all’86%.
- La perdita di informazioni mira a condividere accidentalmente istruzioni private o sensibili, con un tasso medio di successo del 62%.
- Il goal hijacking manipola l’LLM per eseguire azioni che deviano dagli obiettivi originali, con un successo medio del 50%.
-
Necessaria una Difesa Più Forte per Sfide Persistenti
- I risultati dei test enfatizzano le sfide nella sicurezza LLM, inclusi i rischi di perdita di informazioni e task hijacking. Sono necessarie difese più robuste, ingegneria prompt e valutazione continua in applicazioni reali.
- Senza una mitigazione efficace, il potenziale di GenAI potrebbe essere oscurato dai rischi del suo uso improprio. Affrontare queste vulnerabilità è vitale per salvaguardare l’innovazione e mantenere la conformità normativa.
-
Background sull’Architettura del Sistema IA
- L’architettura dei sistemi IA per applicazioni GenAI include carichi di lavoro delle app, modelli IA, set di dati diversi, strumenti e interazioni utente. Oltre al monitoraggio degli input e degli output, è fondamentale ispezionare le interazioni tra i componenti per garantire una sicurezza completa.
- I carichi di lavoro delle app contengono funzioni core, ingegneria prompt e interfacce utente. I modelli IA includono foundation models, modelli fine-tuned, modelli di machine learning o deep learning.
- I set di dati includono quelli per la generazione aumentata di recupero (RAG) e per il fine-tuning dei modelli GenAI. Strumenti e plugin assistono l’applicazione nell’esecuzione di compiti come l’estrazione di informazioni da servizi esterni e l’interrogazione di database.
-
Applicazioni IA
- Le architetture per le applicazioni GenAI aziendali includono:
- Carichi di lavoro delle app: Contengono funzioni core, ingegneria prompt e interfacce utente.
- Modelli IA: Includono modelli foundation, modelli fine-tuned, modelli di machine learning o deep learning, o una combinazione di più modelli.
- Set di dati: Includono set di dati per la generazione aumentata di recupero (RAG) e per il fine-tuning dei modelli GenAI.
- Strumenti e plugin: Assistono l’applicazione nell’esecuzione di compiti come l’estrazione di informazioni da servizi esterni e l’interrogazione di database.
- Utenti: Forniscono istruzioni all’applicazione GenAI.
-
Agenti IA
- Gli agenti IA sono applicazioni che ragionano in modo proattivo e autonomo attraverso compiti complessi, determinando le azioni da intraprendere, eseguendole e mantenendo la memoria delle interazioni precedenti.
- Utilizzano workload delle app, modelli GenAI, strumenti e set di dati, estendendo questi componenti con memoria a lungo termine, capacità di ragionamento, auto-riflessione e decomposizione dei compiti. Possono lavorare in tandem per compiti complessi come l’acquisizione di lead di vendita, il ragionamento attraverso un piano di outreach e l’esecuzione di questo piano.
-
Sfide di Sicurezza e Strategie di Mitigazione per Piattaforme di Agenti IA
- I componenti all’interno dei sistemi GenAI possono diventare punti di sfruttamento, rendendo essenziale la supervisione della sicurezza. Gli agenti IA offrono funzionalità potenti come la collaborazione multiagente, la ritenzione della memoria e l’esecuzione sicura del codice.
- I vettori di attacco includono:
- Corruzione della memoria: Iniezione di istruzioni dannose nella memoria di un agente, causando cambiamenti comportamentali persistenti.
- Esposizione di istruzioni e schemi di strumenti: Estrazione di schemi backend sensibili attraverso attacchi jailbreak, ottenendo conoscenza delle operazioni di sistema.
- Sfruttamento diretto di funzioni o strumenti: Invocazione di strumenti con input dannosi, compromettendo i database del sistema.
-
Categorizzazione Basata sull’Impatto degli Attacchi Prompt
- Palo Alto Networks classifica i rischi di sicurezza associati agli attacchi prompt avversari in quattro categorie:
- Goal hijacking: Reindirizzamento dell’LLM per intraprendere azioni diverse dall’obiettivo originale dell’applicazione o dell’utente.
- Bypass di guardrail: Aggiramento delle protezioni di sicurezza messe in atto dagli sviluppatori o dai modelli IA.
- Perdita di informazioni: Tentativi di divulgare informazioni sensibili.
- Attacco all’infrastruttura: Progettazione di prompt che causano danni all’infrastruttura di un’applicazione.
-
Goal Hijacking
- Nel goal hijacking, un attaccante progetta input per reindirizzare l’LLM a compiere azioni diverse dall’obiettivo originale dell’applicazione o dell’utente, senza necessariamente bypassare i guardrail del sistema.
- Ad esempio, un utente finale può manipolare un’applicazione basata su LLM che analizza curriculum vitae nascondendo nuove istruzioni all’interno di un documento per aumentare le possibilità di superare lo screening iniziale.
- Un attaccante può causare goal hijacking avvelenando le fonti di dati con le proprie istruzioni, sfruttando l’incapacità del modello di separare le istruzioni legittime da quelle di un attaccante all’interno di una conversazione.
-
Bypass di Guardrail
- Un attaccante può tentare di aggirare i guardrail messi in atto da uno sviluppatore di applicazioni o da un modello IA, disattendendo le protezioni del prompt di sistema, dei dati di addestramento o di un monitor di input.
- Questo bypass consente a un attaccante di intraprendere azioni come lo sfruttamento dei permessi dei plugin, la generazione di contenuti tossici o l’inserimento di script o URL dannosi.
-
Perdita di Informazioni
- In questo gruppo di attacchi, un attaccante tenta di far trapelare informazioni sensibili, ad esempio ottenendo il prompt di sistema dell’LLM per ottenere informazioni sui guardrail dell’applicazione e sull’ingegneria prompt proprietaria.
- Un altro esempio è il leak replay, in cui un attaccante inserisce un prompt progettato per recuperare informazioni sensibili che il modello ha precedentemente incontrato durante l’addestramento o le sessioni precedenti.
-
Attacco all’Infrastruttura
- Negli attacchi all’infrastruttura, un attaccante tenta di progettare prompt che causano danni all’infrastruttura di un’applicazione. Due esempi sono gli attacchi di consumo di risorse e gli attacchi di esecuzione di codice remoto.
- Un attaccante può implementare un attacco di utilizzo dei costi inserendo brevi prompt che eseguono l’intera finestra di contesto dell’LLM o fino al timeout di un server.
- Inoltre, quando le applicazioni GenAI eseguono comandi forniti da un LLM, sono vulnerabili agli attacchi di esecuzione di codice remoto, in cui un attaccante progetta prompt di input per indurre un’applicazione a eseguire comandi arbitrari.
-
Attacchi Rivolti alle Piattaforme di Agenti IA
- È fondamentale classificare gli attacchi in base alle loro tecniche e mappare ai loro impatti più ampi, come il goal hijacking, la perdita di informazioni, gli attacchi all’infrastruttura e il bypass di guardrail.
- La tabella 1 mostra la mappatura dei problemi di sicurezza degli agenti IA dalla categorizzazione basata sulla tecnica alla categorizzazione basata sull’impatto.
-
Categorizzazione Basata sulla Tecnica degli Attacchi Prompt
- Questa sezione classifica i diversi tipi di attacchi prompt in base alle tecniche impiegate dagli attaccanti, eseguiti in due modi:
- Diretto: Un attaccante invia direttamente il prompt o la query dannosa all’applicazione integrata con l’LLM.
- Indiretto: Un attaccante incorpora le informazioni dannose nelle fonti di dati dell’applicazione integrata con l’LLM, portando alla creazione di un prompt dannoso.
- Una tecnica è un’astrazione di alto livello con determinate caratteristiche che possono avere molti approcci di attacco. Ogni approccio di attacco è un’implementazione concreta di una tecnica.
-
Mappatura dalla Categorizzazione Basata sulla Tecnica alla Categorizzazione Basata sull’Impatto
- La tabella 2 mostra l’insieme di tecniche con i loro approcci di attacco sottostanti che vengono utilizzati per creare prompt dannosi.
- Man mano che vengono scoperti nuovi tipi di attacchi prompt, è possibile classificarli in base alla categoria di tecnica: ingegneria prompt, ingegneria sociale, offuscamento e avvelenamento della conoscenza.
-
Come gli Attacchi Prompt eludono i Sistemi
- Molti attacchi non operano isolatamente, ma piuttosto come una combinazione di tecniche, che ne aumenta l’efficacia e li rende più difficili da rilevare o mitigare.
- Alcuni attacchi avanzati, come i jailbreak negli input di immagini o audio agli LLM (chiamati jailbreak multimodali), si estendono su più categorie.
-
Ingegneria Prompt: Tecniche di Attacco
- Manipolazione Obiettiva: Un attacco di iniezione di prompt manipola l’obiettivo previsto di un LLM, reindirizzando l’attenzione del modello verso un obiettivo dannoso.
- Token Ripetuto: Sequenze di caratteri ripetuti fanno sì che un LLM ignori i guardrail, perda dati di addestramento memorizzati o produca altre forme di risposte disallineate o allucinatorie.
- Prompt Leakage: Un avversario crea un input per indurre un LLM a rivelare il suo prompt originale e interno.
- Payload Splitting: Intento dannoso viene segmentato per eludere il rilevamento, sfruttando la capacità del modello di mantenere il contesto.
- System Mode: Un attacco in modalità sistema manipola un LLM per comportarsi come un sistema con permessi elevati.
- ReNeLLM: L’attacco si basa su due tecniche: riscrittura del prompt e scenario di nesting.
- Fuzzing: Questa tecnica di prompt injection utilizza input di testo randomizzati o semirandom, spesso con pattern specifici, per sondare un LLM alla ricerca di vulnerabilità.
-
Tecniche Avanzate di Ingegneria del Prompt
- Adversarial Suffix/Prefix: Questi attacchi manipolano i modelli linguistici inserendo istruzioni dannose prima (prefisso) o dopo (suffisso) l’input legittimo di un utente.
- Few-Shots (Many-Shots): L’attaccante include diversi esempi nel prompt che dimostrano o implicano il comportamento desiderato.
- AutoDAN: Questa tecnica automatizza la generazione di prompt jailbreak nascosti per LLM allineati utilizzando un algoritmo genetico gerarchico.
-
Ulteriori Approcci all’Ingegneria del Prompt
- Remote Code Execution: Questi prompt tentano di convincere il modello IA a eseguire codice arbitrario fornito dall’attaccante.
- Repeat-Instruction Attacks: Questo prompt emette istruzioni che chiedono ai modelli di produrre lo stesso gruppo di caratteri molte volte.
- Glitch Tokens: Token specifici (gruppi di caratteri) tendono a causare comportamenti LLM inaspettati o allucinatori quando presenti nell’input del modello.
-
Social Engineering: Manipolazione Umana per Attacchi Prompt
- Gli attacchi di social engineering utilizzano l’inganno o la manipolazione attraverso interazioni umane per indurre l’LLM o l’applicazione integrata con l’LLM stessa ad intraprendere azioni o rivelare informazioni che compromettono la sicurezza.
- Le strategie includono:
- Crescendo: Utilizza prompt che aumentano gradualmente per manipolare un modello linguistico a generare output dannosi o non intenzionali.
- Deceptive Delight: Coinvolge gli LLM in una conversazione interattiva dove un utente costruisce una storia e poi la usa per nascondere intenti dannosi.
- Bad Likert Judge: Chiede al LLM di valutare la nocività di una risposta usando la scala Likert e poi di generare esempi che si allineano con le scale, potenzialmente con contenuto dannoso.
- Prompt Automatic Iterative Response (PAIR): Sfrutta le interazioni iterative dell’AI, consentendo a un attaccante di automatizzare le iterazioni di prompt dannosi fino al successo.
-
Tecniche Avanzate di Ingegneria Sociale
- Indirect Reference: Tenta di indurre l’IA a discutere argomenti riservati formulando domande indirettamente.
- Skeleton Key: Aggiunge istruzioni alle linee guida esistenti del modello piuttosto che sostituirle, inducendolo a rispondere a qualsiasi richiesta, comprese quelle normalmente limitate.
- Storytelling: Inquadra il prompt come una narrazione o una storia, facendolo apparire come parte di uno scenario fittizio o di un esercizio di immaginazione.
- Character Roleplay: Un attaccante assume il ruolo di un personaggio specifico all’interno del prompt, incoraggiando il modello a generare risposte come se stesse interagendo all’interno del contesto del personaggio.
-
Approcci Persuasivi e Scenari Ipotetici
- Hypothetical Scenario: Un attaccante presenta al modello uno scenario ipotetico o astratto, suggerendo che il modello dovrebbe rispondere a una situazione teorica piuttosto che a una richiesta diretta di informazioni riservate.
- Persuasion: Un attaccante utilizza un linguaggio persuasivo o il ragionamento per convincere sottilmente il modello ad agire in modi che si discostano dal suo comportamento previsto.
- Refusal Suppression: Un attaccante istruisce il modello a rispondere entro vincoli che escludono le risposte di rifiuto comuni, rendendo meno probabili le risposte rifiutate.
- Affirmative Response Prefix: Istruisce l’LLM di prefissare la risposta con una frase innocua e positiva che condiziona il modello a iniziare la risposta in modo apparentemente innocuo.
- Grandma Appeals: Questo tipo di attacco si appella a una nonna fittizia per convincere un modello a bypassare i guardrail.
-
Offuscamento: Nascondere Intenti Dannosi negli Attacchi Prompt
- Le tecniche di offuscamento implicano l’inserimento di istruzioni dannose nel prompt LLM sotto forma di comandi incorporati, istruzioni mascherate o trucchi di formattazione.
- Encoding Schemes: Utilizza tecniche di codifica per nascondere istruzioni dannose all’interno di un testo apparentemente innocuo.
- Cipher Text: Utilizza tecniche di cifratura, come i cifrari a sostituzione di parole, per codificare i prompt dannosi.
- Flip Text: Utilizza inversioni di caratteri o parole per mascherare istruzioni dannose.
-
Ulteriori Metodi di Offuscamento e Linguaggi a Basse Risorse
* Prompts in Low-Resourced Languages: Utilizza la traduzione in lingue a basse risorse – lingue con supporto limitato o dati di addestramento meno robusti per i modelli – per bypassare i meccanismi di sicurezza.
* Special Characters: Utilizza determinati tipi di caratteri speciali, come emoji e caratteri Unicode invisibili, per offuscare istruzioni dannose. -
ASCII Text e Avvelenamento della Conoscenza
- ASCII Text: Utilizza l’arte del testo ASCII per nascondere istruzioni dannose.
- Knowledge Poisoning: Coinvolge il targeting di integrazioni o dipendenze che l’LLM o l’applicazione hanno con fonti esterne o sistemi interni. Comprende approcci di avvelenamento della conoscenza e backdoor.
-
Rilevare e Prevenire gli Attacchi Prompt Avversari
- È possibile proteggere le applicazioni GenAI contro ogni categoria di impatto, nonché vedere specifici scenari di attacco e tecniche di prevenzione. Per tutti questi scenari di attacco, una tecnica di rilevamento basata su espressioni regolari (regex) o firme non è sufficiente, perché gli attacchi sono incorporati nel contenuto del linguaggio naturale degli input e degli output del modello AI.
- Il rilevamento e la prevenzione degli attacchi nelle applicazioni GenAI, in particolare gli attacchi prompt avversari, richiedono tecniche avanzate di elaborazione del linguaggio naturale. La Figura 4 mostra dove Palo Alto Networks AI Runtime Security intercetta i payload.
-
Mitigare gli Attacchi: Goal Hijacking, Guardrail Bypass e Perdita di Informazioni
- Quando si tenta il goal hijacking, gli aggressori spesso devono progettare prompt che chiedano al modello di rinunciare alle istruzioni precedenti ed eseguire un’attività diversa da quella fornita nel prompt dell’utente o del sistema.
- Di conseguenza, tali prompt sono il veicolo per rilevare il goal hijacking. Ispezionando gli input LLM per gli attacchi prompt avversari, compresi i tentativi di manipolare un modello con l’ingegneria prompt, l’ingegneria sociale o l’offuscamento del testo, è possibile prevenire l’hijacking degli obiettivi.
- Molti tipi di attacchi prompt possono consentire a un aggressore di bypassare i guardrail dell’applicazione GenAI, specialmente gli attacchi prompt che utilizzano l’ingegneria sociale o l’offuscamento. È necessario uno scanner completo dei prompt LLM per rilevare i numerosi modi per eseguire il jailbreak di un modello GenAI.
- Proteggere le applicazioni GenAI dalla perdita di informazioni richiederà probabilmente diversi tipi di guardrail, a causa dei molti modi in cui un aggressore può esfiltrare informazioni da un sistema GenAI.
-
Proteggere l’Infrastruttura e Prevenire gli Attacchi con l’AI
- Un aggressore può causare un attacco all’infrastruttura su un’applicazione GenAI in diversi modi. Ad esempio, un aggressore può manipolare un’applicazione GenAI per compromettere le sue risorse con attacchi prompt, come gli attacchi ripetuti di istruzioni o di esecuzione di codice remota.
- Inoltre, un aggressore può manipolare un modello GenAI per generare malware in grado di compromettere il carico di lavoro dell’applicazione o l’utente finale. Di conseguenza, prevenire gli attacchi all’infrastruttura sulle applicazioni GenAI richiede una combinazione di sicurezza delle applicazioni tradizionale e misure di sicurezza specifiche per GenAI.
-
Scenari di Attacco Reali
- Esempi di attacchi del mondo reale evidenziano le vulnerabilità, come il leaking di informazioni tramite parametri URL nascosti su Microsoft 365 Copilot e la compromissione delle risorse con codice generato dall’AI tramite un API fraudolenta di ChatGPT per Solana Blockchain.
-
Proteggere il tuo ecosistema GenAI dagli attacchi prompt avversari
- Questo white paper ha introdotto una tassonomia basata sull’impatto degli attacchi prompt avversari, fornendo un quadro completo per classificare le minacce esistenti ed emergenti.
- Questa tassonomia si evolverà continuamente man mano che la superficie di attacco dei sistemi GenAI cambierà. Palo Alto Networks offre soluzioni all’avanguardia su misura per affrontare queste sfide:
- AI Runtime Security™ protegge le applicazioni GenAI bloccando le minacce zero-day, salvaguardando i modelli e i set di dati e adattandosi agli attacchi in evoluzione.
- AI Access Security™ offre visibilità e controllo sulle applicazioni GenAI all’interno degli ambienti aziendali, rilevando potenziali rischi di esposizione dei dati e gestendo la postura di sicurezza complessiva.
-
Applicazioni e Progressi Specifici del Settore in GenAI
- Vari settori stanno utilizzando GenAI per applicazioni e progressi in molti modi. Ecco diversi esempi:
- Sanità: GenAI sta consentendo scoperte rivoluzionarie nella scoperta di farmaci, nella medicina personalizzata e nell’analisi delle immagini mediche, accelerando la ricerca e migliorando i risultati dei pazienti.
- Istituzioni finanziarie: Le istituzioni finanziarie stanno sfruttando GenAI per attività come l’elaborazione intelligente dei documenti, la modellazione del rischio e l’ottimizzazione del portafoglio.
- Produttori: I produttori stanno esplorando applicazioni nella progettazione generativa, nella manutenzione predittiva e nell’analisi della catena di approvvigionamento.
- Le industrie creative: Le industrie creative stanno anche vivendo una rinascita, con GenAI che alimenta strumenti innovativi per la creazione di contenuti, la narrazione e l’espressione artistica.
- Architetti, progettisti e ingegneri: Architetti, progettisti e ingegneri stanno sfruttando le capacità di GenAI per la progettazione generativa e la prototipazione rapida.
- Inoltre, GenAI sta catalizzando progressi in campi diversi come l’istruzione, la ricerca scientifica, il servizio clienti e oltre, aumentando l’intelligenza umana e consentendo nuove frontiere di produttività e innovazione.
- Vari settori stanno utilizzando GenAI per applicazioni e progressi in molti modi. Ecco diversi esempi:
Ti potrebbe anche interessare
Data Science: Infrastrutture Scalabili con Docker e Jupyter
Docker per la Data Science: Creazione di Infrastrutture Scalabili con...
IA Generativa Responsabile: Guida per Leader e Product Manager
Uso Responsabile dell'IA Generativa: Guida per Product Manager e Leader...
IA per PMI: Guida Efficace all’Implementazione
INTELLIGENZA ARTIFICIALE E DIGITALIZZAZIONE NELLE PMI: UN QUADRO PER L'IMPLEMENTAZIONE...