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
Vlun-Agent-X — VulnAgent-X: Un framework agéntico en capas para la detección de vulnerabilidades a nivel de repositorio | Kitploit
Herramientas/GitHubGitHub/renweimeng/vlun-agent-x
Análisis EstáticoAnálisis Dinámico (Sandboxing)Análisis de VulnerabilidadesAnálisis de CódigoAprendizaje AutomáticoPapers e InvestigaciónSeguridad de IA
GitHubrenweimeng/vlun-agent-x

Vlun-Agent-X

VulnAgent-X: Un framework agéntico en capas para la detección de vulnerabilidades a nivel de repositorio

Ver Repositorio
1hace 5 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

中文 English

Prototipo de investigación de VulnAgentX

VulnAgentX es un prototipo de detección de vulnerabilidades/defectos multi-agente orientado a la reproducción de investigaciones. Recibe un repositorio local o un diff como entrada y produce hallazgos estructurados, cadenas de evidencia, resultados de localización, niveles de confianza y registros de experimentos.

Capacidades principales

  • Forma de entrada: repo path o unified diff
  • Flujo de trabajo: screening -> context expansion -> scheduler -> router -> experts -> sceptic -> verification(stub) -> evidence fusion
  • Campos de salida:
    • issue_type
    • location(file + line range)
    • evidence_summary
    • confidence
    • severity
    • optional_cwe
    • fix_hint
    • evidence_chain
    • counter_evidence
  • Interfaz: CLI + FastAPI
  • Experimentos reproducibles: pytest / mypy / ruff + soporte de ejecución con Docker

Resumen del flujo de trabajo

  1. screening: detección rápida de regiones sospechosas (reglas + señales de metadatos)
  2. context_expansion: obtiene el «contexto mínimo suficiente» (extrae ventanas según las ubicaciones sospechosas)
  3. scheduler: aplica una estrategia de escalado basada en la confianza y el riesgo (early_exit / expert_review / verification)
  4. router_agent: selecciona un Agente experto para cada región sospechosa
  5. semantic/security/logic: proporcionan afirmaciones estructuradas y evidencia desde diferentes perspectivas
  6. sceptic_agent: genera contraevidencia y señales de penalización
  7. verification: verificación dinámica opcional (actualmente una implementación segura provisional)
  8. evidence_fusion: fusiona de forma unificada y emite los hallazgos finales

Guía de instalación y ejecución

1) Preparación del entorno

Requisitos: Python 3.11+ (también funciona en versiones superiores)

root@kitploit:~
cd /Users/xiaolu/Documents/Python_code/vulnAgentX
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -e '.[dev]'

2) Uso de la CLI

Analizar un repositorio completo:

root@kitploit:~
.venv/bin/vulnagentx analyze --repo /path/to/repo --output json

Analizar un archivo diff:

root@kitploit:~
.venv/bin/vulnagentx analyze --diff-file /path/to/patch.diff --output json

Salida resumida:

root@kitploit:~
.venv/bin/vulnagentx analyze --repo /path/to/repo --output summary

3) Uso de la API

Iniciar el servicio:

root@kitploit:~
.venv/bin/uvicorn vulnagentx.app.api:app --reload

Comprobación de estado:

root@kitploit:~
curl http://127.0.0.1:8000/health

Iniciar un análisis:

root@kitploit:~
curl -X POST http://127.0.0.1:8000/analyze \
  -H "Content-Type: application/json" \
  -d '{"repo_path":"/path/to/repo"}'

4) Ejecución con Docker

root@kitploit:~
docker compose -f docker/docker-compose.yml up --build

5) Control de calidad y pruebas

root@kitploit:~
.venv/bin/ruff check src tests
.venv/bin/mypy src
.venv/bin/pytest

Ejemplo de salida

