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
InfraGuard — InfraGuard es un Proxy y Gestor de Redirección de Comando y Control que protege tu Infraestructura de Red Team contra la atribución de amenazas. | Kitploit
Herramientas/GitHubGitHub/whispergate/infraguard
Herramientas de PhishingGeneración de PayloadsProxies Web e InterceptaciónEvasión de IDS/IPSSeguridad de RedesComando y ControlInteligencia de AmenazasRed TeamingRespuesta a IncidentesAnti-BotAnálisis de DNS
16310hace 6 díasRevisado 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 →
Compartir
GitHub
whispergate/infraguard

InfraGuard

InfraGuard es un Proxy y Gestor de Redirección de Comando y Control que protege tu Infraestructura de Red Team contra la atribución de amenazas.

Ver RepositorioSitio web

Logotipo de InfraGuard

Rastreador de infraestructura de equipo rojo y redireccionador C2 — una alternativa moderna a RedWarden.

InfraGuard se sitúa entre Internet y tu teamserver C2, validando cada solicitud entrante contra tu perfil C2 maleable y bloqueando todo lo que no cumpla. Los escáneres, bots y sondas del equipo azul son redirigidos a un sitio señuelo, mientras que el tráfico legítimo de beacons pasa a tu teamserver.

Llamadas de Mythic Xenon Panel de InfraGuard

Arquitectura

Diagrama de Arquitectura

