Skip to content

Arquitectura

DenReanin edited this page Jun 6, 2026 · 1 revision

Arquitectura

Gung12 está construida como un pipeline modular: la información atraviesa una serie de etapas, cada una con una responsabilidad única. Esto hace el código fácil de mantener y de extender.

Flujo principal

CLI  →  Parser  →  Engine  →  Analyzer  →  Reporter
Etapa Responsabilidad
CLI (cli.py) Procesa los argumentos del usuario y orquesta el resto del pipeline.
Parser (parser.py / spa_parser.py) Descarga la página, localiza el formulario y extrae sus campos, el método, la acción y si hay token CSRF.
Engine (engine.py) Lanza una petición base y luego inyecta los payloads campo a campo, comparando cada respuesta con la base.
Analyzer (analyzer.py) Decide si una respuesta indica vulnerabilidad y le asigna un nivel de confianza.
Reporter (reporter.py) Genera el informe final en HTML o JSON.

Módulos opcionales

Se enganchan al pipeline solo cuando se activan con su flag:

Módulo Flag Función
Autenticación (auth.py) --login-url Hace login automático antes de escanear, para llegar a formularios protegidos.
Evasión WAF (waf_bypass.py) --waf-bypass Expande cada payload con variantes (codificación, mayúsculas/minúsculas, null bytes).
Análisis con IA (ai_analyzer.py) --ai Envía los hallazgos a un modelo de lenguaje como segunda opinión.
Parser SPA (spa_parser.py) --spa Renderiza la página con Playwright para analizar aplicaciones dinámicas.

Por qué un diseño modular

La principal ventaja es la extensibilidad: añadir un nuevo tipo de vulnerabilidad consiste, en esencia, en aportar su archivo de payloads, sin tener que tocar el motor ni el resto de etapas. Toda la lógica de detección vive dentro de la propia herramienta, sin depender de terceros como sqlmap.

Ver también: Detección y confianza · Modo SPA · Análisis con IA.

Clone this wiki locally