Attaccare l’AI: prompt injection e jailbreaking
I sistemi di intelligenza artificiale vengono spesso descritti come potenti, intelligenti e persino autonomi. Ma, quando si parla di sicurezza, molti problemi dell’AI non nascono da bug o exploit.
Nascono dalle parole.
Prompt injection e jailbreaking stanno emergendo come due dei rischi più subdoli e pericolosi nei moderni sistemi AI e nei chatbot. Non si basano su malware, vulnerabilità zero-day o credenziali rubate: sfruttano qualcosa di molto più umano, la conversazione.
Che cos’è la prompt injection?
La prompt injection si verifica quando un utente manipola l’input fornito a un sistema AI per sovrascriverne, aggirarne o modificarne il comportamento previsto.
In parole semplici, l’attaccante non rompe il sistema: lo convince.
Alcuni esempi:
- Chiedere all’AI di ignorare le regole precedenti.
- Inserire istruzioni nascoste in un testo apparentemente normale.
- Indurre il modello a rivelare il prompt di sistema o la logica interna.
- Forzare risposte che violano vincoli di sicurezza o policy.
Poiché i modelli linguistici di grandi dimensioni sono progettati per seguire istruzioni, possono avere difficoltà a distinguere una richiesta legittima da indicazioni malevole.
Jailbreaking: quando le protezioni falliscono
Il jailbreaking è una forma più aggressiva di manipolazione dei prompt. L’obiettivo è uscire dai vincoli esplicitamente imposti al modello.
Le tecniche più comuni includono:
- Scenari di gioco di ruolo.
- Richieste presentate come situazioni ipotetiche.
- Prompt in più passaggi che erodono gradualmente le restrizioni.
- Offuscamento o codifica delle istruzioni vietate.
Una volta aggirate le protezioni, l’AI può generare contenuti o compiere azioni che non avrebbe dovuto consentire.
Perché è un vero problema di sicurezza
A prima vista, la prompt injection può sembrare una curiosità o un trucco ingegnoso per far comportare male un chatbot.
Il rischio aumenta drasticamente quando i sistemi AI sono collegati a:
- Database interni.
- API aziendali.
- Flussi di automazione.
- Processi decisionali.
- Dati di clienti o dipendenti.
In questi ambienti, un attacco riuscito può causare fughe di dati, azioni non autorizzate, violazioni delle policy, problemi di conformità e danni reputazionali.
La superficie d’attacco non comprende più soltanto codice e infrastruttura: comprende il linguaggio.
La fiducia è il punto debole dell’AI
I moderni sistemi AI sono ottimizzati per essere utili, cortesi, consapevoli del contesto e collaborativi.
Paradossalmente, questi punti di forza sono anche debolezze.
Un’AI che cerca a tutti i costi di essere utile può:
- Dare priorità alle istruzioni dell’utente rispetto alle regole del sistema.
- Colmare le lacune con supposizioni.
- Eseguire richieste dannose formulate con un linguaggio amichevole.
A differenza del software tradizionale, l’AI non adotta necessariamente un comportamento di chiusura sicura in caso di errore. Spesso sbaglia proprio perché cerca comunque di aiutare.
Perché i modelli di sicurezza tradizionali non bastano
La sicurezza classica si basa su:
- Una separazione chiara tra input dell’utente e logica del sistema.
- Un comportamento deterministico.
- Confini espliciti delle autorizzazioni.
L’AI mette in discussione tutte e tre queste ipotesi.
L’input dell’utente influenza la logica. Il comportamento è probabilistico. I confini affidati alle istruzioni sono espressi attraverso il linguaggio, non il codice.
Questo rende i controlli tradizionali necessari, ma non più sufficienti.
Mitigazione: cosa può aiutare davvero
Non esiste una soluzione unica, ma le difese efficaci includono:
- Separazione rigorosa tra prompt dell’utente e istruzioni di sistema.
- Validazione e filtraggio delle risposte.
- Limitazione dei permessi dell’AI e delle azioni che può eseguire.
- Test continui di red teaming con prompt avversari.
- Supervisione umana per le operazioni sensibili.
- Registrazione trasparente degli eventi e audit dei prompt.
Non dovremmo mai affidare ciecamente ai sistemi AI azioni irreversibili.
Un nuovo modo di pensare alla sicurezza
Prompt injection e jailbreaking ci costringono a ripensare le basi della sicurezza.
La domanda non è più soltanto: il sistema è sicuro?
Ma anche: è possibile convincere il sistema a fare la cosa sbagliata?
Nell’era dell’AI, la conversazione fa parte della superficie d’attacco.
Una riflessione finale
L’AI non viene attaccata soltanto nel modo in cui vengono attaccati i sistemi tradizionali: viene convinta.
Finché non progetteremo sistemi che tengano conto di questa distinzione, le parole potrebbero restare l’exploit più potente di tutti.