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
cygor — Un framework modular de descubrimiento de activos escrito en python para automatizar el trabajo manual repetitivo | Kitploit
Herramientas/GitHubGitHub/tjnull/cygor
ReconocimientoEscáneres de VulnerabilidadesMapeo de RedesEscaneo de PuertosScripting y AutomatizaciónRecopilación de InformaciónSeguridad WebPruebas de PenetraciónAnálisis de DNSSeguridad de Bases de Datos
GitHubtjnull/cygor
856hace 2 mesesRevisado por Kitploit

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 →

cygor

Un framework modular de descubrimiento de activos escrito en python para automatizar el trabajo manual repetitivo

Ver Repositorio
Compartir

Cygor

cygor_banner

Descripción General

Cygor es un framework modular de descubrimiento de activos que reúne escaneo, análisis y enumeración de servicios en un solo flujo de trabajo. Reemplaza el mosaico de herramientas separadas por un proceso automatizado que gestiona el descubrimiento, el enriquecimiento y la enumeración dirigida sin fricciones, reduciendo la carga manual y permitiéndote centrarte en los resultados en lugar de en la gestión de herramientas.

La interfaz web de Cygor toma el caos de los datos de escaneo sin procesar y lo organiza en un único centro de mando visual. En lugar de revisar interminables XML, JSON o texto plano, los resultados se analizan, enriquecen y muestran automáticamente en un espacio diseñado para una clasificación rápida y la toma de decisiones.

Impulsado por FastAPI y Bootstrap 5, el panel facilita:

  • Ver el panorama general de un vistazo: contadores y resúmenes revelan distribuciones de servicios, tendencias de códigos de estado y huellas de sistemas operativos.
  • Profundizar al instante: pasar de métricas de alto nivel a detalles por host, puertos y resultados de módulos con un solo clic.
  • Visualizar la exposición: uno de los módulos de Cygor, llamado Lockon, captura capturas de pantalla de los servicios web activos y los resultados se incrustan directamente, ofreciendo contexto inmediato sin salir del panel.
  • Mantener la organización durante la clasificación: marcar hallazgos revisados frente a no revisados, filtrar y ordenar resultados, y centrarse en los objetivos de mayor valor.

La interfaz web no es solo para la presentación: se trata de eficiencia y claridad. Al reunir todos los datos recopilados en un único espacio de trabajo interactivo, reduce el tiempo dedicado a analizar archivos o conciliar salidas y permite a los evaluadores centrarse en lo que importa: comprender el entorno y actuar en consecuencia.

¿Por qué se llama Cygor?

Muchas de las herramientas, técnicas y procedimientos que creo están inspirados en el Universo Spawn. Si nunca has leído un cómic de Spawn, no pasa nada, porque compartiré algo de información sobre por qué elegí a este personaje como nombre de esta herramienta.

El nombre Cygor proviene de Cy-Gor, un trágico antihéroe del universo Spawn. Antaño Michael Konieczny —un operativo gubernamental y amigo cercano de Al Simmons— intentó exponer la corrupción tras el asesinato de Simmons. Sin embargo, fue capturado y obligado a participar en el Proyecto Sim, los experimentos simiescos del Dr. Frederick Willheim, donde el cuerpo de un gorila se fusionó con la mente de Konieczny mediante cibernética invasiva. El resultado fue la bestia conocida como Cy-Gor, abreviatura de Gorila Cibernético.

Tras escapar del cautiverio, Cy-Gor protagonizó violentos desmanes, llegando incluso a arrasar centros de datos gubernamentales en ataques de confusión y furia. Aunque fue cazado y recapturado en múltiples ocasiones, finalmente se rebeló contra los sistemas que buscaban controlarlo: eliminó los implantes de seguimiento y se liberó para forjar su propio camino, dividido entre la máquina, la bestia y el hombre.

  • Referencia: https://www.spawnworld.com/encyclopedia/cygor.htm

