La prompt injection est une attaque ou interaction où des instructions issues de l’utilisateur ou d’un contenu externe détournent le modèle du comportement voulu. Elle est directe dans le prompt ou indirecte dans un document, une page, un message ou un résultat d’outil.

Les modèles traitent instructions et données dans le même canal linguistique. Une phrase dans un document peut rivaliser avec la tâche système, sans frontière de sécurité déterministe. L’impact devient grave si le modèle reçoit secrets, outils puissants ou capacité d’agir.

Une consigne système plus forte ne suffit pas. Supposez que le modèle peut être influencé et concevez le système pour qu’une sortie manipulée ne dépasse pas les droits, ne divulgue pas de données inutiles et n’agisse pas sans politique et validation.

L’injection indirecte transforme un contenu ordinaire en instruction

L’injection directe apparaît dans le message utilisateur. L’indirecte est incorporée dans une page, un PDF, un ticket, un calendrier ou un article que l’application lit ensuite. L’utilisateur peut ne jamais la voir.

Un agent amplifie le risque par ses actions. Une page peut demander l’envoi de données ou modifier des arguments d’outil. Provenance et hiérarchie aident, mais la sécurité vient de données et autorité limitées hors du modèle.

Surface d’injection et contrôle système
SurfaceExempleContrôle
Entrée utilisateurRemplacer la tâcheLimite de capacité
DocumentAction cachéeTraitement non fiable
Résultat outilTexte API hostileSchéma et provenance
MémoireInstruction persistantePolitique d’écriture
Sortie modèleCommande ou balisageValidation aval

Concevoir pour un modèle susceptible de suivre la mauvaise instruction

Les défenses par instruction réduisent certains cas mais restent probabilistes. Les contrôles forts sont classiques: moindre privilège, autorisation, minimisation, isolation, interfaces validées, confirmation, suivi et réponse aux incidents.

Adaptez au dommage. Un outil de rédaction sans secret a moins d’impact qu’un agent capable d’envoyer, acheter ou modifier. Renforcez revue et isolation avec l’autorité et gardez un arrêt déterministe avant tout effet irréversible.

  • Ne jamais utiliser le prompt comme autorisation.
  • Garder les secrets hors du contexte.
  • Traiter tout texte retrouvé comme non fiable.
  • Valider dans le composant qui exécute.
  • Tester les effets plutôt que le refus.

Résultats concrets pour prompt injection

  • Le contenu non fiable est identifié dans chaque canal d’entrée.
  • Secrets et contexte sensible inutile restent hors des prompts.
  • L’autorisation des outils est imposée hors du modèle.
  • Les actions importantes exigent contrôle déterministe et confirmation.
  • Les tests mesurent réponse et effets en aval.

Comment exécuter le travail

  1. 01

    Cartographier instructions et données

    Inventoriez consignes système, messages, fichiers, web, courriels, mémoire et outils. Marquez confiance, propriétaire et permission. Un contenu client, tiers ou généré reste non fiable même dans un document métier.

  2. 02

    Réduire l’autorité accessible

    Ne placez pas de secret réutilisable dans le prompt. Donnez des opérations étroites et droits minimaux, autorisez lors de l’exécution et limitez à l’utilisateur et à la ressource. Séparez lire, rédiger et agir.

  3. 03

    Limiter et valider les effets

    Utilisez schémas d’outils, listes permises, validation, encodage et contrôles transactionnels. Montrez les détails avant confirmation. Validez URL, code, requête et balisage dans le système qui les reçoit.

  4. 04

    Tester les chemins réalistes

    Placez des instructions adverses dans prompts, documents, métadonnées, pages et résultats. Testez exfiltration, redirection, abus d’outil et persistance. Mesurez si l’effet fut empêché, pas si le modèle a écrit un refus.

Les questions qui changent la décision

  • Quelles entrées un acteur non fiable influence-t-il?
  • Quelles données et quels outils sont inutiles pour la tâche?
  • Où l’autorisation est-elle imposée à l’appel?
  • Quelle sortie devient exécutable, rendue ou transmise?
  • Quelle confirmation humaine a du sens avant l’effet?

Où les équipes perdent le contrôle

01

Un document retrouvé redirige l’agent vers le but de l’attaquant.

02

Le secret du prompt crée une fausse confiance car le contexte peut fuir.

03

Un outil trop puissant transforme le texte en action non autorisée.

04

La sortie injecte du code dans un interpréteur aval.

05

La mémoire conserve une instruction hostile pour plus tard.

Mesurer le travail terminé

La mesure porte sur le processus terminé, y compris la revue et les exceptions. Le volume produit ne prouve pas à lui seul que le processus est meilleur.

  • scénarios bloqués avant effet matériel
  • appels non autorisés refusés par politique
  • champs sensibles exposés au modèle par tâche
  • actions importantes avec confirmation valide
  • sorties dangereuses rejetées en aval
  • couverture de régression par canal

Questions fréquentes

Qu’est-ce que la prompt injection?

Une entrée utilisateur ou un contenu externe fournit des instructions qui détournent le modèle du comportement prévu par l’application.

Qu’est-ce que l’injection indirecte?

Une instruction cachée dans un document, une page, un courriel ou un résultat que l’application donnera plus tard au modèle.

Le prompt système empêche-t-il l’attaque?

Non de façon déterministe. Il faut moindre privilège, autorisation externe, minimisation, outils validés et approbation des actions importantes.

Prompt injection et jailbreak sont-ils identiques?

Ils se recoupent. Le jailbreak vise souvent les restrictions du modèle; l’injection vise les instructions de l’application et peut exploiter contenu et outils.

Sources primaires

Tony Kim

Tony Kim

Fondateur et CEO

Tony écrit sur l’IA appliquée, l’ingénierie produit fiable et les systèmes qui transforment les réponses complexes en exécution maîtrisée.

Ingénierie de produits IA pour transformer un cahier des charges en produit fiable en production.

Directions produit, fondateurs et équipes d’ingénierie. Le point de départ est le processus existant, ses contraintes et les preuves déjà disponibles.

Découvrir Zeke