Hacking y ciberseguridad reconocimiento OSINT con SpiderFoot
Hacking y ciberseguridad reconocimiento OSINT con SpiderFoot
SpiderFoot es una herramienta muy popular en Kali Linux para la recopilación de inteligencia de fuentes abiertas (OSINT). Aunque su uso más común es a través de su interfaz web (GUI), también puedes ejecutar escaneos directamente desde la línea de comandos (CLI).
Aquí te explico los comandos principales y cómo utilizarlos:
1. Iniciar la interfaz web
La forma más común y sencilla de usar SpiderFoot en Kali es iniciar su servidor web. Una vez que lo tienes en marcha, accedes a la interfaz gráfica desde tu navegador para configurar y lanzar los escaneos.
Comando básico:
Bashspiderfoot -l 127.0.0.1:5001
spiderfoot
: El nombre del comando.-l
: Le dice a SpiderFoot que inicie un servidor web para "escuchar" (listen) en una dirección IP y puerto.127.0.0.1
: Es la dirección IP de localhost, lo que significa que solo es accesible desde tu propia máquina.5001
: Es el puerto por defecto en el que se ejecutará el servidor.
Nota: Puedes cambiar la IP y el puerto según tus necesidades. Por ejemplo, si quieres acceder desde otra máquina en la misma red, podrías usar la IP de tu máquina en Kali (puedes verla con
ifconfig
oip addr
).Después de ejecutar el comando:
Una vez que el comando se ejecuta, verás un mensaje en la terminal que indica que el servidor se ha iniciado. Luego, simplemente abres tu navegador web y navegas a la dirección http://127.0.0.1:5001 para acceder a la interfaz web de SpiderFoot.
2. Usar SpiderFoot desde la línea de comandos (CLI)
Para un control más granular o para automatizar tareas, puedes ejecutar escaneos directamente desde la terminal sin necesidad de la interfaz web. El comando es sf.py
(o spiderfoot
en las versiones más recientes).
Sintaxis general:
spiderfoot -s <objetivo> [opciones]
-s
: Define el "seed" o el objetivo del escaneo. Puede ser un dominio, una dirección IP, un correo electrónico, etc.[opciones]
: Son los diferentes parámetros para personalizar tu escaneo.
Ejemplos de uso en la CLI:
Escaneo básico de un dominio y mostrar los resultados en la terminal:
Bashspiderfoot -s ejemplo.com
Este comando ejecutará un escaneo con la configuración por defecto y mostrará los resultados directamente en la terminal a medida que se van encontrando.
Escaneo más completo de un dominio, seleccionando el tipo de escaneo:
Bashspiderfoot -s ejemplo.com -u all
-u
: Selecciona los módulos automáticamente por "caso de uso" (use case).all
: Activa todos los módulos disponibles (puedes usar tambiénfootprint
,investigate
opassive
).
Escaneo de una dirección IP y exportar los resultados a un archivo CSV:
Bashspiderfoot -s 1.2.3.4 -o csv > resultados.csv
-o
: Especifica el formato de salida. Los formatos disponibles sontab
,csv
yjson
.>
: Redirige la salida estándar de la terminal al archivoresultados.csv
.
Ver la lista de módulos y tipos de datos (eventos):
Bashspiderfoot -M
Este comando lista todos los módulos de recolección de datos disponibles.
Bashspiderfoot -T
Este comando lista todos los tipos de datos (eventos) que SpiderFoot puede recopilar.
Escaneo con módulos específicos:
Bashspiderfoot -s ejemplo.com -m sfp_dnsresolve,sfp_whois
-m
: Permite seleccionar módulos específicos. En este ejemplo, solo se ejecutarán los módulos de resolución DNS y de búsqueda WHOIS.
Opciones y argumentos comunes
Para ver todas las opciones disponibles, simplemente usa la ayuda:
spiderfoot -h
o
sf.py -h
Algunas opciones clave que encontrarás son:
-s <TARGET>
: El objetivo del escaneo (dominio, IP, etc.).-m <mod1,mod2,...>
: Selecciona módulos específicos.-u {all,footprint,investigate,passive}
: Selecciona módulos por caso de uso.-t <type1,type2,...>
: Especifica los tipos de eventos a recolectar.-o {tab,csv,json}
: Formato de salida.-C <scanID>
: Conecta a un escaneo existente para ver su estado o reanudarlo.-v, -V
: Muestra la versión de SpiderFoot.
En resumen, aunque la interfaz web es la forma más popular, el uso de la línea de comandos de SpiderFoot en Kali Linux es extremadamente útil para la automatización, para escaneos rápidos y para usuarios avanzados que prefieren el control total desde la terminal.
SpiderFoot es una herramienta de código abierto para la recopilación de información de inteligencia de fuentes abiertas (OSINT) y para mapear la superficie de ataque de un objetivo. Funciona de manera automatizada, escaneando una amplia variedad de fuentes de datos públicos para encontrar información relevante.
Aquí tienes algunos ejemplos de cómo se puede usar SpiderFoot:
1. Escaneo de un dominio web:
Objetivo:
ejemplo.com
Qué puede encontrar:
Subdominios asociados (
blog.ejemplo.com
,shop.ejemplo.com
).Direcciones IP y rangos de red.
Información del registro WHOIS.
Servidores de nombres (DNS).
Direcciones de correo electrónico asociadas a la empresa.
Información sobre el hosting.
Posibles vulnerabilidades o configuraciones erróneas.
Archivos sensibles expuestos.
2. Escaneo de una dirección IP:
Objetivo:
1.2.3.4
Qué puede encontrar:
Geolocalización (país, ciudad).
Proveedor de servicios de Internet (ISP).
Otros dominios alojados en la misma IP.
Historial de la IP.
Si la IP está en listas negras de reputación (por ejemplo, si ha sido utilizada para actividades maliciosas).
Puertos abiertos y servicios asociados.
3. Escaneo de una dirección de correo electrónico:
Objetivo:
usuario@ejemplo.com
Qué puede encontrar:
Posibles nombres de usuario y nombres reales asociados.
Cuentas en redes sociales (Twitter, LinkedIn, etc.).
Si la dirección de correo electrónico ha sido comprometida en alguna filtración de datos pública (a través de APIs como HaveIBeenPwned).
Otros sitios web donde se ha utilizado esa dirección.
4. Escaneo de un nombre de persona o nombre de usuario:
Objetivo:
Juan Perez
ojsmith2000
Qué puede encontrar:
Perfiles en redes sociales.
Menciones en foros o blogs.
Relaciones con otras personas o entidades.
Posibles ubicaciones.
5. Escaneo de un número de teléfono:
Objetivo:
+34123456789
Qué puede encontrar:
Asociación con nombres o empresas.
Información disponible en directorios públicos.
Funcionalidades clave de SpiderFoot que lo hacen útil para estos ejemplos:
Módulos: SpiderFoot tiene una gran cantidad de módulos que se conectan a diferentes fuentes de datos (APIs, bases de datos públicas, motores de búsqueda). Esto le permite automatizar la búsqueda en lugares como Shodan, HaveIBeenPwned, AlienVault OTX, y muchos más.
Interfaz web: Proporciona una interfaz web intuitiva para configurar escaneos, ver los resultados, y visualizar las relaciones entre la información recopilada.
Diversidad de objetivos: Puede tomar como entrada diferentes tipos de "semillas" de información (dominios, IPs, correos electrónicos, etc.) y expandirse a partir de ahí.
Gráficos de datos: Permite crear gráficos para visualizar las relaciones entre los datos descubiertos, lo cual es muy útil para análisis de inteligencia.
En resumen, SpiderFoot es una herramienta poderosa que te permite automatizar el proceso de recolección de información sobre un objetivo, que de otra forma requeriría un esfuerzo manual significativo y el uso de múltiples herramientas. Es muy útil tanto para investigadores de seguridad, como para analistas de OSINT y profesionales de ciberseguridad que buscan mapear su propia superficie de ataque.