Des chercheurs de la société « Forever Security » ont révélé une nouvelle technique d'attaque qui permet à des attaquants de guider des agents de programmation basés sur l'intelligence artificielle pour exécuter des commandes malveillantes et installer des paquets logiciels nuisibles. Cette technique repose sur l'exploitation de la manière dont les agents IA lisent les fichiers d'instructions textuels au format Markdown, tels que « AGENTS.md » ou « CLAUDE.md », déposés discrètement dans le dossier principal des téléchargements (Downloads) sur l'appareil de l'utilisateur.
Mécanisme de l'attaque par téléchargements silencieux
Les fichiers d'instructions textuels tels que « AGENTS.md » constituent un moyen standard de fournir aux agents IA des directives spécifiques aux projets de programmation, telles que les règles de formatage, les outils utilisés et la manière d'exécuter les tests. Cependant, la plupart des navigateurs Internet courants, notamment Chrome, Edge et Firefox, permettent aux sites web de télécharger des fichiers ciblant le dossier de téléchargement par défaut sans demander de consentement explicite à l'utilisateur pour chaque fichier.
Lorsqu'un développeur exécute l'agent d'IA dans le dossier des téléchargements — un comportement courant pour organiser le dossier ou manipuler des fichiers récemment testés — l'agent lit automatiquement le fichier malveillant et exécute les instructions nuisibles qu'il contient, en utilisant les privilèges et les outils à sa disposition dans l'environnement du système local.
Tests pratiques et exploitation d'outils célèbres
Les tests menés par les chercheurs ont prouvé la possibilité de mener à bien l'attaque sur des outils de programmation de premier plan tels que « OpenAI Codex » et « Claude Code ». Dans un cas réel observé chez un client, l'agent de programmation a tenté d'installer un paquet malveillant du dépôt « npm » appelé « function-color », sur la base des instructions d'un fichier malveillant logé dans le dossier.
Dans une autre expérience, les chercheurs ont réussi à rediriger le trafic de données du modèle « Claude Code » vers un serveur externe contrôlé par eux, ce qui a conduit à la divulgation d'un jeton d'autorisation d'accès (OAuth token), au piratage du compte de l'agent et à la redirection des commandes pour exécuter des logiciels sur l'appareil avec un taux de réussite d'environ 50 %, tandis que le taux de réussite de l'exploitation du modèle dans « OpenAI Codex » a atteint près de 90 %.
Pourquoi cette nouvelle est-elle importante pour les développeurs ?
L'importance de cette évolution réside dans le fait que le comportement exploité ne constitue pas une faille logicielle au sein des plateformes d'IA nécessitant une mise à jour ou un correctif de la part d'entreprises comme « OpenAI » ou « Anthropic » ; l'agent exécute ce pour quoi il a été conçu, à savoir lire les instructions présentes dans son dossier de travail. Par conséquent, la responsabilité de la prévention et de l'atténuation des risques incombe entièrement à l'utilisateur et au développeur dans le contrôle de la portée des privilèges de l'agent et de son environnement d'exécution.
Recommandations et méthodes de prévention
Pour protéger les environnements de développement contre l'exploitation, il est recommandé de respecter les directives suivantes :
- Éviter de définir le dossier principal des téléchargements (Downloads) comme environnement de travail ou chemin d'exécution pour les agents d'intelligence artificielle.
- Exécuter l'agent de programmation exclusivement dans le dossier racine (Root) du projet de programmation spécifique afin de restreindre son accès aux fichiers externes.
- Examiner et analyser les fichiers d'instructions tels que « AGENTS.md » et « CLAUDE.md » provenant de sources non fiables avant de permettre à l'agent de les traiter.
- Activer des environnements de cloisonnement (Sandboxing) et des options de confirmation manuelle avant d'exécuter des commandes ou d'installer des paquets logiciels.