Exposor es una herramienta que utiliza motores de búsqueda de internet para detectar tecnologías expuestas con una sintaxis unificada.
Exposor es una herramienta de reconocimiento sin contacto enfocada en la detección de tecnología a través de Censys, Fofa, Shodan y Zoomeye. Con una sintaxis unificada para consultas multiplataforma, proporciona a los investigadores y profesionales de seguridad una visión clara de los sistemas expuestos, permitiendo una rápida identificación de riesgos.

Cómo funciona
- Configura tus claves API para las fuentes compatibles.
- Usa la sintaxis de consulta de Exposor para encontrar tecnologías.
- Obtén y analiza los resultados en múltiples motores de búsqueda en un solo flujo de trabajo.
- Contribuye con archivos YAML personalizados para ampliar las capacidades de detección.
Características principales
- Configura fácilmente las credenciales de la API y mantén actualizados los archivos de inteligencia.
- Realiza búsquedas específicas por bloque de red, código de país o nombre de host.
- Ejecuta consultas en múltiples fuentes con una sintaxis unificada.
- Amplía las capacidades de inteligencia contribuyendo con nuevos archivos YAML.
- Identifica sistemas expuestos y posibles vulnerabilidades usando CPE o CVE.
Estas características hacen de Exposor una herramienta poderosa para los profesionales de ciberseguridad que realizan reconocimiento activo no intrusivo.
Instalación
Tienes dos opciones para instalar Exposor:
Instalar vía pip
(Para la última versión estable)
pip install exposor
Clonar el repositorio
git clone https://github.com/abuyv/exposor.git
cd exposor
pip install -r requirements.txt
Nota: Para las últimas versiones estables, visita la página de Lanzamientos.
Configuración
Para usar Exposor, debes configurar las claves API para las fuentes que deseas buscar. Se requiere al menos una clave API para habilitar la búsqueda en una fuente.
Agregar claves API
Puedes agregar tus claves API de dos maneras:
- Usando la opción –init
Ejecuta la opción exposor --init
para crear un archivo de configuración:
exposor --init shodan:api_key zoomeye:api_key censys:api_id:api_secret fofa:email:api_key
- Usando variables de entorno
Establece las claves API como variables de entorno usando los siguientes comandos:
Unix:
export CENSYS_API_ID="tu_censys_api_id"
export CENSYS_API_KEY="tu_censys_api_secret"
export FOFA_EMAIL="tu_fofa_email"
export FOFA_API_KEY="tu_fofa_api_key"
export SHODAN_API_KEY="tu_shodan_api_key"
export ZOOMEYE_API_KEY="tu_zoomeye_api_key"
Windows:
$env:CENSYS_API_ID="tu_censys_api_id"
$env:CENSYS_API_KEY="tu_censys_api_secret"
$env:FOFA_EMAIL="tu_fofa_email"
$env:FOFA_API_KEY="tu_fofa_api_key"
$env:SHODAN_API_KEY="tu_shodan_api_key"
$env:ZOOMEYE_API_KEY="tu_zoomeye_api_key"
Exposor tomará estas claves automáticamente.
Importante: Se debe configurar al menos una clave API para realizar búsquedas en cualquier fuente. Si necesitas actualizar tus claves, puedes volver a exportarlas o volver a ejecutar el comando --init
.
Uso
Ejecuta Exposor para detectar tecnologías específicas usando archivos YAML predefinidos:
__
/__\__ __ _ __ ___ ___ ___ _ __
/_\ \ \/ /| '_ \ / _ \ / __| / _ \ | '__|
//__ > < | |_) || (_) |\__ \| (_) || |
\__/ /_/\_\| .__/ \___/ |___/ \___/ |_|
|_|
version: 1.0.0
Uso: exposor.py -q cpe:2.3:a:vendor:product --feed all -o result.csv
Explora múltiples fuentes para un CPE o CVE dado. Las fuentes compatibles incluyen Censys, Fofa, Shodan y Zoomeye.
Opciones generales:
-h, --help
: Muestra este mensaje de ayuda y sale.--init
: Inicializa las claves API para las fuentes compatibles en el formatofuente:credenciales
.--update
: Actualiza los archivos de inteligencia (carpeta intels) para incluir las últimas consultas.
Opciones de consulta:
-q, --query
: Especifica la consulta de búsqueda (ej.cpe:2.3:a:vendor:product
para tecnologías oCVE-2024-XXXX
para vulnerabilidades).-qL, --query-limit
: Limita el número de consultas enviadas a la fuente especificada para un CPE dado. El valor predeterminado es “sí”, lo que significa que la consulta ya está limitada a enviar solo una consulta por fuente. Si deseas enviar todas las consultas posibles en cada fuente, desactiva esta opción usando-qL no
.-f, --feed
: Elige una o más fuentes de datos para consultar. Usa ‘all’ para consultar todas las fuentes compatibles.-c, --country
: Busca tecnologías por país específico usando códigos de país (ej.US
para EE. UU.).-n, --netblock
: Proporciona un bloque de red o una dirección IP específica para buscar (ej.192.168.0.1/24
o192.168.0.1
).-d --domain-name
: Especifica el dominio objetivo para buscar (ej.ejemplo.com
).--limit
: Establece el número máximo de resultados a obtener para cada consulta en cada fuente. Por ejemplo, si el límite es 10 y hay 3 consultas para una fuente, se obtendrán un total de 30 resultados (10 resultados × 3 consultas). (El valor predeterminado es ’50’).
Opciones de resultado:
-v, --verbose
: Habilita la salida detallada para obtener registros detallados, aumenta la verbosidad de la salida (-v, -vv).-o, --output
: Especifica el nombre del archivo de salida (ej.resultados.csv
).
Descargo de responsabilidad
Usa Exposor responsablemente y sigue todas las regulaciones. Eres totalmente responsable de tus acciones. Si usas mal esta herramienta o infringes la ley, es totalmente tu responsabilidad.