Exploiter et maintenir
Faille ou mode d'emploi ? GitHub valide la démonstration d'Adversa sur Copilot CLI et refuse d'y voir une vulnérabilité
Fondateur, 56North · 12 octobre 2026 · 5 min de lecture
Un agent de code lit ce qu'on lui demande de lire. Si ce contenu porte des instructions, l'agent peut les suivre. Le 6 octobre 2026, la société de sécurité Adversa AI l'a montré avec GitHub Copilot CLI, la version de Copilot qui travaille dans le terminal du développeur. GitHub a confirmé la démonstration et répondu qu'il ne s'agissait pas d'une vulnérabilité du produit.
L'injection de prompt, en termes simples
Un agent d'IA reçoit des instructions de la personne qui l'utilise. Il lit aussi des contenus : pages web, fichiers, courriels. L'injection de prompt consiste à cacher des instructions dans ces contenus. L'agent ne distingue pas toujours la demande de l'utilisateur d'un texte placé par quelqu'un d'autre, et il exécute les deux.
Le risque grandit avec ce que l'agent a le droit de faire. Un assistant qui ne fait qu'écrire peut produire une réponse fausse. Un agent qui lance des commandes, lit des fichiers et se connecte au réseau peut agir. C'est l'un des risques qui grandissent avec la vie d'un agent IA en production.
Ce qu'Adversa a montré
Selon The Register et CSO Online, qui rapportent les travaux d'Adversa :
- Le point de départ. Un développeur demande à Copilot CLI de consulter une page web. L'outil tourne en mode autopilot, un mode facultatif où l'agent enchaîne les étapes sans attendre l'utilisateur après chacune.
- Le piège. La page contient des instructions chiffrées, la méthode pour les déchiffrer avec Python, et deux clés possibles. La première est un modèle que l'agent remplit avec des secrets pris dans des fichiers locaux, comme un fichier .env (le fichier où les projets rangent souvent leurs mots de passe et clés d'accès). La lecture de ces fichiers est le vol lui-même. La seconde clé fonctionne, et les instructions déchiffrées envoient l'agent vers une adresse qui transporte les secrets jusqu'à l'attaquant.
- Pourquoi le chiffrement compte. Selon Adversa, les mêmes instructions en clair sont refusées, et les filtres qui lisent le texte ne voient pas un contenu chiffré.
- La démonstration. Selon Adversa, citée par CSO Online, l'agent a lu un fichier .env.prod et l'a envoyé en 28 secondes environ, sans demande de confirmation et sans ligne du journal de session indiquant la destination.
- Le modèle. Selon Adversa, le modèle mai-code-1.1-flash de Microsoft a exécuté toute la chaîne dans 50 % des essais. Deux modèles GPT-5.6 d'OpenAI ont refusé. Sur un compte payant, avec la sélection de modèle sur « Auto », le routeur a parfois attribué le modèle vulnérable, à l'insu de l'utilisateur.
Ce que GitHub a répondu
Adversa a signalé le problème par le programme de primes aux failles de GitHub le 17 septembre 2026. L'équipe de tri de GitHub a validé le constat sans le classer comme vulnérabilité. Un porte-parole de GitHub a déclaré à The Register que le scénario « suppose qu'un utilisateur dirige intentionnellement Copilot CLI vers un contenu contrôlé par un attaquant ou non fiable et confirme vouloir déclencher l'action, et n'est donc pas une vulnérabilité du produit » (notre traduction). GitHub ajoute chercher « toujours des occasions d'améliorer [ses] produits ». Selon CSO Online, GitHub a indiqué qu'il pourrait rendre cette fonction plus stricte à l'avenir. Adversa conteste cette lecture.
La position de GitHub est cohérente avec sa documentation. On entre en autopilot volontairement (Maj+Tab dans le terminal). S'il démarre sans toutes les permissions, l'outil propose « Enable all permissions (recommended) ». Avec des permissions limitées, il refuse automatiquement les actions qui demandent une approbation. La documentation conseille aussi de faire tourner l'agent dans un environnement isolé.
Ce qui est établi, et ce qui ne l'est pas
| Point | Statut |
|---|---|
| La démonstration et son mécanisme | Rapportés par The Register, CSO Online et Cybersecurity News, d'après les travaux d'Adversa |
| GitHub a validé le constat sans le classer comme vulnérabilité | Établi : déclaration de GitHub à The Register |
| 28 secondes, fichier .env.prod | Rapportés par Adversa, cités par CSO Online |
| 50 % de réussite avec mai-code-1.1-flash, refus par deux modèles GPT-5.6 | Rapportés par Adversa, d'après ses propres essais |
| Exploitation en conditions réelles | Rapportée par aucune source |
| Correctif | Aucun annoncé |
Le danger, le conseil
| Le danger | Le conseil |
|---|---|
| L'autopilot est activé avec toutes les permissions pour gagner du temps, et l'agent est dirigé vers une page ou un dépôt externe que personne n'a lu. | Réservez l'autopilot au code de confiance. Pour tout contenu externe, gardez l'approbation pas à pas, ou faites tourner l'agent dans un environnement isolé. |
| Mots de passe et clés d'accès sont en clair dans des fichiers .env sur le poste du développeur, à portée de l'agent. | Rangez les secrets dans un coffre et injectez-les à l'exécution. Un fichier que l'agent ne peut pas lire ne peut pas fuiter. |
| La sélection de modèle reste sur « Auto ». Même outil, même demande, comportement différent selon le modèle servi. | Fixez le modèle pour les travaux sensibles et notez quel modèle a répondu : cela fait partie de la trace. |
| L'équipe attend un correctif. GitHub estime qu'il ne s'agit pas d'une vulnérabilité du produit : aucun n'est annoncé. | Traitez-le comme un réglage d'usage : approbation pour toute commande qui lit des secrets ou sort du poste, filtrage des sorties, règle écrite. |
À faire cette semaine
- Savoir qui utilise Copilot CLI, sur quels postes, et si le mode autopilot y sert avec toutes les permissions accordées.
- Recenser les secrets en clair à portée de l'agent : fichiers .env, clés dans les fichiers de configuration, jetons dans l'historique du terminal.
- Écrire la règle. Autopilot seulement sur du code et des sources de confiance, jamais sur une page ou un document externe que personne n'a lu.
- Fixer le modèle pour les travaux sensibles au lieu de laisser le choix sur « Auto », et garder la trace du modèle qui a répondu.
- Surveiller l'enchaînement décrit par Adversa : un contenu externe entre dans l'agent, du code s'exécute, des fichiers locaux sont lus, puis une connexion sortante inattendue part.
Ce qu'une équipe solide fait différemment
Elle exige une approbation humaine pour toute commande qui lit des secrets ou envoie des données hors du poste. Elle sort les secrets des fichiers locaux et les range dans un coffre que l'agent ne lit pas seul. Elle filtre les connexions sortantes des postes de développement. Elle ne compte pas sur l'éditeur pour ce qu'il déclare hors de son périmètre. Comme pour la dépense Copilot, traitée dans notre article sur les crédits Copilot, le réglage qui compte est chez vous.
Nos experts Microsoft peuvent auditer la configuration des agents de code sur vos postes et vos chaînes de déploiement. L'offre Human in the Loop de 56North, activée sur engagement, prévoit des campagnes de test menées par des humains formés, y compris sur la réaction de vos agents à un contenu piégé.
Questions et réponses
Qu'est-ce qu'une injection de prompt ?
Des instructions cachées dans un contenu qu'un agent d'IA lit : page web, fichier, courriel. L'agent peut les exécuter comme si l'utilisateur les avait demandées. Le risque grandit avec ce que l'agent a le droit de faire : lancer des commandes, lire des fichiers, se connecter au réseau.
L'attaque sur Copilot CLI est-elle une vulnérabilité ?
GitHub a validé le constat d'Adversa AI mais ne le classe pas comme vulnérabilité du produit : selon sa déclaration à The Register, le scénario suppose qu'un utilisateur dirige Copilot CLI vers un contenu non fiable et confirme l'action. Adversa conteste. Aucune exploitation en conditions réelles n'a été rapportée.
Comment réduire le risque avec Copilot CLI ?
Réserver l'autopilot au code de confiance, exiger une approbation pour les commandes qui lisent des secrets ou envoient des données, sortir les secrets des fichiers locaux, fixer le modèle pour les travaux sensibles et filtrer les connexions sortantes des postes de développement.
Sources
- The Register: Zombie instructions on carefully constructed web pages could trick GitHub Copilot CLI into sharing secrets (6 October 2026)
- CSO Online: Encrypted instructions trick Copilot CLI into spilling developer secrets (7 October 2026)
- Cybersecurity News: GitHub Copilot CLI demonstration by Adversa AI (6 October 2026)
- GitHub Docs: Allowing GitHub Copilot CLI to work autonomously (autopilot)
- Adversa AI: Cryptographic Context Injection in GitHub Copilot CLI (6 October 2026)