Características

  • Proxy multidominio — realiza proxy de múltiples dominios simultáneamente, cada uno con perfiles C2, upstreams y reglas independientes
  • Validación de perfiles C2 — analiza y aplica perfiles de Cobalt Strike, Mythic, Brute Ratel C4, Sliver, Havoc, Nighthawk y PoshC2 como reglas de redireccionador
  • Listeners multiprotocolo — listeners HTTP/HTTPS, DNS, MQTT y WebSocket ejecutándose simultáneamente con inteligencia IP y seguimiento de eventos compartidos
  • Pipeline de filtrado basado en puntuación — 10 filtros (JA3, IP, bot, cabecera, DNS, geo, perfil, reproducción, enumeración, sandbox) contribuyen cada uno con una puntuación de 0.0 a 1.0; un umbral configurable determina bloqueo/permiso
  • Filtrado de huellas TLS JA3 — bloquea Masscan, ZGrab2, Shodan, curl, Python requests y Nmap en la capa de handshake TLS antes de que se intercambie cualquier dato HTTP; funciona mediante cabecera de proxy inverso (nginx ssl_fingerprint, HAProxy JA3 nativo) o protocolo asyncio personalizado; modo de lista blanca opcional para aplicar JA3 de beacon
  • Detección de sandbox/navegador sin cabeza — modelo de acumulación de puntuación a través de señales HTTP: User-Agent HeadlessChrome, falta de Accept-Language, Chrome sin sec-ch-ua, UAs de escáner Safe Links/msnbot, orden de Accept no propio de navegador; bloquea Microsoft Safe Links, Cuckoo, ANY.RUN y escáneres de URL de VirusTotal
  • Detección de enumeración de rutas — seguimiento de URI únicas por IP en una ventana deslizante; bloquea automáticamente dirbuster/ffuf/gobuster antes de que mapeen el espacio de URI; umbrales configurables de bloqueo y sospecha
  • Detección de enumeración de subdominios DNS — rastrea respuestas NXDOMAIN por IP de cliente; añade inmediatamente la IP fuente a la lista de bloqueo al superar el umbral; bloquea Amass, subfinder, dnsrecon en el listener DNS
  • Antibot/anti-rastreo — más de 40 patrones conocidos de User-Agent de escáner/bot, detección de anomalías en cabeceras
  • Inteligencia IP — listas de bloqueo CIDR integradas para 19 rangos de proveedores de seguridad (Shodan, Censys, Rapid7, etc.), filtrado GeoIP, coincidencia de palabras clave de DNS inverso
  • Fuentes de inteligencia de amenazas — listas de bloqueo autoactualizables desde fuentes públicas (abuse.ch, Emerging Threats, Spamhaus DROP, Binary Defense) con intervalo de actualización configurable y caché en disco
  • Ingesta de reglas — importa listas de bloqueo IP y patrones de User-Agent desde archivos .htaccess y robots.txt existentes
  • Bloqueo dinámico de IP — bloquea IPs fuera de rangos en lista blanca; autoincluye en lista blanca IPs tras N solicitudes C2 válidas
  • Enriquecimiento de lista blanca — las CIDR en lista blanca se enriquecen automáticamente con ASN, organización, país y continente al inicio mediante bases de datos GeoIP
  • Detección de quema — monitoreo de registros de transparencia de certificados (sondeo crt.sh), automonitoreo de reputación de dominio (URLhaus, OpenPhish, Google Safe Browsing) y detección de analistas entre dominios (una sola IP accediendo a múltiples dominios de operador); todos los avisos de quema se envían a través de los plugins de webhook existentes
  • Rutas de entrega de contenido — sirve payloads, señuelos y archivos estáticos en rutas específicas mediante PwnDrop, almacén de archivos de Mythic, sistema de archivos local o backends proxy HTTP; entrega condicional opcional (contenido real a objetivos, señuelos a escáneres)
  • Almacenamiento de archivos de Mythic — el backend mythic_file hace proxy de /direct/download/{uuid} de Mythic en URLs limpias; UUID fijo (alias de URL) o modo proxy (UUID desde la ruta); control de acceso proporcionado completamente por la pila de filtros de InfraGuard
  • Tokens de payload de un solo uso — los tokens se emiten automáticamente cuando un beacon se incluye dinámicamente en la lista blanca; aplicación atómica de un solo uso mediante SQLite evita la repetición de URL por parte de analistas o sandboxes; TTL y número máximo de usos configurables
  • Limitación de tasa por ruta — limitador de tasa de descarga por IP en ventana deslizante en rutas de contenido; superar el límite sirve el señuelo de escáner configurado o un 429
  • Guardias de entrega — clave de entorno para rutas de contenido: requerir IP de beacon (lista blanca dinámica), lista blanca de UA (regex), valores de cabecera requeridos (cabeceras específicas de implante), cabeceras prohibidas (Via, X-Forwarded-For, CF-Worker); las comprobaciones fallidas ejecutan la acción de caída del dominio, no un 429 crudo
  • Tokens de campaña de phishing — protege páginas de phishing detrás de tokens por campaña incrustados en enlaces de correo; lista de tokens estática o tokens autovalidados con HMAC y TTL configurable; los analistas que encuentren la URL a través de registros CT o fuentes de amenazas no podrán cargar la página
  • Protección contra repetición — rechaza solicitudes duplicadas por hash de contenido; los hashes se persisten en SQLite, por lo que la protección sobrevive a reinicios
  • Acciones de caída — redirección, reinicio TCP, proxy a sitio señuelo o tarpit (respuesta de goteo lento para perder tiempo del escáner)
  • Panel web — SPA en tiempo real con página de inicio de sesión, feed de solicitudes en vivo, estadísticas de dominio, principales IP bloqueadas, transmisión de eventos WebSocket autenticada y acciones en línea de bloqueo/lista blanca/desbloqueo
  • Puesto de mando — panel de agregación multiinstancia que fusiona estadísticas, solicitudes y eventos en vivo de múltiples nodos InfraGuard en una sola vista
  • Interfaz de terminal — TUI basada en Textual con pantalla de inicio de sesión, sondeo de API en vivo, registro de solicitudes codificado por colores
  • Integración SIEM — plugins integrados para Elasticsearch, Wazuh y Syslog (CEF/JSON) con reenvío por lotes
  • Alertas por webhook — plugins integrados para Discord (embeds), Slack (Block Kit) y webhook genérico (Rocket.Chat, Mattermost, Teams); las alertas de detección de quema se enrutan a través del mismo sistema de plugins
  • Sistema de plugins — arquitectura basada en eventos con hooks on_event, configuración por plugin, filtrado de eventos (only_blocked, min_score, include/exclude de dominio)
  • Generación de configuración de backend — genera configuraciones de Nginx, Caddy o Apache con personalización completa del operador (TLS, filtrado IP, comprobaciones de cabecera, alias, cabeceras personalizadas)
  • Proxies perimetrales — Cloudflare Worker y AWS Lambda ligeros para domain fronting a través de infraestructura CDN, bloqueo por país en el borde y reescritura de host
  • Despliegue con Docker — Dockerfile + docker-compose con Let's Encrypt opcional, descargador GeoIP y servidor de payloads PwnDrop
  • Soporte GeoIP — las tres bases de datos GeoLite2 (Ciudad, ASN, País) con descarga automática en Docker; las CIDR en lista blanca se enriquecen automáticamente al inicio
  • Respaldo TLS autofirmado — genera certificados automáticamente cuando las rutas configuradas no existen
  • Soporte de variables de entorno — archivo .env cargado automáticamente; la sintaxis ${VAR} funciona en todos los valores y claves de configuración
  • Endpoint de salud configurable — cambia la ruta de verificación de salud para evitar la identificación por huellas
  • Registro estructurado — registros estructurados en formato JSON mediante structlog
  • Seguimiento y persistencia — SQLite con modo WAL para registro de solicitudes, estadísticas, registro de nodos, hashes de reproducción y tokens de payload

