alexi.sh
Tous les articlesSécurité navigateurConfidentialité réseauOutils de confidentialitéModélisation des menacesCodage IAOutils de dev

alexi.shLabo IA

ai-coding

NVIDIA sort un scanner de sécurité pour les skills d'agents IA. Le trou n'est pas rebouché

PrivSec Lab4 min de lecture
Du code source CSS flou sur un écran, strié de bleu et de violet

SkillSpector lit une skill d'agent avant que vous l'installiez : 68 motifs sur 17 catégories, plus une passe LLM optionnelle. Ce qu'il vérifie, comment le lancer, et pourquoi la recherche sur l'évasion de scanners interdit d'en faire votre seul contrôle.

NVIDIA publie SkillSpector, un scanner de sécurité open source qui lit une skill d'agent IA et vous dit si l'installer est une bonne idée. Le problème visé est réel : une skill est un petit paquet qu'un agent charge pour acquérir une capacité, elle peut embarquer des scripts avec un large accès à votre machine, et un magasin de skills est une chaîne d'approvisionnement logicielle. Pour le tableau d'ensemble, voir notre guide sécurité des agents IA.

L'outil est réellement utile. Il n'est pas non plus, par construction, une garantie. Les deux méritent d'être dits clairement.

Ce que SkillSpector vérifie

Le README décrit 68 motifs de vulnérabilité sur 17 catégories : injection de prompt, anti-refus, exfiltration de données, élévation de privilèges, chaîne d'approvisionnement, agentivité excessive, traitement des sorties, fuite de prompt système, empoisonnement de mémoire, détournement d'outils, agent malveillant, abus de déclencheur, AST comportemental, suivi de teinte, signatures YARA, moindre privilège MCP et empoisonnement d'outils MCP. La première passe est statique : rien n'est exécuté. Un parcours d'AST signale les constructions du type exec, eval, appels de sous-processus et imports dynamiques. Un suivi de teinte remonte les variables d'environnement et le contenu de fichiers vers les sorties réseau. Des règles YARA reconnaissent des signatures de malware connues.

Cette liste compte parce qu'elle épouse la façon dont les skills dérapent vraiment. Injection de prompt, fuite de prompt système et empoisonnement de mémoire ne sont pas des vulnérabilités applicatives classiques : elles existent parce que ce qui charge la skill est un modèle de langage. Un scanner de code générique en manquerait la plupart.

Comment le lancer

Installation et usage tiennent chacun en une commande. Le projet est publié sous licence Apache 2.0 :

uv tool install git+https://github.com/NVIDIA/skillspector.git

skillspector scan ./my-skill/
skillspector scan ./SKILL.md
skillspector scan https://github.com/user/my-skill
skillspector scan ./my-skill.zip
skillspector scan ./my-skill/ --format json --output report.json
skillspector scan ./my-skill/ --no-llm

Il accepte un dossier, un simple SKILL.md, une archive ZIP ou une URL Git, ce qui compte : vous pouvez scanner une skill directement depuis son dépôt avant qu'elle touche votre disque. La sortie JSON le rend utilisable dans un pipeline et pas seulement en ligne de commande.

Un terminal affichant la racine d'un système de fichiers Linux en vert et bleu sur fond noir : bin, boot, dev, etc, home, lib, proc, root, sbin, tmp, usr, var

La deuxième passe, optionnelle

