Chiosa
FR
AI Security & Safety

Un petit détecteur RAG s’appuie sur le contexte pour repérer les attaques cachées

Context-Aware Prompt Injection Detection via Small Language Models in RAG Pipelines: nokast-secureRAG · arXiv:2610.28364

4 min
Mis à jour

En termes simples

Un système de génération augmentée par récupération (RAG) cherche des documents et les transmet à un modèle de langage pour l’aider à répondre à une question. Un document peut contenir des instructions cachées visant à modifier le comportement du modèle, alors qu’une formulation semblable peut aussi être un conseil ordinaire.

Cet article présente un petit vérificateur local qui lit la question et le document ensemble. Dans des tests où la même consigne apparaissait dans un contexte inoffensif et dans un contexte d’attaque, il a mieux classé les deux situations qu’un vérificateur qui ne voyait que le document. Cela constitue un indice pour ces cas précis, pas pour toutes les attaques possibles.

La recherche

Lorsqu’un système récupère des documents pour répondre à une question, ceux-ci peuvent contenir des instructions visant à le détourner. Pourtant, des phrases impératives figurent aussi dans des manuels inoffensifs.

La question reste de savoir si un petit détecteur local peut s’appuyer sur la demande de l’utilisateur pour distinguer les deux, au lieu de signaler les formulations seules.

L’article présente un petit détecteur local qui compare les instructions récupérées à la question de l’utilisateur avant qu’un système RAG ne génère une réponse.

Le modèle étudiant a été entraîné sur des exemples vérifiés par un évaluateur indépendant. Sur 659 exemples de test réservés à l’évaluation, il a détecté 99,4 % des exemples malveillants, contre 11,6 % pour le même petit modèle sans entraînement, tout en signalant à tort 2,6 % des exemples sans danger.

Cette mesure porte sur la détection, pas sur le comportement d’un modèle qui générerait ensuite une réponse. Dans un autre test, chaque phrase était reprise dans un contexte inoffensif et dans un contexte d’attaque.

Le détecteur a correctement classé les deux versions dans 75 % des 120 paires, contre 54,2 % pour un classificateur qui ne lisait que le contexte.

La plupart des résultats proviennent de tests synthétiques menés dans un même domaine ; les attaques adaptatives et la génération ultérieure des réponses n’ont pas été évaluées.

Sur PoisonedRAG, un test de passages contenant des faits inventés, le détecteur entraîné n’a signalé que 0,7 % des paires malveillantes : il ne traite donc pas l’empoisonnement factuel.

Ce que montrent les preuves

  • Le problème du contexte

    nokast-secureRAG est un petit détecteur local fondé sur un modèle de langage, conçu pour repérer les injections indirectes de prompt dans la génération augmentée par récupération (RAG), où des documents trouvés pour répondre à une question aident un modèle à formuler sa réponse.

    Le texte récupéré peut contenir des instructions contraires à l’objectif de l’utilisateur, mais des formulations impératives peuvent aussi être anodines. La tâche centrale du détecteur consiste à juger ensemble la question et le texte récupéré, plutôt qu’à signaler une formulation isolément.

  • Comment le détecteur apprend

    Le détecteur lit la question de l’utilisateur et le contexte récupéré comme une paire, puis renvoie l’une de trois étiquettes : sûr, suspect ou contenant une instruction malveillante. Dans les exemples d’entraînement, les instructions d’attaque se trouvent dans le contexte récupéré, tandis que la question reste sans danger.

    Un modèle enseignant de 35 milliards de paramètres a produit les exemples ; un évaluateur indépendant de 120 milliards de paramètres les a vérifiés sans voir les étiquettes de l’enseignant ; le modèle étudiant a été entraîné sur les exemples sur lesquels ils s’accordaient.

  • Les résultats de deux tests

    Sur 659 exemples de test vérifiés par l’évaluateur, le détecteur entraîné a repéré 99,4 % des exemples malveillants, contre 11,6 % pour le même petit modèle sans entraînement ; il a signalé à tort 2,6 % des exemples sans danger.

    Dans un autre ensemble de 120 paires, chaque phrase figurait à la fois dans un contexte inoffensif et dans un contexte d’attaque. Le détecteur a correctement classé les deux versions dans 75,0 % des paires, contre 54,2 % pour ProtectAI DeBERTa, qui ne lisait que le texte récupéré.

  • Quand la question aide

    Les tests qui retirent ou remplacent une entrée permettent de préciser ce que montre ce résultat. Sans le contexte, le rappel est tombé à zéro, tandis que le contexte seul a conservé un rappel proche de celui obtenu avec les deux entrées.

    Associer le contexte à une question sans rapport a augmenté les fausses alertes. Cela suggère que, dans le jeu de test, le texte récupéré portait l’essentiel du signal d’attaque, tandis que la question a aidé dans certains cas ambigus où le contexte seul ne suffisait pas ; cela ne montre pas que chaque prédiction s’appuyait sur les deux entrées.

  • La limite face aux attaques factuelles

    PoisonedRAG vérifie si un détecteur signale des passages contenant des réponses factuelles inventées qui pourraient induire en erreur un système de questions-réponses fondé sur la recherche de documents. Les 300 paires sont toutes malveillantes : le rappel mesure donc la part signalée, et non les fausses alertes.

    Le détecteur entraîné en a signalé 0,7 %, contre 14,3 % pour le modèle non entraîné. Comme ces passages contiennent des faits faux plutôt que des instructions contradictoires, ce résultat marque une limite de la portée du détecteur, axée sur les conflits d’instructions.

Détails

Article suivantNOMOS rend les politiques écrites plus sûres pour les agents qui utilisent des outils