
Motor de reconocimiento avanzado que encuentra secretos reales, los valida en vivo y construye rutas de explotación a partir de inteligencia del lado del cliente.
Reconnaissance Intelligence Engine | Leak Scanner | Threat Intelligence Suite
🔍 Deep Exposure Intelligence • ⚡ High-Signal Recon Engine
Reconix está diseñado EXCLUSIVAMENTE para pruebas de seguridad autorizadas, programas de bug bounty e investigación defensiva.
Escanear sin autorización es ilegal y penado bajo las leyes de fraude informático.
Lee el descargo de responsabilidad completo en DISCLAIMER.md.
A diferencia de los escáneres básicos que solo hacen coincidencias con regex y vuelcan hallazgos, Reconix:
Valida secretos en vivo — Llama a APIs reales (GitHub, Stripe, OpenAI, Supabase, SendGrid, Anthropic, HuggingFace, Linear) para confirmar si las claves son VÁLIDAS, INVÁLIDAS, CADUCADAS o DE LARGA DURACIÓN — ya no hay que adivinar si una clave realmente funciona
Construye cadenas de explotación — Conecta automáticamente hallazgos relacionados en rutas de ataque accionables como "JWT + Supabase + endpoints de API → Acceso no autorizado a datos" o "Secreto validado + Panel de administración → Escalada de privilegios"
Filtra falsos positivos con análisis de 10 capas — Ignora elementos internos de React, clases CSS, URLs de documentación, marcadores de posición y código minificado que otras herramientas reportan falsamente como secretos
Reconstruye source maps — Recupera el código fuente original de archivos .map y source maps en línea, luego escanea el código reconstruido en busca de secretos ocultos en paquetes minificados
Navegador auto-reparable — Detecta y reinicia automáticamente instancias de Puppeteer bloqueadas durante el escaneo sin perder progreso
Extrae inteligencia de cliente — Agrega todo el JavaScript para encontrar endpoints de API (usuario/admin/interno), variables de entorno (NEXT_PUBLIC_*, REACT_APP_*), servicios de terceros (Supabase, Stripe, Firebase, Clerk) y flags de funcionalidad
Rastreo prioritario — Puntúa inteligentemente las URLs (archivos JS, APIs, source maps primero) para encontrar objetivos de alto valor antes de perder tiempo en activos estáticos
Introspección de JWT en vivo — Decodifica JWTs para revelar emisor, rol y caducidad — marca tokens DE LARGA DURACIÓN (1+ año) y SIN CADUCIDAD como preocupaciones de seguridad
Detección de service_role de Supabase — Identifica cuando un JWT tiene privilegios de service_role, lo que omite toda la Seguridad a Nivel de Fila (RLS) — ruta crítica de compromiso de base de datos
Pruebas de Firebase Realtime DB — Detecta credenciales de Firebase y prueba si el endpoint /.json permite volcados de base de datos no autenticados
Detección de introspección GraphQL — Sondea automáticamente los endpoints /graphql para verificar si la introspección del esquema está habilitada (filtración de información)
Escaneo de configuraciones erróneas de CORS — Comprueba los endpoints de API en busca de cabeceras Access-Control-Allow-Origin comodín (*) o reflectivas
Enumeración de usuarios en WordPress — Detecta cuando /wp-json/wp/v2/users expone IDs y nombres de usuarios
Filtración de variables de entorno en Next.js — Escanea /_next/static/chunks/ en busca de referencias a process.env incrustadas en paquetes del cliente
Excavación en archivos históricos — Obtiene URLs históricas de Wayback Machine y escanea contenido archivado en busca de secretos que fueron eliminados del sitio en vivo
Failover de proxy — Cambia automáticamente a conexión directa después de 3 fallos consecutivos del proxy, para que los escaneos no mueran
Escaneos reanudables — Guarda el estado cada 10 recursos y puede reanudar desde .reconix-state.json si se interrumpe
Informes en múltiples formatos — Genera informes HTML atractivos, exportaciones JSON estructuradas y discovered_api_keys.txt en texto plano para referencia rápida
Más de 680 huellas digitales de tecnologías — Detecta frameworks, proveedores de hosting, CDNs, analíticas, pasarelas de pago, sistemas de autenticación y bibliotecas de interfaz de usuario a partir de cabeceras, HTML, JS, cookies, certificados TLS y DNS
Más de 200 patrones de detección de secretos del mundo real — Cubre claves API, tokens, claves privadas, secretos OAuth, credenciales de bases de datos, tokens de CI/CD y URLs de webhook en las principales plataformas con coincidencias de alta confianza
Captura de red del navegador — Cuando --js está activado, captura todas las solicitudes de red salientes para identificar servicios y APIs adicionales
Conciencia de límite de velocidad — Detecta respuestas 429 y cabeceras Retry-After, se ajusta en consecuencia sin fallar
# Instalación global
npm install -g @aquibk/reconix
# O ejecutar directamente
npx reconix target.com
# Verificar que todo funciona
reconix --self-test
--js)# Escaneo básico (huella baja)
reconix example.com
# Potencia total (máximos hallazgos)
reconix example.com --js --aggressive --deep --only-critical
# Modo bug bounty (equilibrado)
reconix target.com --js --deep --historical --delay=500 --output=report.json
# Modo sigiloso (evitar detección)
reconix target.com --delay=2000 --jitter=1000 --threads=5 --proxy=socks5://127.0.0.1:9050
reconix <url> [opciones]
reconix scan <url> [opciones]
| Flag | Descripción | Por Defecto |
|---|---|---|
--output=<file> | Guardar informe JSON completo | Ninguno |
--html=<file> | Generar informe HTML | Ninguno |
reconix example.com --output=scan.json --html=report.html
| Flag | Descripción | Por Defecto |
|---|---|---|
--no-subdomains | Deshabilitar descubrimiento de subdominios |
reconix example.com --historical --deep
# Rápido pero arriesgado
reconix example.com --threads=50 --delay=100 --jitter=50
# Rastreo educado
reconix example.com --threads=10 --delay=2000 --jitter=1000
--no-js → Deshabilitar navegador sin cabeza (Puppeteer)--aggressive → Escaneo profundo de todo el alcance--proxy=<host:port> → Soporte de proxy--auth=<user:pass> → Autenticación (Básica o Bearer)--cookie=<string> → Cookies personalizadas--user-agent=<string> → User-Agent personalizado# Escaneo autenticado
reconix api.example.com --auth="Bearer:sk_live_xxx" --js
# Uso de proxy
reconix example.com --proxy="http://user:pass@proxy:8080" --delay=1000
reconix example.com --only-critical --no-low
reconix target.com --deep --historical --threads=25 --delay=500 --output=bounty.json --html=report.html
reconix target.com --aggressive --deep --historical --threads=50 --delay=150 --jitter=50 --only-critical --output=full.json --html=full.html
reconix target.com --threads=5 --delay=2000 --jitter=1500 --no-subdomains --proxy=socks5://127.0.0.1:9050
reconix target.com --threads=30 --delay=200 --no-js --no-subdomains --only-critical
reconix --self-test
# Fase 1: Reconocimiento rápido
reconix target.com --only-critical
# Fase 2: Análisis profundo
reconix target.com --deep --delay=1000
# Fase 3: Escaneo agresivo
reconix target.com --aggressive --deep --only-critical
| Problema | Solución |
|---|---|
| Tiempo de espera del navegador |
| Archivo | Descripción |
|---|---|
discovered_api_keys.txt | Todos los secretos encontrados |
*.json | Informe completo del escaneo |
Las incidencias y las solicitudes de extracción son bienvenidas.
reconix --self-test
Ver LICENSE.txt
⚠️ ÚSALO RESPONSABLEMENTE. SOLO EN OBJETIVOS AUTORIZADOS. ⚠️
| - |
--historical | Obtener URLs archivadas | false |
--deep | Aumentar profundidad de rastreo | false |
| Flag | Descripción | Por Defecto |
|---|
--threads=<n> | Solicitudes concurrentes (1–100) | 20 |
--delay=<ms> | Retraso base entre solicitudes | 500 |
--jitter=<ms> | Variación aleatoria de retraso | 300 |
--max-bytes=<bytes> | Tamaño máximo de descarga por archivo | 4000000 |
--resume | Reanudar escaneo anterior | false |
| Flag | Descripción | Por Defecto |
|---|
--only-critical | Mostrar solo hallazgos críticos | false |
--no-low | Ocultar hallazgos de baja confianza | false |
--include-medium | Incluir hallazgos medios | true |
--no-medium | Excluir hallazgos medios | - |
| Tipo de Objetivo | Hilos | Retraso | Jitter | JS |
|---|
| Producción | 5–10 | 2000–3000 | 1000 | ❌ |
| Staging | 15–20 | 800–1200 | 500 | ✅ |
| Bug Bounty | 20–30 | 400–600 | 200 | ✅ |
| CTF / Laboratorio | 50–100 | 0–100 | 0 | ✅ |
| Reinstalar Puppeteer |
| Demasiados archivos abiertos | Reducir hilos |
| Proxy falló | Verificar URL del proxy |
| Límite de velocidad (429) | Aumentar retraso y jitter |
| Sin hallazgos | Usar --js --deep --historical |
*.html |
| Informe visual |
.reconix-state.json | Estado para reanudar |