Un nouveau scanner open-source qui audite les « agent skills » (compétences d'agent) de l'IA est en train d'être transformé en outil après que des chercheurs ont démontré qu'une compétence non vérifiée peut subtilement récolter des clés SSH et des identifiants cloud. Le scanner combine des filtres par mots-clés, l'analyse comportementale, le raisonnement piloté par l'IA, l'exécution en bac à sable et la détection de changements pour stopper la prochaine vague d'attaques de la chaîne d'approvisionnement ciblant les développeurs assistés par l'IA.
Pourquoi les compétences de l'IA sont cruciales aujourd'hui
Les assistants basés sur des modèles de langage étendus (LLM) tels que Claude et GitHub Copilot s'appuient désormais sur des « agent skills » — de petits dossiers autonomes qui indiquent au modèle comment accomplir une tâche spécifique. GitHub a récemment ajouté une commande d'une seule ligne qui permet aux développeurs de récupérer ces compétences directement depuis des dépôts publics, ce qui en fait un gestionnaire de paquets de fait pour les flux de travail pilotés par l'IA.
La commodité est indéniable : une compétence peut transformer une demande vague comme « nettoie ce tableur » en appels d'API précis, en manipulations de fichiers ou en modifications de code. Cette même simplicité permet à du code malveillant de se glisser dans le lot.
La page d'avertissement de GitHub précise que les compétences ne sont pas vérifiées avant leur installation.
Comment une charge utile cachée peut passer inaperçue
Contrairement à un binaire classique, une compétence d'IA ne se charge pas en une seule fois. Le modèle lit d'abord un court résumé, puis ne récupère l'ensemble des instructions que lorsque la tâche semble pertinente. Ce chargement échelonné crée une fenêtre durant laquelle un fichier malveillant peut rester inactif, invisible pour l'utilisateur, jusqu'à ce que le modèle décide de l'invoquer.
Dans une expérience de preuve de concept, le chercheur a créé une fausse compétence appelée csv-formatter qui promettait le nettoyage de tableurs. Le code visible semblait inoffensif, mais une instruction cachée ajoutait une « étape de diagnostic ». Cette étape ne diagnostiquait rien ; elle scannait l'hôte à la recherche de clés privées SSH et de jetons d'accès AWS, puis transmettait les résultats à un serveur externe.
La commande malveillante apparaissait également dans un fichier changelog — un endroit que la plupart des humains n'inspectent jamais, mais que l'IA lit lors de l'évaluation de l'historique des versions. L'IA a exécuté silencieusement une routine de vol d'identifiants alors que le développeur pensait que la compétence se contentait de formater des données.
La réponse open-source
Pour combler cette lacune, le chercheur a intégré la logique de détection dans un outil d'audit open-source. Le scanner ne repose pas sur une seule technique ; il superpose plusieurs couches de défense :
- La correspondance par mots-clés détecte les tentatives évidentes et maladroites qui incluent des chaînes malveillantes connues.
- L'analyse comportementale signale les instructions qui lisent des fichiers d'identifiants puis effectuent des appels réseau.
- Le raisonnement par IA utilise un modèle secondaire pour évaluer si les instructions d'une compétence sont délibérément cachées à l'utilisateur.
- Le sandboxing exécute la compétence dans un environnement isolé, observant les actions en temps réel sans risquer le système hôte.
- La détection de changements surveille les compétences de confiance pour détecter des modifications inattendues, alertant les mainteneurs avant l'installation d'une nouvelle version.
L'auteur inclura une suite de tests reproduisant l'attaque csv-formatter ainsi qu'un benchmark public mesurant les taux de détection sur un ensemble sélectionné de compétences bénignes et malveillantes.
À surveiller ensuite
- Les benchmarks communautaires : À mesure que les chercheurs publieront davantage d'échantillons de compétences malveillantes, le benchmark public devra être régulièrement mis à jour pour rester pertinent.
L'émergence des « agent skills » marque une nouvelle frontière dans les outils de développement, mais elle ouvre également la porte à des attaques de la chaîne d'approvisionnement qui contournent les revues de code traditionnelles. Un scanner open-source combinant contrôles statiques, observation dynamique et raisonnement par IA offre une première ligne de défense pratique. Les développeurs qui traiteront une compétence comme une clé USB quelconque découvriront bientôt que le coût de l'absence de vérification l'emporte largement sur la commodité d'une assistance IA instantanée.
