Ruta de Aprendizaje
Logros
¿Qué es OSINT?
OSINT (Open Source Intelligence) es la recopilación y análisis de información procedente de fuentes públicamente disponibles para producir inteligencia accionable. El término "open source" no se refiere al software, sino a que las fuentes son accesibles públicamente.
Historia del OSINT
El Ciclo de Inteligencia
Tipos de Inteligencia OSINT
| Tipo | Nombre | Fuente | Ejemplo |
|---|---|---|---|
| SOCMINT | Social Media Intelligence | Redes Sociales | Tweets, posts de Facebook, LinkedIn |
| GEOINT | Geospatial Intelligence | Mapas y Satélite | Google Earth, imágenes Sentinel |
| FININT | Financial Intelligence | Registros Financieros | OpenCorporates, registros mercantiles |
| TECHINT | Technical Intelligence | Infraestructura técnica | Shodan, Censys, DNSDumpster |
| HUMINT | Human Intelligence | Personas | Entrevistas, redes de contactos |
| IMINT | Imagery Intelligence | Imágenes | Fotos geolocalizadas, Street View |
Metodología de Investigación OSINT
La metodología PICED (Plan, Identify, Collect, Evaluate, Disseminate) es ampliamente usada:
- Plan: Define el objetivo, alcance y limitaciones éticas antes de comenzar
- Identify: Identifica qué tipo de información necesitas y dónde podría estar
- Collect: Recoge información de múltiples fuentes independientes
- Evaluate: Verifica, corrobora y evalúa la fiabilidad de cada dato
- Disseminate: Presenta hallazgos de forma estructurada y verificable
OPSEC en OSINT: Protege tu Investigación
- Usa una VM dedicada sin conexión con tu identidad real
- Navega con VPN o Tor para búsquedas sensibles
- Crea cuentas sock puppet para investigaciones en RRSS
- Usa el modo incógnito como mínimo para evitar cachés locales
- Revisa los metadatos de cualquier archivo que descargues
- Documenta en un entorno air-gapped si es necesario
WHOIS — Información de Dominio
WHOIS es el protocolo estándar para consultar quién registró un dominio. Contiene información del registrante, fechas de registro, servidores DNS y datos de contacto.
whois google.com whois 8.8.8.8 # Herramientas online: # https://whois.domaintools.com/ # https://who.is/ # https://www.whoxy.com/
DNS — Sistema de Nombres de Dominio
El DNS mapea nombres de dominio a IPs. Los registros DNS revelan la infraestructura técnica de un objetivo.
| Registro | Descripción | Uso OSINT |
|---|---|---|
| A | IP v4 del dominio | Encontrar el servidor real detrás de un dominio |
| AAAA | IP v6 del dominio | Infraestructura IPv6 |
| MX | Servidores de correo | Identificar proveedor de email (GSuite, M365...) |
| TXT | Registros de texto | SPF, DKIM, verificaciones de dominio |
| NS | Servidores de nombres | Identificar registrar y hosting |
| CNAME | Alias de dominio | Revelar servicios de terceros (CDN, SaaS) |
| PTR | DNS inverso | IP → nombre de dominio |
| SOA | Autoridad de zona | Correo del administrador del dominio |
# Consultas DNS básicas nslookup example.com dig example.com A dig example.com MX dig example.com TXT dig +short example.com # Transferencia de zona (si está mal configurada) dig axfr @ns1.example.com example.com # DNS inverso dig -x 8.8.8.8
Subdominios — Enumeración
Los subdominios revelan servicios internos, entornos de desarrollo, paneles de administración y más.
# Usando crt.sh por API curl "https://crt.sh/?q=%.example.com&output=json" | jq '.[].name_value' # Subfinder subfinder -d example.com -all -silent # Amass enum pasivo amass enum -passive -d example.com # DNSrecon dnsrecon -d example.com -t std
Wayback Machine — Historial Web
El Internet Archive guarda copias históricas de casi todos los sitios web. Es invaluable para ver contenido eliminado.
# API de Wayback Machine para listar URLs capturadas curl "https://web.archive.org/cdx/search/cdx?url=example.com&output=text&fl=original&collapse=urlkey" # Ver captura específica: # https://web.archive.org/web/20230101*/example.com # Herramienta waybackurls echo "example.com" | waybackurls
Herramientas de Reconocimiento Web
DNSDumpster crt.sh Wayback Machine DomainTools SecurityTrails URLScan.io BuiltWith Netcraft
Búsqueda de Personas — Fuentes Públicas
Antes de recurrir a técnicas especializadas, hay enormes cantidades de información en fuentes públicas convencionales.
- Registros electorales: Muchos países publican listas censales o electorales con dirección y datos básicos
- Registros mercantiles: Directores y propietarios de empresas son públicos en la mayoría de jurisdicciones
- Registros de la propiedad: Propiedades y titulares en catastro público
- LinkedIn: Historial laboral detallado, red de contactos, educación
- Google Scholar / ResearchGate: Publicaciones académicas y afiliaciones institucionales
- Prensa y hemerotecas: Menciones en artículos, entrevistas, comunicados
Username OSINT — Sherlock & Alternatives
Un username (nombre de usuario) único puede conectar decenas de cuentas de la misma persona.
# Instalar Sherlock pip3 install sherlock-project # Buscar un username en +300 plataformas sherlock johndoe # Con salida a fichero sherlock johndoe --output results.txt # Herramientas alternativas: # WhatsMyName: https://whatsmyname.app/ # Maigret: https://github.com/soxoj/maigret # Namecheckr: https://www.namecheckr.com/
Análisis de Redes Sociales
Construcción de Grafos de Relaciones
Una vez recopilados los datos, se visualizan como un grafo donde los nodos son entidades (personas, empresas, cuentas) y las aristas son relaciones.
# Entidades típicas en un grafo OSINT: Persona → email → dominio → IP → empresa Persona → username → plataforma_X → username Persona → foto → localización → fecha empresa → directores[] → empresa_X # Herramientas de visualización: # Maltego (https://www.maltego.com/) # SpiderFoot (https://www.spiderfoot.net/) # Gephi (https://gephi.org/) # OSINT Framework (https://osintframework.com/)
Herramientas de People OSINT
WhatsMyName Spokeo Pipl TruePeopleSearch IntelX ThatsThem BeenVerified
Geolocalización de IPs
Una dirección IP puede revelar el proveedor de servicios (ISP), el país, la ciudad aproximada y el tipo de conexión. Esta información no es perfecta pero es útil como punto de partida.
# Geolocalización via API curl https://ipinfo.io/8.8.8.8/json curl https://ipapi.co/8.8.8.8/json/ curl "https://ip-api.com/json/8.8.8.8" # DNS inverso host 8.8.8.8 nslookup 8.8.8.8 # Información ASN whois -h whois.radb.net 8.8.8.8 curl https://api.bgpview.io/ip/8.8.8.8
Shodan — El Buscador de Internet de las Cosas
Shodan indexa dispositivos conectados a Internet: routers, cámaras, servidores industriales, bases de datos, y cualquier cosa con una IP pública. Es la herramienta OSINT de infraestructura más poderosa disponible.
# Búsquedas básicas Shodan hostname:example.com net:192.168.1.0/24 org:"Google LLC" # Servicios específicos port:3389 country:ES # RDP en España product:"Apache httpd" # Servidores Apache http.title:"Admin panel" # Paneles de admin "default password" # Dispositivos con pass defecto # CLI de Shodan pip install shodan shodan init YOUR_API_KEY shodan search "apache"
Análisis de Reputación de IP
Antes de interactuar con una IP o dominio, verifica si está marcado como malicioso en bases de datos de amenazas.
VirusTotal AbuseIPDB Talos Intelligence OTX AlienVault GreyNoise TIP
Búsqueda Inversa de Imágenes
La búsqueda inversa de imágenes permite encontrar en qué otros sitios aparece una imagen, identificar personas y descubrir la fuente original.
Metadatos EXIF — Tesoro Oculto en Fotos
Los metadatos EXIF son datos técnicos incrustados en archivos de imagen. Pueden incluir coordenadas GPS exactas, modelo de cámara, fecha/hora y más.
# Instalar exiftool sudo apt install libimage-exiftool-perl # Ver todos los metadatos de una imagen exiftool foto.jpg # Ver solo coordenadas GPS exiftool -GPSLatitude -GPSLongitude foto.jpg # Eliminar TODOS los metadatos exiftool -all= foto.jpg # Herramientas web: # https://www.metadata2go.com/ # https://exifdata.com/ # https://jimpl.com/
Geolocalización Visual — Técnicas
La geolocalización visual consiste en determinar el lugar donde se tomó una foto analizando el contenido visual, sin metadatos.
Práctica: GeoGuessr OSINT
Estructura de la Web
| Capa | Descripción | Tamaño estimado | Acceso |
|---|---|---|---|
| Surface Web | Web indexada por buscadores | ~5% del total | Navegador normal |
| Deep Web | No indexada (bases de datos, intranets, email) | ~90% del total | Login requerido |
| Dark Web | Redes overlay anónimas (.onion, I2P) | ~5% del total | Tor Browser / I2P |
Tor Network y Acceso Seguro
Motores de Búsqueda .onion
Monitorización de Fugas de Datos
Una parte fundamental del OSINT en dark web es monitorizar si datos de tu organización o clientes han sido filtrados.
HaveIBeenPwned IntelligenceX DeHashed LeakIX BreachSense HaveIBeenZucked
# Comprobar email con HaveIBeenPwned API v3 curl -H "hibp-api-key: TU_API_KEY" "https://haveibeenpwned.com/api/v3/breachedaccount/[email protected]" # Comprobar si una contraseña está comprometida (k-anonymity) echo -n "password123" | sha1sum # Toma los primeros 5 caracteres del hash SHA1 curl "https://api.pwnedpasswords.com/range/PRIMEROS5"
Operadores Básicos de Google
| Operador | Función | Ejemplo |
|---|---|---|
| site: | Limitar búsqueda a un dominio | site:example.com login |
| filetype: | Buscar por tipo de archivo | filetype:pdf "confidencial" |
| intitle: | Texto en el título de la página | intitle:"index of" |
| inurl: | Texto en la URL | inurl:admin/login |
| intext: | Texto en el contenido | intext:"password" |
| cache: | Versión cacheada por Google | cache:example.com |
| link: | Páginas que enlazan a una URL | link:example.com |
| related: | Sitios similares | related:cnn.com |
| "texto" | Búsqueda exacta | "admin:admin" |
| -palabra | Excluir término | site:gov -www |
| * | Comodín | "my * password" |
| OR | Una cosa u otra | filetype:xls OR filetype:csv |
Dorks de Seguridad — Ejemplos Avanzados
# Directorios abiertos intitle:"index of" inurl:ftp # Paneles de login expuestos inurl:"/wp-admin" site:example.com intitle:"admin panel" inurl:"login.php" # Documentos sensibles site:gov filetype:pdf "confidential" site:example.com filetype:xls "password" filetype:env "DB_PASSWORD" # Cámaras web expuestas intitle:"webcam 7" inurl:":8080" inurl:"/view/index.shtml" # Bases de datos expuestas inurl:":8080/phpmyadmin" intitle:"phpMyAdmin" intext:"mysql" # Archivos de configuración filetype:conf inurl:"nginx.conf" filetype:ini inurl:"wp-config" # Credenciales expuestas en GitHub site:github.com "api_key" "secret" site:pastebin.com "password" "username"
Google Hacking Database (GHDB)
La Google Hacking Database de Exploit-DB contiene miles de dorks categorizados. Es el repositorio de referencia para esta disciplina.
GHDB — Exploit-DB Google Hacking Tool
Luego ve al para practicar.
Verificación y Enumeración de Emails
Verificar si un email existe antes de incluirlo en un informe OSINT evita conclusiones erróneas basadas en datos inventados o incorrectos.
Hunter.io EmailRep.io Verify-email.org VoilaNorbert Snov.io
# 1. Encontrar el servidor MX del dominio dig MX gmail.com +short # 2. Conectar al servidor SMTP telnet alt4.gmail-smtp-in.l.google.com 25 # 3. Handshake SMTP EHLO test.local MAIL FROM: <[email protected]> RCPT TO: <[email protected]> # Si responde 250 OK -> email existe # Si responde 550 -> email no existe (o dominio rechaza verify)
Hunter.io — Encontrar Emails Corporativos
# Buscar todos los emails de un dominio curl "https://api.hunter.io/v2/domain-search?domain=stripe.com&api_key=TU_KEY" # Adivinar el formato de email de una empresa curl "https://api.hunter.io/v2/email-finder?domain=stripe.com&first_name=John&last_name=Doe&api_key=TU_KEY" # Verificar si un email existe curl "https://api.hunter.io/v2/[email protected]&api_key=TU_KEY"
Análisis de Headers de Email
Los headers de un email revelan la ruta que siguió el mensaje, el servidor de origen y pueden exponer la IP real del remitente.
# Campos importantes en cabeceras de email: Received: from [192.168.1.1] (helo=mail.example.com) # IP del remitente X-Originating-IP: 203.0.113.42 # IP original (algunos clientes) Message-ID: <[email protected]> # ID único del mensaje X-Mailer: Outlook 16.0 # Cliente de correo DKIM-Signature: v=1; a=rsa-sha256; d=example.com # Autenticidad del dominio # Herramientas de análisis: # https://mxtoolbox.com/EmailHeaders.aspx # https://toolbox.googleapps.com/apps/messageheader/
Emails en Fugas de Datos
Si un email aparece en una fuga de datos, es posible encontrar la contraseña hasheada (o incluso en claro si la fuga era vieja) y otros datos asociados.
help para ver los comandos disponibles.Escenarios Guiados
Plantillas de Dorks por Categoría
El OSINT Legal en España y Europa
- RGPD (Reglamento General de Protección de Datos): Limita el tratamiento de datos personales incluso cuando son públicos. Investigar a una persona y crear un perfil detallado puede ser ilegal sin base legal.
- Artículo 18 CE: Derecho a la intimidad personal y familiar protegido en la Constitución Española.
- LOPD-GDD: Ley Orgánica de Protección de Datos española. Las "fuentes de acceso público" tienen tratamiento específico.
- Código Penal Español: Arts. 197-201 regulan los delitos contra la intimidad. El descubrimiento y revelación de secretos es delito.
- Computer Fraud and Abuse Act (EEUU): Relevante en investigaciones internacionales. Acceder a sistemas sin autorización, aunque encuentres la entrada con un dork, es delito.
Principios Éticos OSINT
Líneas Rojas — Lo que NUNCA debes hacer
- ❌ Acceder a sistemas aunque los hayas encontrado con un dork (sin autorización)
- ❌ Crear perfiles detallados de personas privadas sin base legal
- ❌ Usar OSINT para acosar, stalkear o intimidar
- ❌ Acceder a contenido de la dark web que sea ilegal (CSAM, etc.)
- ❌ Vender o difundir información personal recopilada ilegalmente
- ❌ Realizar OSINT activo (interacción) haciéndote pasar por otro
Código de Ética OSINT
1. ¿Tengo autorización o base legal legítima para esta investigación?
2. ¿El fin justifica las técnicas que voy a usar?
3. ¿Estoy recopilando más datos de los estrictamente necesarios?
4. ¿Podría mi investigación dañar a terceros inocentes?
5. ¿Estoy documentando correctamente mis fuentes y métodos?
Si no puedes responder "sí" a los primeros dos y "no" a las tres últimas, replantea tu investigación.