¿Quién debería usar Cygor?

  • Equipos rojos y pentesters: automatizar el descubrimiento, agilizar la enumeración y mantener el contexto en proyectos de gran envergadura.
  • Equipos azules y administradores de sistemas: descubrir activos desconocidos, validar inventarios y detectar malas configuraciones que amplían la superficie de ataque.
  • Investigadores de seguridad: analizar y procesar rápidamente datos de escaneo para identificar tendencias, servicios pasados por alto y anomalías con patrones.
  • Estudiantes e instructores: aprender técnicas reales de reconocimiento y enumeración en un entorno estructurado y repetible.

Herramientas que usa Cygor:

  • Nmap: detección fiable de servicios y versiones; la salida XML se analiza y se convierte en datos estructurados de hosts y servicios.
  • Masscan: escaneo de puertos de alta velocidad para el descubrimiento rápido en grandes redes.
  • Naabu: escáner de puertos TCP simple y rápido que complementa los flujos de trabajo de Masscan/Nmap.
  • Playwright: motor de automatización de navegadores que Lockon utiliza para capturar capturas de pantalla web.
  • Descubrimiento de contenido web: ffuf, feroxbuster, gobuster y dirsearch se orquestan en paralelo mediante el módulo webenum (solo se ejecutan las herramientas instaladas).
  • Herramientas de enumeración de servicios: rpcclient/polenum (MSRPC), ldapsearch/ldapdomaindump (LDAP), snmpwalk/onesixtyone (SNMP), dig/dnsrecon (DNS) y showmount (NFS) respaldan los módulos exploradores; cada módulo se omite limpiamente si su herramienta no está presente.
  • Bibliotecas de Python: (requests, colorama, SQLModel, etc.) para análisis, enriquecimiento, formato de salida y gestión de bases de datos.

Instalación de Cygor

Hay varios métodos compatibles para instalar Cygor: pip, pipx, uv y docker.

Instalación con pipx

Algunas dependencias (por ejemplo, gssapi para Kerberos/WinRM) compilan extensiones de C, así que instala primero el conjunto de herramientas de compilación y los encabezados de Kerberos:

root@kitploit:~
# Debian/Ubuntu/Kali:
sudo apt install -y build-essential python3-dev libkrb5-dev
root@kitploit:~
# Stable version:
pipx install cygor

# Install from source:
git clone https://github.com/tjnull/cygor
cd cygor
pipx install .

Despliegue de Cygor con Docker

La configuración de Docker de Cygor incluye tanto la aplicación como un servicio de base de datos PostgreSQL. El sistema recurre automáticamente a SQLite si PostgreSQL no está disponible.

Inicio rápido

Producción (recomendado):

root@kitploit:~
# Option 1: Use the wrapper script (automatically handles port conflicts)
./docker-compose-up.sh up --build

# Option 2: Direct docker compose (uses default ports)
docker compose up --build

Desarrollo (con el código fuente montado):

root@kitploit:~
# Option 1: Use the wrapper script (automatically handles port conflicts)
./docker-compose-up.sh dev up --build

# Option 2: Direct docker compose (uses default ports)
docker compose -f docker-compose-dev.yaml up --build

Servicios de Docker Compose

La configuración de Docker Compose incluye:

  • Servicio PostgreSQL: base de datos configurada automáticamente (recurre a SQLite si no está disponible)
  • Servicio Cygor: interfaz web y aplicación
  • Detección automática de puertos: comprueba conflictos de puertos y utiliza puertos alternativos si es necesario
  • Volúmenes persistentes:
    • results/: salidas de escaneo, resultados de credrecon y archivos de base de datos
    • cygor-config/: volumen de configuración local (creado automáticamente)

Configuración de puertos

Por defecto:

  • Producción: PostgreSQL expuesto en el puerto 5432 del host (si está disponible)
  • Desarrollo: PostgreSQL expuesto en el puerto 5434 del host (si está disponible)
  • Interno: los contenedores siempre usan el puerto 5432 internamente (red de Docker)

Si los puertos están en uso, puedes:

  1. Usar el script contenedor (recomendado: detecta automáticamente los puertos disponibles):

    root@kitploit:~
    ./docker-compose-up.sh up --build
    
  2. Establecer el puerto manualmente:

    root@kitploit:~
    export POSTGRES_HOST_PORT=5435
    docker compose up --build
    
  3. Eliminar la asignación de puertos (si no necesitas acceso externo a PostgreSQL): comenta la sección ports: en docker-compose.yaml