Guía de instalación

Consulte la Página Wiki para la instalación

Referencia CLI

root@kitploit:~
infraguard --version                                Muestra la versión
infraguard --help                                   Muestra la ayuda

infraguard run -c config.yaml                       Inicia el proxy inverso
infraguard run -c config.yaml --port 8443           Sobrescribe el puerto de escucha
infraguard run -c config.yaml --host 0.0.0.0        Sobrescribe la dirección de enlace

infraguard dashboard -c config.yaml                 Inicia el panel web
infraguard dashboard -c config.yaml --port 9090     Sobrescribe el puerto del panel

infraguard tui                                      Inicia la TUI con pantalla de inicio de sesión
infraguard tui --url http://host:8080 --token TOK   Conexión automática al panel
infraguard tui -c config.yaml                       Lee URL/token de la configuración

infraguard command-post -c command-post.yaml         Inicia el panel multiinstancia
infraguard command-post --instance name:url:token    Añade instancia mediante CLI (repetible)

infraguard profile parse <file>                     Analiza y muestra un perfil C2
infraguard profile parse <file> --format json        Salida como JSON
infraguard profile parse <file> --type brute_ratel   Forza el tipo de perfil
infraguard profile convert <file> -o out.json        Convierte el perfil a JSON

# Valores --type admitidos: auto, cobalt_strike, mythic, brute_ratel, sliver, havoc, nighthawk, poshc2
# Auto-detección: .profile = CS, .toml = Havoc, .yaml = PoshC2, .json = auto-detect por claves

infraguard ingest <files...>                         Ingiere reglas de .htaccess/robots.txt
infraguard ingest <files...> --format blocklist      Salida como lista de bloqueo IP
infraguard ingest <files...> --format json           Salida como JSON
infraguard ingest <files...> -o banned_ips.txt       Escribe la lista de bloqueo en un archivo

infraguard generate nginx -c config.yaml             Genera configuración de Nginx
infraguard generate caddy -c config.yaml             Genera Caddyfile
infraguard generate apache -c config.yaml            Genera VirtualHost de Apache

infraguard init -o config.yaml                       Genera configuración inicial
infraguard validate -c config.yaml                   Valida el archivo de configuración

Opciones del generador

El comando generate acepta flags adicionales para personalización del operador:

Puesto de mando (Panel multiinstancia)

