Torna agli aggiornamenti
New releaseAug 4, 2026

skill-scanner v2.0.13

Scanner di sicurezza per le abilità degli agenti

Condividi

Skill Scanner

License CPython 3.11–3.14 PyPI version CI Discord Cisco AI Defense AI Security Framework Ask DeepWiki

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-go v0.32.0 per correlare fatti limitati dopo il rilevamento deterministico e prima dell'analisi LLM opzionale
  • Revisione dei risultati - Il Meta-analyzer opzionale correla, prioritizza e può filtrare i risultati; la validazione dell'accuratezza abbinata rimane in sospeso
  • 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. Le modalità di consenso e la meta-analisi possono aiutare a rivedere i risultati, ma nessuna configurazione elimina tutte le classificazioni errate. Adatta la policy di scansione 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.

Evidenze attuali di modernizzazione

Il benchmark finale di sviluppo core + CEL contiene 5.256 pacchetti malevoli e 1.338 pacchetti benigni di MaliciousSkillBench. Rispetto a origin/main, lo scanner attuale ha aumentato l'F1 dal 32,92% al 47,73% e il recall dal 19,88% al 31,43%, riducendo al contempo il tasso di falsi positivi benigni dal 3,59% all'1,05%. La precisione è del 99,16%. Cinque esecuzioni CEL-shadow sono state esatte e deterministiche; CEL ha valutato 154 candidati senza proporre una soppressione né ricorrere a un fallback.

Lo split bloccato source-disjoint è più debole: TP=65, FP=42, TN=503 e FN=774, per una precisione del 60,75%, un recall del 7,75%, un F1 del 13,74% e un FPR del 7,71%. Questo migliora l'F1 rispetto a origin/main (7,40%) ma peggiora l'FPR (3,67%), quindi non supera il gate di promozione. Ogni regola CEL inclusa rimane pertanto in shadow; questa modifica non promuove alcuna soppressione CEL.

I controlli di compatibilità e supplementari hanno rilevato risultati CEL-OFF/CEL-SHADOW identici su 111 skill ufficiali Codex, Claude Code e Cursor (30 pacchetti MEDIUM+ e 8 HIGH/CRITICAL), con cinque esecuzioni stabili. Il set hard-negative NotInject ha avuto 0/339 corrispondenze actionable. HarmfulSkillBench ha avuto 7/200 pacchetti actionable e 6/200 HIGH+ con un campione in quarantena, mentre OpenSkillRisk ha avuto 76/263 pacchetti actionable con due quarantene host. Questi ultimi due sono diagnostici di recall solo positivi e non possono misurare precisione o FPR. I risultati ATR opzionali sono al di fuori dell'ambito di questa release. Vedi Valutazione e Rollout del Rilevamento per metodologia, provenienza, intervalli di confidenza e limitazioni.


Documentazione

Categorie