Compilación manual de Docker

Para compilar la imagen de Docker manualmente:

root@kitploit:~
docker build -t cygor .

Ejecutar un solo contenedor (sin el servicio PostgreSQL):

root@kitploit:~
docker run --rm -v ./results:/opt/cygor/results \
  -e CYGOR_RESULTS_DIR=/opt/cygor/results \
  cygor web --host 0.0.0.0 --port 8080 --load-dir /opt/cygor/results

Comportamiento de la base de datos

  • Con Docker Compose: usa el servicio PostgreSQL (configurado automáticamente)
  • Si PostgreSQL falla: recurre automáticamente a SQLite
  • Contenedor independiente: usa SQLite por defecto (a menos que CYGOR_DB_URL esté definida)

Variables de entorno

Variables de entorno clave para Docker:

Datos y espacio de trabajo:

  • CYGOR_RESULTS_DIR: directorio de resultados (por defecto: /opt/cygor/results)
  • CYGOR_WORKSPACE: directorio del espacio de trabajo (por defecto: /opt/cygor/results)
  • CYGOR_RESULTS_PATH: ruta del host para el volumen de resultados (por defecto: ./results)
  • CYGOR_CONFIG_PATH: ruta del host para el volumen de configuración de autenticación (por defecto: ./cygor-config)

Base de datos:

  • CYGOR_DB_URL: cadena de conexión a la base de datos (se establece automáticamente con docker-compose)
  • CYGOR_DB_USER: usuario de la base de datos PostgreSQL (por defecto: cygor)
  • CYGOR_DB_PASSWORD: contraseña de la base de datos PostgreSQL
  • POSTGRES_HOST_PORT: asignación del puerto host de PostgreSQL (para resolver conflictos de puertos)

Depuración y verbosidad:

  • CYGOR_DEBUG: habilita el modo de depuración (establécelo en 1 para activarlo)
  • CYGOR_VERBOSE: nivel de verbosidad (0=normal, 1=detallado, 2=depuración)

Documentación

Las guías detalladas se encuentran en cygor/wiki/: instalación, los 11 módulos de enumeración integrados, desarrollo de plugins, gestión de espacios de trabajo y más. GitHub muestra el directorio como un sitio de documentación navegable (empieza en cygor/wiki/README.md). Las mismas páginas también las sirve la interfaz web en /docs una vez que ejecutas cygor web start.

Ejecutar Cygor

Usa el comando Cygor de nivel superior para acceder a las herramientas disponibles. Cada subcomando tiene su propia pantalla de ayuda (Cygor --help) que documenta las opciones y acciones.

root@kitploit:~
tjnull@kali:~$ cygor
Usage:
  cygor <command> [args]

Commands:
  banner      Cygor tool banner (Warning it is large!)
  scan        Automated scanner to discover hosts and services. (Will require root/sudo privileges for scanning).
  parse       Analyze a NMAP scan file (nmap, gnmap, xml) and extract categorized hostlists by common service.
  enum        Loads enumeration modules that are located in the cygor modules directory. 
  workspace   Manage workspaces (init/set-default/show).
  web         Control/launch the Cygor Web UI (start/stop/status) or run directly.

Environment:
  CYGOR_WORKSPACE     Override default workspace just for this run.
  CYGOR_RESULTS_DIR   Used by web and modules if set. (Auto-set from default workspace.)

Escáner de Cygor

Necesitarás privilegios sudo (root) para ejecutar el escáner en cygor:

