Sockpuppeting: la nuova vulnerabilità che compromette ChatGPT, Claude e Gemini

Sockpuppeting: la nuova vulnerabilità che compromette ChatGPT, Claude e Gemini

Sockpuppeting: la nuova vulnerabilità che compromette ChatGPT, Claude e Gemini

Introduzione per utenti non tecnici

Imagina di chiedere a un assistente AI qualcosa di pericoloso e ricevere un rifiuto. Ora immagina che qualcuno possa ingannare quell’assistente facendogli credere di aver già accettato di aiutare. È esattamente quello che accade con una nuova tecnica di attacco chiamata sockpuppeting.

Un recente studio ha scoperto che 11 dei modelli AI più potenti al mondo, tra cui ChatGPT, Claude di Anthropic e Gemini di Google, sono vulnerabili a questo attacco. La parte più preoccupante? Gli hacker hanno bisogno solo di una singola riga di codice per riuscirci. Non si tratta di un attacco complicato che richiede competenze informatiche avanzate, ma di un metodo semplice e devastante che sfrutta come gli AI sono stati insegnati a comportarsi.

Se gestisci un’azienda, usi AI nel tuo lavoro o sei semplicemente curioso di capire i rischi della tecnologia moderna, questo articolo ti aiuterà a comprendere il problema e le soluzioni disponibili.

Come funziona il sockpuppeting

Per capire questo attacco, è importante sapere che i modelli AI come ChatGPT sono addestrati per mantenere coerenza nelle loro risposte. Se un AI ha iniziato a rispondere a una domanda, tende a continuare seguendo lo stesso percorso.

L’attacco sockpuppeting sfrutta esattamente questo comportamento. Ecco come funziona in pratica:

  1. Un utente pone una domanda proibita all’AI (ad esempio, come creare malware)
  2. Normalmente, l’AI rifiuterebbe e mostrerebbe un messaggio di errore
  3. L’attaccante, però, inietta artificialmente una risposta falsa prima che l’AI prenda una decisione
  4. Inserisce una frase come “Certo, ecco come fare:” direttamente nel flusso di risposta
  5. L’AI, vedendo che ha “già iniziato” a rispondere, continua a generare il contenuto pericoloso

Questo sfrutta una funzione API chiamata “assistant prefill”, originariamente progettata per aiutare gli sviluppatori a controllare il formato esatto delle risposte AI. Nessuno aveva previsto che potesse essere usata come arma.

I modelli vulnerabili e i tassi di attacco

I ricercatori hanno testato l’attacco su 11 diversi modelli AI. I risultati sono allarmanti:

ModelloProviderVulnerabileTasso di successo
Gemini 2.5 FlashGoogle (Vertex AI)15,7%
Claude 4 SonnetAnthropic (Vertex AI)8,3%
Qwen3-32BSelf-hosted3,3%
GPT-4oMicrosoft (Azure)1,4%
GPT-4o-miniMicrosoft (Azure)0,5%
DeepSeek-R1AWS BedrockNo0%

Come vedi, Gemini 2.5 Flash è il più vulnerabile con un tasso di successo del 15,7%, mentre alcuni modelli hanno implementato difese migliori.

Cosa possono fare gli attaccanti

Quando l’attacco ha successo, gli hacker possono ottenere risultati devastanti:

  • Generazione di codice malevolo: I modelli compromessi generano codice di exploit come Cross-Site Scripting (XSS) che normalmente rifiuterebbero di creare
  • Furto di istruzioni di sistema: Gli attaccanti possono forzare l’AI a rivelare le sue istruzioni interne segrete e i metadati di configurazione
  • Esposizione di dati sensibili: In alcuni casi, l’AI ha addirittura “allucinato” strutture di configurazione interne dettagliate

Per aumentare il tasso di successo, i ricercatori hanno anche utilizzato manipolazione di personalità multi-turno, facendo credere all’AI di essere un assistente di ricerca senza restrizioni prima di lanciare l’attacco.

Come proteggersi dal sockpuppeting

Per i provider di servizi AI

La soluzione più efficace è bloccare gli input manipolati prima che raggiungano il modello AI. I team di sicurezza possono implementare una validazione rigorosa dell’ordine dei messaggi a livello API, assicurando che il messaggio finale in qualsiasi richiesta provenga sempre dall’utente.

I principali provider come OpenAI, AWS Bedrock e Anthropic hanno già implementato questa difesa, semplicemente restituendo un errore per qualsiasi richiesta con prefill precompilato.

Per chi usa AI self-hosted

Se la tua organizzazione esegue i propri server di inferenza, sei ancora esposto. Piattaforme come Ollama o vLLM non applicano la validazione dei messaggi per impostazione predefinita. Devi verificare indipendentemente che il tuo livello API blocchi attivamente i messaggi di assistente precompilati.

