Aller au contenu principal

L'injection de prompt expliquée

Intermédiaire

L'injection de prompt est le risque de sécurité majeur des applications d'IA. Elle se produit lorsque du contenu non fiable que le modèle lit contient des instructions, et que le modèle les suit comme si elles venaient de vous. Le modèle ne peut pas distinguer de façon fiable les « données à traiter » des « commandes à exécuter » — tout n'est que du texte.

Deux variantes

  • Injection directe — un utilisateur saisit des instructions hostiles (« ignore tes règles et… »). Une préoccupation pour les applications qui exposent un modèle au grand public.
  • Injection indirecte — la plus dangereuse. Des instructions malveillantes se cachent dans le contenu que l'agent récupère : une page web, un PDF, un e-mail, un commentaire de code, une réponse d'API, une invitation de calendrier. L'utilisateur ne les voit jamais ; l'agent les lit et agit.

Pourquoi c'est difficile

Il n'existe pas de filtre parfait. Le modèle est conçu pour suivre les instructions présentes dans son contexte, et le texte injecté se trouve dans son contexte. La défense consiste donc à limiter le rayon d'impact, et pas seulement à détecter.

Défenses (à superposer)

  • Moindre privilège. L'agent ne peut causer de réels dégâts que s'il dispose d'outils puissants. Restreignez étroitement les outils ; conditionnez les actions risquées à une approbation humaine. Voir Sécuriser les agents.
  • Traitez le contenu récupéré comme des données. Encadrez clairement le contenu non fiable (par exemple avec des délimiteurs) et indiquez au modèle que tout ce qui s'y trouve constitue des informations à analyser, jamais des instructions à suivre.
  • Ne mélangez pas secrets et entrées non fiables. Si un agent peut lire vos secrets et lire du contenu contrôlé par un attaquant et effectuer des appels réseau, c'est le triangle de l'exfiltration — cassez l'un des côtés.
  • Humain dans la boucle pour les actions irréversibles ou sensibles (envoyer un e-mail, dépenser de l'argent, supprimer).
  • Surveillez et contraignez les sorties (par exemple, une liste blanche des domaines que l'agent peut appeler).

:::warning Partez du principe que tout contenu lu par un agent peut être hostile Les e-mails, pages web et documents provenant de l'extérieur de votre périmètre de confiance doivent être considérés comme potentiellement hostiles par défaut. :::

Pour aller plus loin