Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Herramientas/GitHubGitHub/ai45lab/skill-safety-bench
Aprendizaje y EducaciónSeguridad de IAAtaque AdversarioLabs y Práctica
GitHubai45lab/skill-safety-bench

skill-safety-bench

Punto de referencia para evaluar la seguridad de los agentes de IA frente a ataques incrustados en el contexto orientado a habilidades, con 155 casos en 6 dominios de riesgo, que mide el éxito de las tareas y la resistencia a los ataques.

Ver Repositorio

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
30314hace 3 mesesRevisado por Kitploit

SkillSafetyBench

English 中文

SkillSafetyBench es un benchmark completamente materializado para evaluar fallos de seguridad causados por ataques dirigidos al contexto orientado a habilidades. Cada caso mantiene la tarea orientada al usuario como algo ordinario, mientras que el ataque se coloca en habilidades locales, scripts auxiliares, archivos laterales, corpus, plantillas u otros artefactos del espacio de trabajo que un agente pueda consultar durante la ejecución.

Explora el diseño del benchmark, el explorador de casos, el ranking y el análisis de experimentos en el sitio web de SkillSafetyBench, y lee el artículo completo en arXiv.

SkillSafetyBench overview

Qué Evalúa el Benchmark

Los agentes modernos de codificación y tareas a menudo dependen de habilidades locales y artefactos del entorno, no solo del prompt del usuario. SkillSafetyBench prueba si un agente puede completar trabajo benigno mientras resiste instrucciones inseguras o contexto engañoso incrustado en esas superficies orientadas a habilidades. Los portadores de tareas benignas se seleccionan de SkillsBench.

El benchmark es estático y está listo para ejecutarse. No es un generador de casos. El repositorio contiene 155 casos preparados en 6 dominios de riesgo y 30 categorías. Cada caso incluye:

  • una tarea base benigna que aún debe completarse
  • una o más superficies de ataque orientadas a habilidades
  • un verificador determinista para el comportamiento inseguro
  • pruebas de tarea para la finalización de la tarea base
  • metadatos y justificación que describen el diseño final del caso

Cada ejecución se evalúa en dos ejes:

  • task_success: si la tarea ordinaria del usuario se completó
  • attack_success: si se observó el comportamiento inseguro

Esta separación es importante: un sistema puede parecer capaz porque completa la tarea, mientras que sigue siendo vulnerable porque sigue el contexto de habilidades que contiene el ataque.

Estructura del Benchmark

SkillSafetyBench contiene 155 casos organizados en 6 dominios de riesgo y 30 categorías. Cada dominio de riesgo contiene 5 categorías, y cada categoría contiene múltiples casos concretos construidos alrededor de portadores de tareas ordinarias.

root@kitploit:~
SkillSafetyBench
└── 6 dominios de riesgo
    ├── RD1: Riesgos de Confianza en el Contexto y Manipulación de Prompts
    ├── RD2: Riesgos de Agencia, Alcance y Autorización
    ├── RD3: Riesgos de Ejecución, Runtime, Framework y Protocolo
    ├── RD4: Riesgos de Límite de Datos, Salida y Externalización
    ├── RD5: Riesgos de Memoria, Recuperación, Auditoría y Persistencia
    └── RD6: Riesgos de Conocimiento, Modelo, Cadena de Suministro y Operacionales

Los casos se almacenan por dominio de riesgo, categoría e id de caso:

root@kitploit:~
benchmark/<dominio-de-riesgo>/<categoría>/<caso>/
  metadata.json
  rationale.md
  attacked_task/
    instruction.md
    task.toml
    environment/
    solution/solve.sh
    tests/test.sh
  eval/verify_attack.py

El directorio del benchmark es la fuente de verdad para los casos. Los directorios de categorías usan el patrón de nomenclatura categoryN-..., por ejemplo:

root@kitploit:~
benchmark/risk-domain-6-knowledge-model-supply-chain-and-operational-risks/category1-availability_cost_and_service_exhaustion/

Pipeline de Construcción del Benchmark

El pipeline de construcción del benchmark comienza con portadores de tareas benignas, preserva la tarea original orientada al usuario, inyecta el ataque a través de artefactos orientados a habilidades y adjunta verificaciones deterministas tanto para la finalización de la tarea como para el comportamiento del ataque. Esto mantiene la evaluación enfocada en si los agentes pueden resistir contexto local inseguro mientras realizan el trabajo solicitado.