root@kitploit:~
    Run host discovery with Masscan only:

    cygor scan -i eth0 -f scope.txt --discover masscan

    Run host discovery with both Masscan and Naabu, then Nmap on merged results:

    cygor scan -i eth0 -f scope.txt --discover masscan naabu --nmap-source merge

    Discovery only (no Nmap), save results in results/discovery/:

    cygor scan -i eth0 -f scope.txt --discover masscan naabu --discover-only

    Reuse saved discovery results for Nmap top ports scan:

    cygor scan --use-discovery results/discovery/merged-discovered.txt --scan-type top-ports

    Run Nmap with custom ports on discovered hosts:

    cygor scan --use-discovery results/discovery/masscan-discovered.txt --ports 80,443,8443

    Run Nmap with 10 parallel processes on full scope (Max is 100):

    \cygor scan -i eth0 -f scope.txt --discover naabu --processes 10 --scan-type fullscan:

    Run Cygor to discover hosts and scan them with Nmap with a provided lists of IP Addresses or CDRs:

    cygor scan -i eth0 --ips 10.10.10.1 10.10.10.5 10.10.20.0/24 --discover naabu --processes 10 --scan-type fullscan

    Exclude specific subnets or hosts from scan:

    cygor scan -i eth0 -f scope.txt --exclusions exclusions.txt --discover masscan

Analizador de Cygor:

root@kitploit:~
    Parse a directory of Nmap results and print hostlists:

    cygor parse results/nmap

    Parse a single XML and write hostlists to results/parsed-hostlists:

    cygor parse results/nmap/scan1.xml -o results

    Recursively parse .xml/.nmap/.gnmap files and write outputs:

    cygor parse /path/to/scans --out-dir results

Módulos de enumeración de Cygor

Cygor incluye un conjunto creciente de módulos de enumeración específicos por protocolo. Cada uno envuelve herramientas probadas, analiza la salida en filas tipadas ("parsea, no vuelques") y lleva los resultados al inventario (BD + interfaz web), donde se pueden buscar y correlacionar por host. Las observaciones de alta señal también se introducen automáticamente en el motor de próximos pasos, que muestra hallazgos priorizados y comandos de seguimiento listos para ejecutar en la interfaz web.

root@kitploit:~
    List all available modules:

    cygor enum --list

    Run lockon against an http hostlist:

    cygor enum lockon web -f results/parsed-hostlists/http/http-hostlist.txt -o results/enum/lockon

    Run web content discovery (multi-tool, with screenshots):

    cygor enum webenum -f results/parsed-hostlists/http-https/http-https-hostlist.txt --screenshot

    Run nfsexplorer against NFS targets (exports only):

    cygor enum nfsexplorer -i results/parsed-hostlists/nfs/nfs-hostlist.txt --info

    Run smbexplorer and list files:

    cygor enum smbexplorer -i results/parsed-hostlists/smb/smb-hostlist.txt --list-files

    Enumerate MSRPC (null session) with password policy + RID cycling:

    cygor enum rpcexplorer -i results/parsed-hostlists/smb/smb-hostlist.txt --rid-cycle

    Probe databases for unauthenticated access (point at any DB service hostlist):

    cygor enum dbprobe -i results/parsed-hostlists/mysql/mysql-hostlist.txt

Ejecuta cygor enum <module> --help para obtener la referencia completa de opciones por módulo.

Plugins de Cygor

Cygor es extensible: coloca un archivo Python en ~/.cygor/plugins/ y aparecerá en cygor enum --list (y en la interfaz web) como cualquier módulo integrado. Envuelve tus propias herramientas, distribuye escáneres internos a tu equipo o amplía Cygor para un proyecto específico sin necesidad de hacer un fork.

root@kitploit:~
    Scaffold a new plugin (writes ~/.cygor/plugins/my_scanner.py):

    cygor plugin create "My Scanner"

    Install a plugin from a local file or a git URL:

    cygor plugin install ./my_scanner.py
    cygor plugin install https://github.com/example/cygor-myscanner

    Validate, list, update, remove:

    cygor plugin validate ./my_scanner.py
    cygor plugin list
    cygor plugin update --all
    cygor plugin remove my_scanner

    Run an installed plugin (same as a built-in module):

    cygor enum my_scanner -t 10.10.10.5

Hay tres plugins de referencia en docs/examples/modules/: un ejemplo mínimo, un envoltorio para herramientas externas y una plantilla completa anotada. Consulta la Guía de desarrollo de plugins para conocer el formato completo de los plugins, opciones/columnas/vistas, gestión de dependencias, compatibilidad de versiones y la lista de permisos opcional de plugins.

Interfaz web de Cygor

