
skill-scanner v2.0.14
Scanner di sicurezza per le abilità degli agenti
Skill Scanner
Uno scanner di sicurezza best-effort per AI Agent Skills che rileva prompt injection, esfiltrazione di dati e pattern di codice malevolo. Combina rilevamento basato su pattern (YAML + YARA-X), analisi AST e dataflow, un opzionale LLM-as-a-judge, e un livello decisionale CEL limitato su fatti tipizzati dei rilevatori.
Importante: Questo scanner fornisce un rilevamento best-effort, non una copertura completa o esaustiva. Una scansione che non restituisce risultati non garantisce che una skill sia priva di tutte le minacce. Vedi Ambito e Limitazioni di seguito.
Supporta i formati OpenAI Codex Skills e Cursor Agent Skills seguendo la specifica Agent Skills. Con --lenient, scansiona anche formati non standard come Claude Code .claude/commands/*.md e repository di skill in markdown piatto.
Punti salienti
- Rilevamento Multi-Engine - Analisi statica, dataflow comportamentale, analisi semantica LLM e scansione basata su cloud per una copertura a più livelli, best-effort
- Decisioni CEL tipizzate - Lo scanner principale utilizza il runtime ufficiale
cel-gov0.32.0 per correlare fatti limitati dopo il rilevamento deterministico e prima dell'analisi LLM opzionale - Preset misurati - Preset
low-noiseequiete limiti LLM, con recall, tasso di falsi positivi e F1 pubblicati per ciascuno (Impostazioni consigliate) - Pronto per CI/CD - Output SARIF per GitHub Code Scanning, workflow GitHub Actions riutilizzabile, codici di uscita per fallimenti di build
- Hook pre-commit - Integrazione con il framework standard pre-commit per scansionare le skill prima di ogni commit
- Estensibile - Architettura a plugin per analizzatori personalizzati
Unisciti al Cisco AI Discord per discutere, condividere feedback o connetterti con il team.
Ambito e Limitazioni
Skill Scanner è uno strumento di rilevamento. Identifica pattern di rischio noti e probabili, ma non certifica la sicurezza.
Limitazioni principali:
- Nessun risultato ≠ nessun rischio. Una scansione che restituisce "Nessun risultato" indica che non sono stati rilevati pattern di minaccia noti. Non garantisce che una skill sia sicura, benigna o priva di vulnerabilità.
- La copertura è intrinsecamente incompleta. Lo scanner combina rilevamento basato su firme, analisi semantica basata su LLM, analisi del dataflow comportamentale, servizi cloud opzionali e pacchetti di regole configurabili. Sebbene questo approccio migliori la copertura, nessuno strumento automatizzato può rilevare ogni tecnica, specialmente attacchi nuovi o zero-day.
- Possono verificarsi falsi positivi e falsi negativi. I preset, il giudice LLM e le soppressioni con ambito riducono il rumore, ma nessuna configurazione elimina tutte le classificazioni errate. Scegli una configurazione misurata da Impostazioni consigliate e regola la policy di scansione in base alla tua tolleranza al rischio.
- La revisione umana rimane essenziale. La scansione automatizzata è una componente di una strategia di difesa in profondità. Le distribuzioni ad alto rischio o in produzione dovrebbero abbinare i risultati dello scanner alla revisione manuale del codice e/o alla modellazione delle minacce.
Risultati misurati
Su skill trattenute (split di test congelato di MaliciousSkillBench, 839 malevole e 545 innocue):
- Solo regole catturano il 7,7% delle skill malevole a HIGH, con un tasso di falsi positivi del 4,0%.
- Con il giudice LLM (Gemma 4 26B,
balanced), il 66,7% raggiunge la revisione a MEDIUM+ (15,4% FPR), e il 33,7% viene bloccato a HIGH (6,4% FPR).
Ogni cifra, con il suo corpus e metodo, è in Risultati misurati e sullo Space di valutazione.
Documentazione
Il sito della documentazione è cisco-ai-defense.github.io/docs/skill-scanner.
Le pagine di approfondimento si trovano in docs/.