
skill-scanner v2.0.14
Scanner de sécurité pour les compétences d'agent
Skill Scanner
Un scanner de sécurité au mieux de ses capacités pour les Skills d'agents IA qui détecte l'injection de prompt, l'exfiltration de données et les motifs de code malveillant. Il combine une détection par motifs (YAML + YARA-X), une analyse AST et de flux de données, un LLM-as-a-judge optionnel, et une couche de décision CEL bornée sur des faits de détecteurs typés.
Important : Ce scanner fournit une détection au mieux de ses capacités, et non une couverture exhaustive ou complète. Un scan qui ne retourne aucun résultat ne garantit pas qu'un skill est exempt de toutes menaces. Voir Périmètre et limitations ci-dessous.
Prend en charge les formats OpenAI Codex Skills et Cursor Agent Skills suivant la spécification Agent Skills. Avec --lenient, scanne également les formats non standard tels que Claude Code .claude/commands/*.md et les dépôts de skills en markdown à plat.
Points forts
- Détection multi-moteurs - Analyse statique, flux de données comportemental, analyse sémantique par LLM et scan basé sur le cloud pour une couverture en couches, au mieux de ses capacités
- Décisions CEL typées - Le scanner principal utilise le runtime officiel
cel-gov0.32.0 pour corréler des faits bornés après la détection déterministe et avant l'analyse LLM optionnelle - Préréglages mesurés - Préréglages
low-noiseetquietet plafonds LLM, avec rappel, taux de faux positifs et F1 publiés pour chacun (Paramètres recommandés) - Prêt pour la CI/CD - Sortie SARIF pour GitHub Code Scanning, workflow GitHub Actions réutilisable, codes de sortie pour les échecs de build
- Hook pre-commit - Intégration au framework standard pre-commit pour scanner les skills avant chaque commit
- Extensible - Architecture de plugins pour des analyseurs personnalisés
Rejoignez le Discord Cisco AI pour discuter, partager des retours ou échanger avec l'équipe.
Périmètre et limitations
Skill Scanner est un outil de détection. Il identifie des motifs de risque connus et probables, mais il ne certifie pas la sécurité.
Limitations clés :
- Aucun résultat ≠ aucun risque. Un scan qui retourne « Aucun résultat » indique qu'aucun motif de menace connu n'a été détecté. Cela ne garantit pas qu'un skill est sûr, bénin ou exempt de vulnérabilités.
- La couverture est intrinsèquement incomplète. Le scanner combine détection par signature, analyse sémantique par LLM, analyse de flux de données comportemental, services cloud optionnels et packs de règles configurables. Bien que cette approche améliore la couverture, aucun outil automatisé ne peut détecter toutes les techniques, en particulier les attaques nouvelles ou zero-day.
- Des faux positifs et faux négatifs peuvent survenir. Les préréglages, le juge LLM et les suppressions ciblées réduisent le bruit, mais aucune configuration n'élimine toutes les classifications incorrectes. Choisissez une configuration mesurée dans Paramètres recommandés et ajustez la politique de scan à votre tolérance au risque.
- La revue humaine reste essentielle. Le scan automatisé est un composant d'une stratégie de défense en profondeur. Les déploiements à haut risque ou en production devraient associer les résultats du scanner à une revue manuelle du code et/ou à une modélisation des menaces.
Résultats mesurés
Sur des skills mis de côté (split de test figé de MaliciousSkillBench, 839 malveillants et 545 inoffensifs) :
- Les règles seules détectent 7,7 % des skills malveillants au niveau HIGH, avec un taux de faux positifs de 4,0 %.
- Avec le juge LLM (Gemma 4 26B,
balanced), 66,7 % atteignent la revue au niveau MEDIUM+ (15,4 % de FPR), et 33,7 % sont bloqués au niveau HIGH (6,4 % de FPR).
Chaque chiffre, avec son corpus et sa méthode, se trouve dans Résultats mesurés et sur le Space d'évaluation.
Documentation
Le site de documentation est cisco-ai-defense.github.io/docs/skill-scanner.
Les pages approfondies se trouvent dans docs/.