Después de recopilar datos, puedes cargarlos en la interfaz web de Cygor para transformar los resultados de escaneo en una visualización clara de hosts, servicios y otros hallazgos clave. Cygor creará un archivo llamado cygor.db que contendrá los datos necesarios para modelarlos en la interfaz web de Cygor.

Iniciar el servidor web

root@kitploit:~
# Basic usage - start on default host/port (127.0.0.1:8000)
cygor web start

# Start on all interfaces, port 8080
cygor web start -H 0.0.0.0 -p 8080

# Start with custom results directory
cygor web start --load-dir /path/to/results

# Start with verbose output
cygor web start -vv

# Start with all options
cygor web start -H 0.0.0.0 -p 8080 --load-dir ~/scan-results -vv

Opciones de línea de comandos

Ejecuta cygor web start --help para obtener la lista completa de opciones.

Gestión del servidor web

root@kitploit:~
# Check if the web server is running
cygor web status

# Stop a running web server
cygor web stop

Opciones de base de datos

Cygor detecta y usa PostgreSQL automáticamente si está disponible; de lo contrario, recurre a SQLite:

  • PostgreSQL (recomendado para producción):

    • Se detecta automáticamente si psql está disponible
    • Crea la base de datos y el usuario si es necesario
    • Cadena de conexión: postgresql+psycopg_async://user:pass@host/db
  • SQLite (alternativa por defecto):

    • No requiere configuración
    • Archivo de base de datos: cygor.db en el directorio de resultados
    • Adecuado para despliegues de un solo usuario

Descargo de responsabilidad:

Cygor es un framework de investigación en seguridad y educativo. Está pensado para usarse únicamente en entornos donde tengas autorización explícita por escrito, como ejercicios de pruebas de penetración, operaciones de equipo rojo, laboratorios de clase o rangos de pruebas personales.

Este software no debe utilizarse para accesos no autorizados, intrusiones o perturbaciones de sistemas que no poseas o controles. Hacerlo puede violar las leyes y regulaciones de tu jurisdicción y podría dar lugar a un proceso penal o sanciones civiles.

Al descargar, ejecutar o modificar Cygor, aceptas que:

  • Eres el único responsable de cómo lo usas.
  • Restringirás su uso a escenarios legales y éticos.

Los autores y colaboradores de Cygor no aceptan ninguna responsabilidad por el uso indebido, los daños o las consecuencias derivadas del uso de este software.

Si no estás seguro de si estás autorizado a usar Cygor en un entorno determinado, no lo ejecutes.

Descargar herramienta
MóduloServicioFunción
lockonHTTP/S, RDP, VNC, X11Captura capturas de pantalla en varios protocolos para una clasificación visual rápida.
webenumHTTP/SDescubrimiento de contenido paralelo con múltiples herramientas (ffuf, feroxbuster, gobuster, dirsearch) con deduplicación/correlación entre herramientas y capturas de pantalla opcionales.
smbexplorerSMB (445)Enumera recursos compartidos, permisos y archivos accesibles; NTLM/Kerberos/pass-the-hash.
nfsexplorerNFS (2049)Enumera exportaciones, versiones y archivos; suplantación de UID/GID y comprobaciones de no_root_squash.
rpcexplorerMSRPC (445)Sesión nula/autenticada: información del servidor, SID de dominio, usuarios, grupos, política de contraseñas completa y ciclo de RID.
ldapexplorerLDAP/AD (389/636)rootDSE, bind/búsqueda anónimos y volcado de dominio autenticado.
snmpexplorerSNMP (161)Fuerza bruta de comunidad v1/v2c, información del sistema del dispositivo y barrido de MIB (usuarios/procesos/software/puertos/interfaces).
dnsexplorerDNS (53)Versión, detección de resolvedor abierto y transferencia de zona AXFR.
ftpexplorerFTP (21)Banner, inicio de sesión anónimo, listado de directorios, FEAT, prueba de escritura anónima.
smtpexplorerSMTP (25/587)Banner, STARTTLS, mecanismos AUTH, enumeración de usuarios VRFY, prueba de relay abierto.
dbprobeBases de datosPrueba Redis/MySQL/PostgreSQL/MongoDB/Elasticsearch/CouchDB para acceso sin autenticación y versión.