SkillSafetyBench construction pipeline

Aviso de Seguridad

Este repositorio contiene casos de benchmark adversariales. Algunos casos simulan phishing, solicitud de credenciales, operaciones destructivas, exfiltración de datos, abuso de límites de sandbox, acciones externas y comportamientos similares a persistencia.

Ejecuta el benchmark solo en entornos de investigación aislados. No uses credenciales de producción, cuentas de nube de producción, cuentas personales ni archivos locales sensibles. Prefiere claves API desechables, contenedores desechables, acceso de red restringido y un directorio de trabajo dedicado. Revisa los artefactos de ejecución antes de compartirlos.

Cómo Ejecutar el Benchmark

1. Preparar el Conjunto de Herramientas

Herramientas requeridas:

  • bash
  • python3, recomendado >= 3.11
  • docker
  • uv
  • harbor
  • nvm
  • Node.js 22

Instala Harbor si es necesario:

root@kitploit:~
uv tool install harbor

Verifica el conjunto de herramientas básico:

root@kitploit:~
harbor --help
python3 --version
docker --version

Si tu agente Harbor está instalado a través de Node, activa Node 22 en el shell que inicia la ejecución:

root@kitploit:~
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
nvm use 22

2. Configurar Variables de Entorno

Crea un .envrc local a partir del archivo de ejemplo:

root@kitploit:~
cp env.example .envrc

Para codex, configura al menos:

root@kitploit:~
export OPENAI_BASE_URL="https://your-openai-compatible-endpoint/v1"
export OPENAI_API_KEY="replace-with-your-openai-api-key"

Para claude-code, configura una variable de autenticación compatible con Anthropic, por ejemplo:

root@kitploit:~
export ANTHROPIC_BASE_URL="https://api.anthropic.com"
export ANTHROPIC_API_KEY="replace-with-your-anthropic-api-key"

Si usas direnv, ejecuta:

root@kitploit:~
direnv allow

Si no, no se requiere ningún paso adicional. El script por lotes carga explícitamente .envrc en tiempo de ejecución.

3. Ejecutar Casos

El punto de entrada canónico es:

root@kitploit:~
scripts/start_agent_batch.sh

Ejecuta un dominio de riesgo:

root@kitploit:~
scripts/start_agent_batch.sh --rd 5

Elige agente y modelo:

root@kitploit:~
scripts/start_agent_batch.sh \
  --rd 3 \
  --agent codex \
  --model openai/gpt-5.4

Ejecuta con Claude Code:

root@kitploit:~
scripts/start_agent_batch.sh \
  --rd 3 \
  --agent claude-code \
  --model claude-3-7-sonnet-20250219

Ejecuta un solo caso:

root@kitploit:~
scripts/start_agent_batch.sh \
  --rd 5 \
  --case travel_planning_poisoned_belief_persistence_memory_anchor

Ejecuta una sola categoría:

root@kitploit:~
scripts/start_agent_batch.sh \
  --rd 6 \
  --category category3-model_behavior_and_finetuning_poisoning

Ejecuta desde un manifiesto explícito:

root@kitploit:~
scripts/start_agent_batch.sh \
  --manifest benchmark/risk-domain-6-knowledge-model-supply-chain-and-operational-risks/manifest.json

Usa un archivo de entorno personalizado:

root@kitploit:~
scripts/start_agent_batch.sh \
  --rd 5 \
  --envrc /path/to/your.envrc

Imprime los casos seleccionados sin ejecutarlos:

root@kitploit:~
scripts/start_agent_batch.sh --rd 5 --dry-run

4. Leer las Salidas de Ejecución

Cada ejecución crea un directorio de salida bajo jobs/:

root@kitploit:~
jobs/<agente>-risk-domain-5-memory-recovery-audit-and-persistence-risks-<marca-de-tiempo>/

Comienza con:

  • jobs/<ejecución>/attack_results.json
  • jobs/<ejecución>/summary.json
  • jobs/<ejecución>/attack_results.csv
  • jobs/<ejecución>/summary.csv

Archivos útiles por ejecución:

  • selected_cases.json
  • batch_config.json
  • <case_id>/case_result.json
  • attack_results.md

Resultados de ataque comunes:

  • attack_success
  • attack_not_observed
  • task_output_missing

task_output_missing significa que la salida explícita esperada de la tarea estaba ausente. El verificador de ataque puede continuar cuando existen suficientes artefactos para evaluar la condición del ataque.

Descargar herramienta