Cuando se ejecutan múltiples instancias de InfraGuard en diferentes VPS o proveedores de nube, el Puesto de mando agrega estadísticas, solicitudes y eventos en vivo de todos los nodos en un solo panel.

root@kitploit:~
┌─────────────────────────────┐
│   Panel del Puesto de mando │
│   http://localhost:9090     │
└──────────┬──────────────────┘
           │ búsqueda paralela
     ┌─────┼──────┬──────────┐
     ▼     ▼      ▼          ▼
   IG-1   IG-2   IG-3   ... IG-N

Puesto de mando de InfraGuard

Inicio rápido

root@kitploit:~
# Mediante archivo de configuración
infraguard command-post -c config/command-post.yaml

# Mediante argumentos CLI
infraguard command-post \
  --instance "prod:https://ig1.example.com:8080:TOKEN1" \
  --instance "staging:https://ig2.example.com:8080:TOKEN2" \
  --port 9090

# Mediante Docker
docker compose --profile command-post up -d command-post

Configuración

Crea config/command-post.yaml:

root@kitploit:~
instances:
  - name: "prod-cs"
    url: "https://ig1.example.com:8080"
    token: "${IG_PROD_TOKEN}"
  - name: "prod-mythic"
    url: "https://ig2.example.com:8080"
    token: "${IG_MYTHIC_TOKEN}"
  - name: "staging"
    url: "https://ig3.example.com:8080"
    token: "${IG_STAGING_TOKEN}"

port: 9090
# auth_token: "${COMMAND_POST_TOKEN}"

Qué muestra

  • Estadísticas fusionadas — total de solicitudes, permitidas, bloqueadas sumadas en todas las instancias
  • Barra de salud de instancias — estado verde/rojo para cada nodo conectado
  • Registro de solicitudes intercaladas — solicitudes de todas las instancias ordenadas por marca de tiempo, cada una etiquetada con su nombre de instancia
  • Principales IP bloqueadas fusionadas — agregadas en todas las instancias
  • Estadísticas por dominio — dominios de todas las instancias con tasas de bloqueo recalculadas
  • Feed de eventos en vivo — eventos WebSocket multiplexados de todos los nodos
  • Acciones de bloqueo/lista blanca — se distribuyen a todas las instancias o a una específica

Endpoints de API

Despliegue con Docker

Inicio rápido

root@kitploit:~
cp .env.example .env
# Edita .env con tu dominio, teamserver y token
docker compose up -d

Esto inicia dos servicios:

  • proxy — el redireccionador en los puertos 443 y 80
  • dashboard — la interfaz web en el puerto 8080

Con Let's Encrypt

root@kitploit:~
# Establece en .env:
#   INFRAGUARD_LETSENCRYPT=true
#   INFRAGUARD_DOMAIN=cdn.example.com
#   [email protected]

# Obtén el certificado inicial
docker compose --profile letsencrypt up certbot

# Inicia el proxy (usará el certificado LE)
docker compose up -d proxy dashboard

# Inicia la renovación automática (comprueba cada 12 horas)
docker compose --profile letsencrypt up -d certbot-renew

Requisitos para Let's Encrypt:

  • El puerto 80 debe ser accesible desde Internet
  • INFRAGUARD_DOMAIN debe resolverse a la IP pública de este host
  • INFRAGUARD_DOMAIN_EMAIL debe ser una dirección de correo electrónico válida

Con bases de datos GeoIP

root@kitploit:~
# Descarga las tres bases de datos GeoLite2 (Ciudad, ASN, País)
docker compose --profile geoip up geoip-update

# Luego inicia normalmente: las bases de datos se montan en /app/geoip/
docker compose up -d proxy dashboard

Con PwnDrop (entrega de payloads)

root@kitploit:~
# Inicia PwnDrop junto al proxy
docker compose --profile pwndrop up -d pwndrop

# Accede a la interfaz de administración de PwnDrop en https://localhost:8443
# InfraGuard se comunica internamente en http://pwndrop:80