root@kitploit:~
{
  "run_id": "...",
  "findings": [
    {
      "issue_type": "command_injection",
      "location": {"file_path": "app.py", "start_line": 42, "end_line": 42},
      "evidence_summary": "Command execution surface detected...",
      "confidence": 0.87,
      "severity": "critical",
      "optional_cwe": "CWE-78",
      "fix_hint": "Avoid shell command composition...",
      "source_agents": ["security_agent", "semantic_agent"],
      "evidence_chain": [],
      "counter_evidence": []
    }
  ],
  "metrics": {
    "runtime_seconds": 0.07
  },
  "logs": []
}

Descripción de los archivos (archivo por archivo)

Archivos raíz y del proyecto

Código fuente principal (src/vulnagentx)

Archivos de prueba (tests)

ArchivoPropósito
tests/test_agents.pyPruebas unitarias: salidas estructuradas de cada Agente y lógica de contraevidencia.
tests/test_end_to_end.pyPruebas de extremo a extremo: flujo principal desde el repositorio de entrada hasta los hallazgos finales.
tests/test_research_modules.py

Módulos mejorados implementados en esta versión

  • Adaptador LLM real: OpenAI + Ollama local + conmutación automática mediante fábrica
  • AST y grafo de código reales con Tree-sitter: analiza funciones/importaciones/relaciones de llamadas y admite expansión de contexto a archivos vecinos
  • Conjunto de reglas Semgrep real: archivo de reglas integrado y conectado a la fase de screening
  • Cadena de ejecución del sandbox de verificación: planificación de tareas, ejecución restringida, control de timeout y escritura de resultados estructurados
  • Evaluación de datasets y ablación: cargadores de datos, módulo de métricas y scripts de experimentos y ablación
