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
AgentWatcher | Kitploit
Herramientas/GitHubGitHub/wang-yanting/agentwatcher
Aprendizaje AutomáticoPapers e InvestigaciónAprendizaje y EducaciónSeguridad de IAAtaque Adversario
GitHubwang-yanting/agentwatcher

AgentWatcher

Ver Repositorio
92hace 4 mesesAún no revisado

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

AgentWatcher

AgentWatcher es una defensa basada en detección contra la inyección indirecta de prompts en agentes LLM. Primero ejecuta atribución causal de contexto sobre el contexto no confiable para encontrar los contextos más influyentes, y luego aplica un LLM monitor que clasifica esos contextos bajo reglas explícitas y personalizables. En comparación con los detectores de caja negra, este pipeline es más fácil de interpretar: la atribución muestra dónde se centró el modelo, y el juicio del LLM monitor se basa en un razonamiento fundamentado en reglas. A continuación se muestra un ejemplo de salida del LLM monitor:

Salida de ejemplo de AgentWatcher

Esta detección basada en reglas puede aprovechar la capacidad de razonamiento del LLM monitor para lograr un mejor equilibrio entre utilidad y robustez. AgentWatcher logra un rendimiento de última generación en benchmarks de agentes LLM como AgentDyn:

Salida de ejemplo de AgentWatcher

Este repositorio está pensado para reproducir los experimentos principales del artículo.

🔨 Requisitos

  • Python 3.10+ (probado con entornos conda).
  • GPU(s) CUDA para el LLM backend (vLLM se puede usar opcionalmente).
  • Acceso a Hugging Face para datasets y modelos.
root@kitploit:~
pip install -r requirements.txt
huggingface-cli login   # if needed for gated models

🤗 Monitor LLM en Hugging Face

El monitor entrenado es un adaptador LoRA (PEFT). Por defecto, main.py carga automáticamente el checkpoint de Hub SecureLLMSys/AgentWatcher-Qwen3-4B-Instruct-2507 en SecureLLMSys (anúlalo con --monitor_llm).

🔬 Ejecución de experimentos

Todos los lanzadores están en scripts/. Asumen que ejecutas desde la raíz del repositorio AgentWatcher (o que haces cd allí primero). Primero configura la clave de OpenAI con export OPENAI_API_KEY=<YOUR_KEY>. Edita los lanzadores Python (all_datasets, all_defenses, gpus, name, modelos, etc.) para ajustarlos a tu barrido antes de ejecutarlos.

Benchmark de contexto largo (main.py)

Trabajos por lotes (GPUs locales o Slurm):

root@kitploit:~
python scripts/run_long_context.py

Esto ejecuta main.py con vLLM (--use_vllm) y escribe los registros en logs/main_logs/<name>/.... Si no hay GPU local, envía trabajos a Slurm mediante scripts/main.sh.

Ejecución única sin el lanzador:

root@kitploit:~
python main.py \
  --dataset lcc_long \
  --attack combined \
  --defense agentwatcher \
  --backend_llm Qwen/Qwen3-4B-Instruct-2507 \
  --monitor_llm SecureLLMSys/AgentWatcher-Qwen3-4B-Instruct-2507 \
  --use_vllm \
  --name my_run

Anulaciones opcionales de atribución en main.py: --w_s, --w_l, --w_r, --K, --attribution_model.

AgentDojo

Para ejecutar AgentDojo/AgentDyn, primero configura el entorno siguiendo PIArena (https://github.com/sleeepeer/PIArena):

root@kitploit:~
cd agents/agentdojo && pip install -e . && cd ../..

Luego ejecuta:

root@kitploit:~
python scripts/run_agentdojo.py

Esto llama a main_agentdojo.py y escribe los registros en logs/agentdojo_logs/.... Si no hay GPU local, usa scripts/main_agentdojo.sh para Slurm. Para una ejecución manual individual, puedes llamar a python main_agentdojo.py --model ... --defense agentwatcher --monitor_llm ... desde la raíz del repositorio; define PIARENA_DEFENSE / PIARENA_MONITOR_LLM si tu wrapper lo espera. La defensa agentwatcher usa PIMonitorLLMDefenseAdapter.

AgentDyn

root@kitploit:~
./scripts/run_agentdyn.sh

Opcional: ./scripts/run_agentdyn.sh --model gpt-4o-2024-08-06 para ejecutar agentwatcher con gpt-4o como LLM principal. El script activa el entorno conda agentdojo y se ejecuta desde agents/agentdyn/src. Recomendamos usar tmux para evitar que la ejecución se interrumpa.

InjecAgent

root@kitploit:~
python scripts/run_injecagent.py

Esto lanza main_injecagent.py y registra en logs/main_logs/.... Punto de entrada para Slurm: scripts/main_injecagent.sh.

Invocación directa sin el lanzador:

root@kitploit:~
python main_injecagent.py \
  --model meta-llama/Llama-3.1-8B-Instruct \
  --defense agentwatcher \
  --monitor_llm SecureLLMSys/AgentWatcher-Qwen3-4B-Instruct-2507 \
  --name my_injecagent_run

Agradecimientos

  • Este proyecto incorpora código de PIArena, AgentDojo, AgentDyn, InjecAgent y AT2.

Citación

Si usas este código, cita el artículo de AgentWatcher (cuando esté disponible).

Descargar herramienta