
skill-scanner v2.0.13
Escáner de seguridad para habilidades de agentes
Skill Scanner
Un escáner de seguridad de mejor esfuerzo para Skills de Agentes de IA que detecta inyección de prompts, exfiltración de datos y patrones de código malicioso. Combina detección basada en patrones (YAML + YARA-X), análisis AST y de flujo de datos, un LLM-como-juez opcional, y una capa de decisión CEL acotada sobre hechos tipados de detectores.
Importante: Este escáner proporciona detección de mejor esfuerzo, no una cobertura exhaustiva o completa. Un escaneo que no devuelve hallazgos no garantiza que una skill esté libre de todas las amenazas. Consulte Alcance y Limitaciones a continuación.
Compatible con los formatos OpenAI Codex Skills y Cursor Agent Skills siguiendo la especificación Agent Skills. Con --lenient, también escanea formatos no estándar como Claude Code .claude/commands/*.md y repositorios de skills en markdown plano.
Aspectos destacados
- Detección multi-motor - Análisis estático, flujo de datos conductual, análisis semántico con LLM y escaneo basado en la nube para una cobertura por capas de mejor esfuerzo
- Decisiones CEL tipadas - El escáner principal utiliza el runtime oficial
cel-gov0.32.0 para correlacionar hechos acotados después de la detección determinista y antes del análisis LLM opcional - Revisión de hallazgos - El Meta-analizador opcional correlaciona, prioriza y puede filtrar hallazgos; la validación de precisión emparejada sigue pendiente
- Listo para CI/CD - Salida SARIF para GitHub Code Scanning, flujo de trabajo reutilizable de GitHub Actions, códigos de salida para fallos de compilación
- Hook de pre-commit - Integración con el framework estándar pre-commit para escanear skills antes de cada commit
- Extensible - Arquitectura de plugins para analizadores personalizados
Únase al Cisco AI Discord para debatir, compartir comentarios o conectar con el equipo.
Alcance y Limitaciones
Skill Scanner es una herramienta de detección. Identifica patrones de riesgo conocidos y probables, pero no certifica la seguridad.
Limitaciones clave:
- Sin hallazgos ≠ sin riesgo. Un escaneo que devuelve "Sin hallazgos" indica que no se detectaron patrones de amenaza conocidos. No garantiza que una skill sea segura, benigna o esté libre de vulnerabilidades.
- La cobertura es inherentemente incompleta. El escáner combina detección basada en firmas, análisis semántico basado en LLM, análisis de flujo de datos conductual, servicios en la nube opcionales y paquetes de reglas configurables. Aunque este enfoque mejora la cobertura, ninguna herramienta automatizada puede detectar todas las técnicas, especialmente ataques novedosos o de día cero.
- Pueden ocurrir falsos positivos y falsos negativos. Los modos de consenso y el meta-análisis pueden ayudar a revisar los hallazgos, pero ninguna configuración elimina todas las clasificaciones incorrectas. Ajuste la política de escaneo a su tolerancia al riesgo.
- La revisión humana sigue siendo esencial. El escaneo automatizado es un componente de una estrategia de defensa en profundidad. Los despliegues de alto riesgo o en producción deben combinar los resultados del escáner con revisión manual de código y/o modelado de amenazas.
Evidencia de modernización actual
El benchmark final de desarrollo de core + CEL contiene 5.256 paquetes maliciosos y 1.338 paquetes benignos de MaliciousSkillBench. En comparación con origin/main, el escáner actual elevó el F1 del 32,92% al 47,73% y el recall del 19,88% al 31,43%, mientras reducía la tasa de falsos positivos benignos del 3,59% al 1,05%. La precisión es del 99,16%. Cinco ejecuciones CEL-shadow fueron exactas y deterministas; CEL evaluó 154 candidatos sin proponer una supresión ni recurrir a un fallback.
La división bloqueada disjunta por fuente es más débil: TP=65, FP=42, TN=503 y FN=774, para una precisión del 60,75%, un recall del 7,75%, un F1 del 13,74% y un FPR del 7,71%. Esto mejora el F1 respecto a origin/main (7,40%) pero empeora el FPR (3,67%), por lo que no supera la puerta de promoción. Por lo tanto, cada regla CEL incluida permanece en shadow; este cambio no promueve ninguna supresión CEL.
Las comprobaciones de compatibilidad y suplementarias encontraron hallazgos idénticos CEL-OFF/CEL-SHADOW en 111 skills oficiales de Codex, Claude Code y Cursor (30 paquetes MEDIUM+ y 8 HIGH/CRITICAL), con cinco ejecuciones estables. El conjunto de negativos duros NotInject tuvo 0/339 coincidencias accionables. HarmfulSkillBench tuvo 7/200 accionables y 6/200 paquetes HIGH+ con una muestra en cuarentena, mientras que OpenSkillRisk tuvo 76/263 paquetes accionables con dos cuarentenas de host. Los dos últimos son diagnósticos de recall solo positivos y no pueden medir precisión ni FPR. Los resultados opcionales de ATR quedan fuera del alcance de esta versión. Consulte Evaluación y Despliegue de Detección para la metodología, procedencia, intervalos de confianza y limitaciones.