Il existe une seconde passe, plus lente, désactivée tant que vous ne la configurez pas. Elle demande un endpoint compatible OpenAI et une clé, réglés via SKILLSPECTOR_PROVIDER (qui vise par défaut l'endpoint de NVIDIA) et éventuellement SKILLSPECTOR_MODEL. Une fois branchée, un modèle de langage lit le code signalé en contexte, écarte les faux positifs et rédige une explication exploitable. Le README situe la précision obtenue autour de 87 %.

Lisez ce chiffre avec attention. 87 % de précision parle des faux positifs, pas de l'exhaustivité. Cela dit que l'essentiel de ce que l'outil signale est réel. Cela ne dit rien de ce qu'il a manqué.

Pourquoi un scanner ne peut pas être toute la réponse

C'est ici que nos propres articles comptent. En juillet nous avons traité SkillCloak, un cadre d'évasion préservant la charge utile : il garde intact le comportement d'une skill malveillante en changeant son apparence pour un scanner. Sur huit scanners et 1 613 skills malveillantes observées en circulation, l'empaquetage auto-extractible a contourné tous les scanners à plus de 90 %, et l'obfuscation structurelle a dépassé 80 % sur la plupart des scanners statiques. Le détail est dans les skills d'agents IA, nouvelle chaîne d'approvisionnement de malware.

SkillSpector est un scanner statique avec une passe sémantique optionnelle. Il est meilleur que la plupart, et ses catégories propres à MCP montrent que l'équipe sait où se trouve le risque actuel. Mais la classe d'attaque démontrée par SkillCloak est exactement celle qui défait l'analyse au moment de l'installation : la charge utile n'est pas encore là quand vous scannez, et elle est reconstruite quand l'agent s'exécute.

Où il a quand même sa place

Un scanner contournable n'est pas un scanner inutile. Il augmente le coût d'une attaque et attrape la majorité négligente, qui représente l'essentiel de ce qui circule vraiment. La bonne place de SkillSpector est dans un pipeline : scanner chaque skill avant qu'elle entre dans votre environnement, faire échouer le build sur les constats de sévérité haute, conserver les rapports JSON.

Ce qu'il ne remplace pas, c'est le versant exécution. Donnez à une skill le minimum d'accès dont elle a besoin, exécutez-la là où elle ne peut atteindre ni vos identifiants ni tout votre système de fichiers, et regardez ce qu'elle fait plutôt que ce à quoi elle ressemble.

Ce qu'il faut en retenir

Qu'un grand acteur publie un scanner open source pour les skills d'agents est un bon signal : le problème de chaîne d'approvisionnement est traité comme réel et non comme théorique. Utilisez-le, mettez-le dans votre CI, lisez son JSON.

Ne le laissez simplement pas devenir la seule chose entre une skill non fiable et votre machine. La recherche publiée sur l'évasion est claire : l'analyse au moment de l'installation est la couche que les attaquants ont déjà appris à franchir. Pour choisir dès le départ des outils sur lesquels on peut raisonner, notre panorama des meilleurs LLM de code 2026 est un point de départ.

Photo: Pixabay (source)

Aussi disponible en

FAQ

Qu'est-ce que SkillSpector ?
Un scanner de sécurité open source publié par NVIDIA pour les skills d'agents IA, sous licence Apache 2.0. Vous le pointez sur une skill et il rend des constats, un score de risque et des recommandations avant installation. Il accepte un dossier, un simple SKILL.md, une archive ZIP ou une URL Git.
Que détecte-t-il réellement ?
Le README annonce 68 motifs de vulnérabilité répartis en 17 catégories, dont l'injection de prompt, l'exfiltration de données, l'élévation de privilèges, la chaîne d'approvisionnement, l'agentivité excessive, la fuite de prompt système, l'empoisonnement de mémoire, le détournement d'outils, le suivi de teinte, les signatures YARA et l'empoisonnement d'outils MCP. La première passe est de l'analyse statique : rien n'est exécuté.
Faut-il un LLM ou une clé d'API ?
Non. La passe LLM est optionnelle et désactivée tant que vous ne la configurez pas via SKILLSPECTOR_PROVIDER, qui pointe par défaut vers l'endpoint de NVIDIA et peut viser d'autres fournisseurs. Sans elle le scanner exécute quand même ses vérifications statiques, et `--no-llm` désactive explicitement la passe.
Un scanner suffit-il à rendre les skills sûres ?
Non, et c'est le point important. La recherche sur SkillCloak a montré qu'un cadre d'évasion préservant la charge utile contournait tous les scanners testés à plus de 90 % avec l'empaquetage auto-extractible. Un scanner augmente le coût d'une attaque ; il ne supprime pas le besoin de moindre privilège, de bac à sable et de vérifications comportementales à l'exécution.