Descargar herramienta
ArchivoPropósito
.env.examplePlantilla de variables de entorno (configuración opcional como el nivel de registro).
pyproject.tomlConstrucción del proyecto, dependencias, entradas de scripts, configuración de pytest/ruff/mypy.
README.mdREADME principal (con botón de cambio de idioma, chino por defecto).
README.zh.mdDocumentación completa en chino.
README.en.mdDocumentación completa en inglés.
docker/DockerfileArchivo de construcción de la imagen de contenedor del servicio API.
docker/docker-compose.ymlLevanta el servicio de contenedores localmente con un solo comando.
rules/semgrep/vulnagentx-rules.ymlConjunto de reglas Semgrep integradas (inyección de comandos/inyección SQL/deserialización/API C insegura).
scripts/run_experiment.pyScript de ejecución de experimentos por lotes sobre datasets, genera predicciones en JSONL.
scripts/evaluate.pyLee la salida de los experimentos y calcula métricas de detección/localización/eficiencia.
scripts/run_ablation.pyScript de experimentos de ablación (no_semgrep/no_treesitter/no_sceptic/no_verification).
ArchivoPropósito
src/vulnagentx/__init__.pyDefinición de la versión del paquete y sus exportaciones.
src/vulnagentx/app/__init__.pyInicialización del subpaquete app.
src/vulnagentx/app/cli.pyEntrada de la CLI (vulnagentx analyze).
src/vulnagentx/app/api.pyEntrada del servicio FastAPI (/health, /analyze).
src/vulnagentx/app/schemas.pyEsquemas Pydantic de solicitudes/respuestas de la API.
src/vulnagentx/core/__init__.pyInicialización del subpaquete core.
src/vulnagentx/core/state.pyModelo de estado global: regiones, evidencia, salidas de los Agentes, hallazgos, registros y métricas.
src/vulnagentx/core/screening.pyDetección rápida de la primera fase, extrae regiones sospechosas.
src/vulnagentx/core/context_expansion.pyExpansión de contexto: extrae ventanas de código mínimas según la localización.
src/vulnagentx/core/scheduler.pyEstrategia de escalado consciente de la confianza (early_exit/expert_review/verification).
src/vulnagentx/core/verification.pyMódulo de verificación dinámica opcional (actualmente una versión segura provisional).
src/vulnagentx/core/evidence_fusion.pyFusión de evidencia de múltiples Agentes, emite los hallazgos finales.
src/vulnagentx/core/workflow.pyEntrada de orquestación de extremo a extremo VulnAgentWorkflow.
src/vulnagentx/agents/__init__.pyAgregación de exportaciones de los Agentes.
src/vulnagentx/agents/base.pyClase base abstracta del Agente y utilidades de obtención de contexto.
src/vulnagentx/agents/router_agent.pyAgente de enrutamiento: asigna un Agente experto a cada región sospechosa.
src/vulnagentx/agents/semantic_agent.pyAgente semántico: riesgos a nivel semántico (p. ej., punteros nulos, deserialización, excepciones tragadas).
src/vulnagentx/agents/security_agent.pyAgente de seguridad: reglas de vulnerabilidades de seguridad (inyección de comandos, inyección SQL, fuera de límites, etc.).
src/vulnagentx/agents/logic_bug_agent.pyAgente de lógica: defectos de negocio/flujo de control (límites, división por cero, falta de autorización, etc.).
src/vulnagentx/agents/sceptic_agent.pyAgente escéptico: genera contraevidencia, penalizaciones por conflicto y reduce la confianza.
src/vulnagentx/adapters/__init__.pyInicialización del subpaquete de adaptadores.
src/vulnagentx/adapters/sandbox_adapter.pyEjecutor de sandbox de subprocesos restringidos (timeout, sin shell) para la verificación.
src/vulnagentx/adapters/semgrep_adapter.pyAdaptador de la CLI de Semgrep (activación opcional).
src/vulnagentx/adapters/treesitter_adapter.pyAdaptador real de Tree-sitter (analiza el AST y las relaciones de llamadas/importaciones cuando está disponible; degrada si no lo está).
src/vulnagentx/adapters/llm/__init__.pyAgregación de exportaciones de adaptadores LLM.
src/vulnagentx/adapters/llm/base.pyInterfaz de protocolo del adaptador LLM.
src/vulnagentx/adapters/llm/mock_adapter.pyLLM simulado (Mock) comprobable sin conexión.
src/vulnagentx/adapters/llm/openai_adapter.pyAdaptador del SDK oficial de OpenAI.
src/vulnagentx/adapters/llm/local_adapter.pyAdaptador de modelo local (API HTTP de Ollama).
src/vulnagentx/adapters/llm/factory.pySelecciona automáticamente el adaptador LLM según la configuración y recurre a Mock como respaldo.
src/vulnagentx/retrieval/repo_graph.pyÍndice de grafo de código y recuperación de archivos vecinos (basado en solapamiento de símbolos del AST).
src/vulnagentx/datasets/base.pyEstructura de muestras de dataset genérica y lectura de JSONL/CSV.
src/vulnagentx/datasets/devign.pyEntrada de carga de datos de Devign.
src/vulnagentx/datasets/bigvul.pyEntrada de carga de datos de Big-Vul.
src/vulnagentx/datasets/primevul.pyEntrada de carga de datos de PrimeVul.
src/vulnagentx/datasets/jit.pyEntrada de carga de datos de JIT.
src/vulnagentx/eval/detection_metrics.pyMétricas de detección (Precision/Recall/F1/Accuracy).
src/vulnagentx/eval/localization_metrics.pyMétricas de localización (Top-1/Top-3/MRR).
src/vulnagentx/eval/efficiency_metrics.pyMétricas de eficiencia (tiempo medio, P95, media de hallazgos).
src/vulnagentx/eval/ablations.pyLógica de ejecución de experimentos de ablación.
src/vulnagentx/utils/config.pyCentro de configuración del flujo de trabajo (interruptores env/CLI/API).
Pruebas de los nuevos módulos: construcción del grafo Tree-sitter, cadena de ejecución de la verificación y métricas de evaluación.