Saltar al contenido

Shodan e IPInfo

Shodan

Shodan es un motor de busqueda de dispositivos conectados a internet. Para cada IP devuelve informacion sobre los servicios que tiene expuestos.

Que devuelve

from src.tools.shodan_tool import shodan_host_lookup
result = await shodan_host_lookup("185.220.101.34")
CampoDescripcion
portsLista de puertos abiertos
hostnamesHostnames asociados
domainsDominios
country_namePais
cityCiudad
orgOrganizacion
ispISP
asnASN
vulnsCVEs detectados en servicios expuestos
dataBanners de servicios con informacion detallada

Informacion de servicios

Para cada puerto abierto, Shodan devuelve el banner del servicio:

{
"port": 22,
"transport": "tcp",
"product": "OpenSSH",
"version": "8.9p1",
"data": "SSH-2.0-OpenSSH_8.9p1 Ubuntu-3ubuntu0.6"
}

Esto permite identificar:

  • Versiones de software (y por tanto vulnerabilidades conocidas)
  • Tecnologias en uso
  • Configuraciones inusuales

CVEs detectados

Si Shodan detecta versiones vulnerables, lista los CVEs:

vulns: ["CVE-2023-38408", "CVE-2023-51384"]

Free tier

Shodan tiene un free tier muy limitado: 100 queries/mes. El cache de 24h ayuda, pero usa esta herramienta de forma selectiva.

Casos de uso en OSINT

  • Identificar nodos Tor / VPN (puerto 9001, 9030)
  • Detectar servidores C2 (puertos no estandar con banners sospechosos)
  • Verificar la infraestructura de un dominio
  • Encontrar dispositivos IoT expuestos

IPInfo

IPInfo proporciona geolocalizacion precisa y contexto de red para IPs.

Que devuelve

from src.tools.ipinfo import ipinfo_lookup
result = await ipinfo_lookup("185.220.101.34")
CampoDescripcion
ipIP consultada
hostnameHostname inverso (PTR)
cityCiudad
regionRegion/estado
countryCodigo de pais (ISO)
locCoordenadas GPS
orgOrganizacion (ASN + nombre)
postalCodigo postal
timezoneZona horaria

Ventaja sobre otros servicios

IPInfo tiene uno de los mejores free tiers: 50.000 requests/mes. Para la mayoria de casos de uso, es efectivamente ilimitado.

La geolocalizacion de IPInfo es especialmente precisa para:

  • Identificar proxies y VPNs (org suele mostrar el nombre del proveedor)
  • Detectar hosting compartido vs dedicado
  • Correlacionar con patrones geograficos de una campana

Ejemplo de salida

[IPInfo] 185.220.101.34
├─ Hostname: tor-exit-nl-01.example.net
├─ Ciudad: Amsterdam
├─ Region: North Holland
├─ Pais: NL (Paises Bajos)
├─ Coordenadas: 52.3667, 4.9000
├─ Organizacion: AS53667 Frantech Solutions
└─ Timezone: Europe/Amsterdam