SkillSpector: come scansionare una skill AI prima di installarla nel tuo agente
Guida pratica a NVIDIA SkillSpector, lo scanner open source che analizza le skill degli agenti AI per trovare vulnerabilità prima dell'installazione.
Perché scansionare una skill prima di installarla
Una ricerca del 2026 (Liu et al., "Agent Skills in the Wild") ha analizzato 42.447 skill AI. Il risultato: il 25% aveva almeno una vulnerabilità reale.
Se stai costruendo un sistema con agenti AI, le skill che installi hanno accesso a tool, file, API e rete. Una skill malformata o compromessa può fare cose che non hai autorizzato: estrarre dati, eseguire comandi, aggirare i guardrail.
SkillSpector è lo strumento open source di NVIDIA che fa questo controllo prima che tu installi la skill.
Cos'è SkillSpector
SkillSpector è un security scanner statico per skill AI. Analizza il codice della skill cercando pattern pericolosi senza eseguirlo. È open source (GitHub: NVIDIA/SkillSpector) e funziona anche offline.
Copre 68 pattern di vulnerabilità in 17 categorie:
- Prompt injection
- Data exfiltration
- Privilege escalation
- Supply chain attack
- Excessive agency
- Output handling non sicuro
- System prompt leakage
- Memory poisoning
- Tool misuse
- Rogue agent behavior
- Anti-refusal bypass
- Trigger abuse
- Dangerous code (analisi AST)
- Taint tracking
- YARA signatures
- MCP least privilege
- MCP tool poisoning
Come si usa
SkillSpector accetta quattro tipi di input:
- Repository Git (URL o locale)
- File ZIP
- Directory
- File singolo
Comando base:
skillspector scan ./mia-skillOutput: report in formato SARIF con severità per ogni vulnerabilità trovata. SARIF è lo standard usato da GitHub Code Scanning: puoi integrarlo in una pipeline CI/CD senza strumenti aggiuntivi.
Scansione con analisi LLM opzionale
La scansione statica è veloce e deterministica: trova pattern noti, dipendenze vulnerabili (lookup su OSV.dev), API pericolose, permission mismatch.
Se vuoi un'analisi più profonda, puoi aggiungere l'analisi LLM semantica:
skillspector scan ./mia-skill --semanticL'analisi LLM confronta l'intent dichiarato della skill con il comportamento reale del codice. Trova problemi che i pattern statici non coprono: logica ambigua, side effect non documentati, istruzioni che si contraddicono tra loro.
Dove inserirlo nel tuo flusso
Il posto naturale è prima di ogni installazione di skill esterna:
- Scarichi o cloni la skill
- Esegui
skillspector scan - Leggi il report SARIF
- Se ci sono HIGH o CRITICAL: non installi, o isoli la skill in sandbox
- Se è tutto LOW/INFO: procedi con l'installazione
Per le skill che aggiorni spesso, puoi integrarlo in CI/CD come step pre-deploy.
Cosa non sostituisce
SkillSpector è analisi statica: non esegue la skill, non vede il comportamento runtime. Una skill che passa il controllo può ancora comportarsi male a runtime se il prompt di sistema che le dai è mal costruito o se il modello non rispetta i guardrail.
Il controllo pre-installazione è il primo strato. Non l'unico.