IT
Un piccolo rilevatore RAG usa il contesto per individuare attacchi nascosti
Context-Aware Prompt Injection Detection via Small Language Models in RAG Pipelines: nokast-secureRAG · arXiv:2610.28364
In parole semplici
Un sistema di retrieval-augmented generation (RAG) cerca documenti e li fornisce a un modello linguistico per aiutarlo a rispondere a una domanda. Un documento può contenere istruzioni nascoste che cercano di cambiare il comportamento del modello, mentre una frase simile potrebbe essere una normale indicazione.
Questo articolo presenta un piccolo controllore locale che legge insieme la domanda e il documento. Nei test in cui lo stesso comando compariva in contesti innocui e in contesti d’attacco, il controllore ha gestito correttamente entrambe le situazioni più spesso di un altro che leggeva soltanto il documento. È un’evidenza relativa a questi casi, non a ogni possibile attacco.
La ricerca
Quando un sistema recupera documenti per rispondere a una domanda, quei documenti possono contenere istruzioni che cercano di deviarlo. Eppure frasi formulate come istruzioni compaiono anche in manuali innocui.
La questione aperta è se un piccolo rilevatore locale possa usare la richiesta dell’utente per distinguere i due casi, invece di basarsi soltanto sulla formulazione.
L’articolo presenta un piccolo rilevatore locale che confronta le istruzioni recuperate con la richiesta dell’utente prima che un sistema RAG generi una risposta.
Il modello più piccolo è stato addestrato su esempi verificati da un valutatore indipendente. Su 659 record di test tenuti da parte, ha individuato il 99,4% degli esempi malevoli, contro l’11,6% dello stesso modello senza addestramento, segnalando per errore il 2,6% degli esempi innocui.
Questa misura riguarda il rilevamento, non il comportamento di un modello che genera risposte in una fase successiva. In un test separato, ogni frase è stata riutilizzata in un contesto innocuo e in uno con un’iniezione.
Il rilevatore ha assegnato entrambe le etichette corrette nel 75% delle 120 coppie, contro il 54,2% di un classificatore che leggeva solo il contesto.
La maggior parte dei risultati proviene da test sintetici svolti nello stesso dominio; non sono stati esaminati attacchi adattivi né la successiva generazione delle risposte.
Su PoisonedRAG, un test con passaggi contenenti fatti inventati, il rilevatore addestrato ha segnalato solo lo 0,7% delle coppie malevole: non affronta quindi l’avvelenamento fattuale.
Cosa mostrano le prove
- Il problema del contesto
nokast-secureRAG è un piccolo rilevatore locale basato su un modello linguistico, progettato per individuare le iniezioni indirette di prompt nei sistemi di retrieval-augmented generation (RAG), in cui i documenti recuperati per una richiesta aiutano un modello a formulare una risposta.
Il testo recuperato può contenere istruzioni in conflitto con l’obiettivo dell’utente, ma formulazioni simili possono anche essere innocue. Il compito centrale del rilevatore è giudicare insieme la richiesta e il testo recuperato, invece di segnalare le parole in isolamento.
- Come impara il rilevatore
Il rilevatore legge la richiesta dell’utente e il contesto recuperato come una coppia, poi assegna una delle tre etichette: sicura, sospetta o istruzione malevola. Negli esempi di addestramento, le istruzioni d’attacco sono inserite nel contesto recuperato mentre la richiesta resta innocua.
Un modello insegnante da 35 miliardi di parametri ha generato gli esempi; un valutatore indipendente da 120 miliardi li ha verificati senza vedere le etichette dell’insegnante; il modello più piccolo è stato addestrato sui record concordati.
- Evidenze da due test
Su 659 record di test verificati dal valutatore, il rilevatore addestrato ha individuato il 99,4% dei record malevoli, contro l’11,6% dello stesso modello piccolo senza addestramento; ha segnalato per errore il 2,6% dei record innocui.
In un insieme separato di 120 coppie, la stessa frase compariva in un contesto innocuo e in uno con un’iniezione. Il rilevatore ha etichettato correttamente entrambe le versioni nel 75,0% delle coppie, contro il 54,2% di ProtectAI DeBERTa, che leggeva soltanto il testo recuperato.
- Quando aiuta la richiesta
I controlli sugli input aiutano a circoscrivere il risultato. Eliminare il contesto ha portato il richiamo a zero, mentre usare solo il contesto ha mantenuto il risultato vicino a quello ottenuto con tutti gli input.
Abbinare il contesto a una richiesta non pertinente ha aumentato i falsi allarmi. Questo suggerisce che nel test il testo recuperato contenesse la maggior parte dei segnali d’attacco, mentre la richiesta aiutava in alcuni casi ambigui; non dimostra che ogni previsione si basasse su entrambi gli input.
- Il limite degli attacchi fattuali
PoisonedRAG verifica se un rilevatore segnala passaggi con risposte fattuali inventate, capaci di fuorviare un sistema di domande e risposte basato sul recupero di documenti. Tutte le 300 coppie erano malevole, quindi il richiamo indica la quota segnalata e non i falsi allarmi.
Il rilevatore addestrato ha segnalato lo 0,7%, meno del 14,3% del modello non addestrato. Poiché questi passaggi contengono fatti falsi invece di istruzioni in conflitto, il risultato delimita l’ambito del rilevatore, che si concentra sulle istruzioni.
Dettagli
- Autori del paper originale
- Abhishek Rai
- Inviato ad arXiv
- Licenza
- CC BY 4.0