Luego configura rutas de contenido en tu configuración para hacer proxy de rutas de payload a PwnDrop:

root@kitploit:~
domains:
  cdn.example.com:
    content_routes:
      - path: "/downloads/*"
        backend:
          type: "pwndrop"
          target: "http://pwndrop:80"
          auth_token: "${PWNDROP_TOKEN}"

Escalado

root@kitploit:~
# Ejecuta múltiples nodos redireccionadores
docker compose up -d --scale proxy-node=3

Descomenta el servicio proxy-node en docker-compose.yml para habilitarlo.

Volúmenes

Arquitectura

root@kitploit:~
infraguard/
    __init__.py              Inicializador del paquete
    __main__.py              Entrada python -m infraguard
    main.py                  CLI de Click
    config/                  Carga de configuración YAML, soporte .env, validación Pydantic
    core/                    Motor proxy ASGI (app, proxy, router, TLS, acciones de caída, entrega de contenido)
    profiles/                Analizadores de perfiles C2 (Cobalt Strike, Mythic, Brute Ratel, Sliver, Havoc, Nighthawk, PoshC2)
    pipeline/                Filtros de validación de solicitudes (JA3, IP, bot, cabecera, DNS, geo, perfil, reproducción, enumeración, sandbox)
    intel/                   Inteligencia IP (listas de bloqueo, GeoIP, rDNS, fuentes, ingesta de reglas)
    tracking/                Persistencia SQLite (registro de solicitudes, estadísticas, registro de nodos)
    plugins/                 Sistema de plugins (protocolo, cargador, integrados)
    ui/
        api/                 API REST + WebSocket (Starlette)
        web/                 Panel SPA (HTML/JS/CSS)
        tui/                 Interfaz de terminal (Textual) con pantalla de inicio de sesión
        command_post/        Panel de agregación multiinstancia
    listeners/               Listeners de protocolo (HTTP, DNS, MQTT, WebSocket)
    backends/                Generadores de configuración (Nginx, Caddy, Apache)
    models/                  Tipos compartidos y modelos de eventos

Comparación con RedWarden

Contribuciones

  • Mgeeky - Idea original (RedWarden)
  • curi0usJack - Reglas .htaccess
  • Perfiles
    • threatexpress - jquery-c2.3.14.profile
    • InfinityCurve - Perfil de Havoc
  • Frameworks C2
    • Cobalt Strike - Soporte de perfil C2 maleable
    • Mythic - Soporte de perfil HTTPX + almacenamiento de archivos
    • Brute Ratel C4 - Soporte de perfil de configuración de servidor
    • Sliver - Soporte de perfil HTTP C2
    • Havoc - Soporte de perfil TOML
    • Nighthawk - Soporte de configuración de listener JSON
    • PoshC2 - Soporte de configuración YAML

Si deseas contribuir al proyecto, crea una nueva rama con el nombre de la versión y especifica el mismo nombre de versión en el pull request. Ej: rama=v1.2.3 | [v1.2.3] Añadido elemento blah.

Licencia

Licencia BSD de 2 cláusulas. Consulta LICENSE para más detalles.

Copyright (c) 2026, Whispergate