La resistenza dei modelli avanzati

Interessante notare che anche se GPT-4o e GPT-4o-mini accettano il prefill, il loro addestramento di sicurezza avanzato li rende altamente resistenti. GPT-4o-mini ha registrato solo uno 0,5% di tasso di successo, dimostrando che un allineamento interno robusto può parzialmente superare l’impulso dell’AI di mantenere coerenza.

Tuttavia, gli attaccanti hanno scoperto che inquadrare le richieste malevole come compiti di formattazione JSON benigni potrebbe ancora occasionalmente bypassare queste difese forti.

Technical Deep Dive

Meccanismo di vulnerabilità e self-consistency

La vulnerabilità sockpuppeting affonda le radici nel modo in cui i Large Language Models (LLM) sono addestrati e funzionano. Durante l’addestramento, gli LLM sviluppano una forte tendenza alla self-consistency, un comportamento emergente che li spinge a mantenere coerenza logica e stilistica nelle sequenze generate.

Quando un LLM inizia a generare una risposta, il modello interno assegna una probabilità più alta ai token successivi che mantengono la coerenza con i token precedenti. Questa è una caratteristica desiderabile per generare testo coerente e logico, ma diventa una vulnerabilità quando combinata con la funzione API “assistant prefill”.

L’API prefill consente agli sviluppatori di fornire un prefisso predeterminato che l’AI completerà. Originariamente, questo era progettato per controllare il formato delle risposte, non per bypassare le protezioni di sicurezza. Tuttavia, quando un attaccante inietta un prefill che simula un’accettazione della richiesta proibita, il modello vede questo prefill come parte della sua precedente “decisione” e continua coerentemente.

Combinazione con manipolazione di persona

I ricercatori hanno aumentato il tasso di successo combinando il prefill injection con manipolazione di persona multi-turno. Questo sfrutta il fenomeno di “context window poisoning”, dove le interazioni precedenti nella conversazione influenzano il comportamento del modello.

Inizialmente, l’attaccante stabilisce una conversazione dove l’AI accetta di agire come “assistente di ricerca senza restrizioni”. Questa interazione precedente crea un contesto nel quale il modello è più incline a seguire richieste successive simili. Quando il prefill injection viene poi applicato in questo contesto avvelenato, il tasso di successo aumenta significativamente.

Estrazione di system prompt e metadati

Un aspetto particolarmente preoccupante è la capacità dell’attacco di estrarre system prompt. I ricercatori hanno combinato il prefill injection con sequenze di token avversariali, costringendo l’AI a generare i suoi metadati interni e le istruzioni di sistema verbatim.

In alcuni casi, l’AI ha persino “allucinato” strutture di configurazione interna dettagliate, suggerendo che il modello aveva informazioni su questi aspetti nei suoi dati di addestramento. Questo rappresenta un rischio di sicurezza enorme, poiché espone la logica interna e potenzialmente i meccanismi di sicurezza del modello.

Implementazione tecnica della difesa

La difesa a livello API richiede una validazione rigorosa della sequenza di messaggi prima che i dati raggiungano il modello. Specificamente:

  1. Verificare che il campo “role” dell’ultimo messaggio sia sempre “user”
  2. Rifiutare qualsiasi richiesta che contenga un prefill “assistant” dopo il messaggio dell’utente
  3. Implementare logging e monitoraggio per rilevare tentativi di attacco
  4. Utilizzare rate limiting specifico per richieste sospette

Per le distribuzioni self-hosted, questo significa configurare manualmente il layer di validazione API, poiché framework come vLLM non lo forniscono di default. Una possibile implementazione potrebbe utilizzare middleware personalizzato che ispeziona tutte le richieste API prima di trasmetterle al modello.

Implicazioni per la ricerca in sicurezza AI

Questo attacco evidenzia un gap fondamentale tra il design delle API AI e la sicurezza effettiva. Le funzioni di “developer convenience” come il prefill possono creare superfici di attacco inaspettate. Questo suggerisce che la ricerca futura dovrebbe focalizzarsi su:

  1. Principi di design sicuro per default nelle API AI
  2. Formal verification dei comportamenti di sicurezza dei modelli
  3. Boundary testing sistematico di tutte le funzioni API
  4. Separazione dei privilegi tra controllo del formato e generazione di contenuti

La vulnerabilità sockpuppeting dimostra che anche i modelli più avanzati rimangono vulnerabili a tecniche di attacco relativamente semplici che sfruttano proprietà emergenti del deep learning.

Fonte: https://gbhackers.com/11-ai-models-vulnerable-to-one-line-jailbreak/

Torna in alto