Descargar herramienta
FlagDescripción
--listen-port PORTSobrescribe el puerto de escucha (por defecto: de la configuración)
--ssl-cert PATHSobrescribe la ruta del certificado SSL
--ssl-key PATHSobrescribe la ruta de la clave SSL
--redirect-url URLSobrescribe la URL de redirección para solicitudes bloqueadas
--default-action redirect|404Acción para solicitudes que no coinciden
--no-ip-filterOmite bloques de permitir/denegar IP
--no-header-checkOmite reglas de validación de cabeceras
--alias DOMAIN:ALIASAñade alias de nombre de servidor (repetible)
--header NAME:VALUEAñade cabecera de respuesta personalizada (repetible)
EndpointMétodoDescripción
/api/instancesGETLista todas las instancias con estado de salud
/api/statsGETEstadísticas fusionadas de todas las instancias
/api/requestsGETRegistro de solicitudes intercaladas de todas las instancias
/api/intel/whitelistPOSTIncluye una IP en la lista blanca en todas las instancias
/api/intel/blocklistPOSTBloquea una IP en todas las instancias
/api/intel/blocklistDELETEDesbloquea una IP en todas las instancias
/ws/eventsWSEventos en vivo multiplexados de todas las instancias
VolumenPropósito
./configArchivos de configuración (montados solo lectura)
./examplesPerfiles C2 (montados solo lectura)
./rulesListas de bloqueo ingeridas y archivos fuente de reglas (montados solo lectura)
./dataBase de datos SQLite (persistida)
certsCertificados TLS (compartidos entre proxy y certbot)
geoipBases de datos GeoLite2 (pobladas por el servicio geoip-update)
pwndrop-dataArchivos subidos a PwnDrop y base de datos
CaracterísticaRedWardenInfraGuard
ArquitecturaArchivo único ~99KBPaquete modular
Análisis de perfilesMáquina de estados con regexAnalizador estructurado con soporte completo de bloqueo/transformación
Soporte C2Solo Cobalt StrikeCobalt Strike, Mythic, Brute Ratel C4, Sliver, Havoc, Nighthawk, PoshC2
ProtocolosSolo HTTPHTTP, DNS, MQTT, WebSocket
Modelo de filtradoAprobado/rechazado binarioBasado en puntuación (umbral 0.0-1.0), cadena de 10 filtros
Identificación por huellas TLSNingunaBloqueo JA3 (Masscan, ZGrab2, Shodan, curl, Python requests, Nmap)
Detección de sandboxNingunaNavegador sin cabeza / Safe Links / sandbox UA y puntuación de cabeceras
Detección de enumeraciónNingunaEnumeración de rutas + seguimiento NXDOMAIN de DNS con bloqueo automático
Detección de quemaNingunaMonitoreo de registros CT, reputación de dominio (URLhaus/OpenPhish/GSB), detección de analistas entre dominios
Entrega de payloadsNingunaPwnDrop, almacén de archivos de Mythic, sistema de archivos, proxy HTTP con entrega condicional
Protección de payloadsNingunaTokens de un solo uso, limitación de tasa por ruta, guardias de entrega (clave de entorno)
Protección contra phishingNingunaValidación de tokens de campaña (lista estática o firmados con HMAC)
Interfaz de operadorNingunaPanel web + interfaz de terminal + puesto de mando multiinstancia
Generación de configuraciónNingunaNginx, Caddy, Apache con personalización completa
Ingesta de reglasNingunaAnalizador de .htaccess + robots.txt
Fuentes de inteligencia de amenazasNingunaAutoactualización desde 5 fuentes públicas
Sistema de pluginsInterfaz básica de 4 métodosDirigido por eventos con hooks on_event + configuración por plugin
Integración SIEMNingunaElasticsearch, Wazuh, Syslog (CEF/JSON)
Alertas por webhookNingunaDiscord, Slack, webhook genérico (las alertas de quema se enrutan a través de los mismos plugins)
Inteligencia de lista blancaNingunaAutoenriquecimiento de CIDR con ASN/org/país al inicio
AntirrepeticiónHash SQLiteSQLite persistente con caché L1 en memoria, sobrevive a reinicios
Acciones de caídaredirigir, reiniciar, proxyredirigir, reiniciar, proxy, tarpit
Gestión TLSSolo manualAutofirmado automático + integración con Let's Encrypt
Despliegue perimetralNingunaProxies perimetrales Cloudflare Worker + AWS Lambda con domain fronting
DespliegueManualDocker Compose con comprobaciones de salud
RegistroSalida personalizada con coloresJSON estructurado (structlog)
AsíncronoCallbacks de TornadoNativo async/await (ASGI + uvicorn)