Guía práctica para usar Maltego en investigaciones OSINT

Guía práctica para usar Maltego en investigaciones OSINT

Maltego es una herramienta potente para recopilar y analizar datos abiertos de diversas fuentes, como Internet, redes sociales, bases de datos, etc. Con Maltego puede crear grafos que muestran las relaciones entre distintas entidades, como dominios, direcciones de correo electrónico, teléfonos, organizaciones, etc. También puede usar transformaciones que toman una entidad como entrada y generan nuevas entidades como salida. De este modo puede ampliar sus investigaciones y obtener nueva información de diferentes fuentes.


En esta entrada explicaré cómo comenzar a trabajar con Maltego y cómo realizar una investigación OSINT sencilla. Para ello necesitará:

  • Registrarse en el sitio de Maltego y descargar la aplicación cliente.
  • Elegir la versión adecuada de Maltego: Community Edition (gratuita), Classic (de pago) o XL (de pago). En esta entrada usaré Community Edition.
  • Activar su cuenta de Maltego e iniciar sesión en la aplicación.
  • Conectarse al servidor de Maltego y seleccionar los conjuntos de transformaciones necesarios (Transform Hub).

Una vez realizados estos pasos, podrá crear sus primeros grafos en Maltego. Veamos un ejemplo de investigación OSINT en el que buscaremos información sobre el dominio gnu.org.

Paso 1: Crear un grafo nuevo en Maltego

Para ello haga clic en el botón Maltego en la esquina superior izquierda y seleccione New en el menú principal. Esto creará un grafo nuevo para nuestra investigación.

Paso 2: Añadir la entidad Domain al grafo

Para ello busque la entidad Domain en la paleta de entidades (Entity Palette), que está a la izquierda de la ventana, y arrástrela al grafo. Por defecto las entidades tienen un valor estándar. En nuestro caso la entidad Domain tiene el valor paterva.com. Esto se puede cambiar haciendo doble clic sobre el valor de la entidad (o pulsando la tecla F2 con la entidad Domain seleccionada) y cambiando el valor a: gnu.org.

Paso 3: Ejecutar transformaciones sobre la entidad Domain

¿Qué son las transformaciones?

Las transformaciones son funciones que toman una entidad como entrada y crean nuevas entidades como salida. Las entidades de salida luego se vinculan a la entidad de entrada. De este modo crece el grafo en Maltego. Se puede comparar con cómo se realizan las investigaciones: se comienza con un fragmento de información y se extraen nuevos fragmentos de información a partir de él.

Cada transformación acepta determinados tipos de entidades como entrada. Puede ver la lista de transformaciones que pueden aceptar una entidad haciendo clic con el botón derecho en cualquier lugar del grafo cuando la entidad esté seleccionada. Puede elegir qué transformación ejecutar desde el menú contextual. Si sabe qué transformación quiere ejecutar, puede buscarla mediante el campo de búsqueda en el menú Run Transform. Fíjese en el + en los elementos del menú: indica un conjunto de transformaciones (Transform Set), donde se agrupan transformaciones relacionadas. Al hacer clic en un conjunto de transformaciones verá las transformaciones que contiene. Para volver atrás, seleccione la flecha de retroceso, como se muestra abajo, o simplemente haga clic con el botón derecho en cualquier parte del menú de transformaciones.

Ejecutamos la transformación To Email Address [From whois info] para buscar direcciones de correo electrónico del dominio

En este ejemplo buscaremos los datos de contacto del propietario del dominio gnu.org. Desplegamos el conjunto de transformaciones 'Domain owner detail' y seleccionamos la transformación 'To Email address [From whois info]'. Esta transformación obtiene el registro whois para el dominio gnu.org y extrae las direcciones de correo electrónico administrativas del dominio. Los resultados de la transformación se añaden como entidades hijas a la entidad Domain. También podemos extraer cualquier número de teléfono presente en los datos whois ejecutando la transformación 'To Phone numbers [From whois info]'.

Paso 4: Ejecutar la transformación To DNS Name [From Domain] para buscar subdominios

A continuación queremos encontrar todos los subdominios relacionados con el dominio gnu.org. Un subdominio es la parte del dominio que va antes del dominio principal. Por ejemplo,  www.gnu.org es un subdominio del dominio gnu.org. Los subdominios pueden contener información diversa sobre distintas partes de la organización o sus servicios.

Para ello ejecutamos la transformación 'To DNS Name [From Domain]' sobre la entidad Domain. Esta transformación busca todos los subdominios relacionados con el dominio gnu.org y los añade como entidades hijas a la entidad Domain.

Paso 5: Ejecutar la transformación To IP Address [DNS] para buscar direcciones IP de los subdominios

Ahora queremos conocer las direcciones IP de los subdominios que hallamos en el paso anterior. Una dirección IP es un identificador único de un ordenador o dispositivo en la red Internet. La dirección IP puede ayudarnos a determinar la ubicación física aproximada del dispositivo o su proveedor.

Para ello ejecutamos la transformación 'To IP Address [DNS]' sobre cada entidad DNS Name. Esta transformación realiza una consulta DNS para cada subdominio y devuelve la dirección IP correspondiente. Los resultados de la transformación se añaden como entidades hijas a las entidades DNS Name.

Paso 6: Ejecutar la transformación To Netblock [Whois] para buscar bloques de direcciones IP

Un bloque de direcciones IP es un rango de direcciones IP que pertenece a un mismo propietario u organización. Los bloques de direcciones IP pueden ayudarnos a identificar quién controla esas direcciones IP y qué otras direcciones IP pueden estar relacionadas con ellas.

Para ello ejecutamos la transformación 'To Netblock [Whois]' sobre cada entidad IP Address. Esta transformación obtiene el registro whois de cada dirección IP y extrae el bloque de direcciones IP al que pertenece. Los resultados de la transformación se añaden como entidades hijas a las entidades IP Address.

Paso 7: Ejecutar la transformación To Location [GeoIP] para buscar la ubicación geográfica de las direcciones IP

Ahora queremos conocer la ubicación geográfica de las direcciones IP que hallamos en los pasos anteriores. La ubicación geográfica de una dirección IP es la localización aproximada del dispositivo o del proveedor al que pertenece esa dirección IP. La ubicación geográfica puede ayudarnos a determinar dónde están los servidores o los usuarios relacionados con el dominio.

Para ello ejecutamos la transformación 'To Location [GeoIP]' sobre cada entidad IP Address. Esta transformación utiliza una base de datos GeoIP para determinar el país, la región y la ciudad correspondientes a cada dirección IP. Los resultados de la transformación se añaden como entidades hijas a las entidades IP Address.

Paso 8: Ejecutar la transformación To Website [From Domain] para buscar sitios web de los subdominios

Por último, queremos ver cómo son los sitios web de los subdominios que hallamos en los pasos anteriores. Un sitio web es un conjunto de páginas web relacionadas con un dominio o subdominio. Los sitios web pueden contener información diversa sobre los objetivos, la actividad o los productos de la organización o de sus servicios.

Para ello ejecutamos la transformación 'To Website [From Domain]' sobre cada entidad DNS Name. Esta transformación intenta abrir la página web en la dirección de cada subdominio y devuelve una captura de pantalla del sitio web. Los resultados de la transformación se añaden como entidades hijas a las entidades DNS Name.

¡Eso es todo! Hemos realizado una investigación OSINT sencilla del dominio gnu.org con la ayuda de Maltego. Encontramos mucha información interesante sobre el propietario del dominio, los subdominios, las direcciones IP, los bloques de direcciones IP, la ubicación geográfica y los sitios web. Puede continuar la investigación ejecutando otras transformaciones sobre las entidades que le interesen. También puede guardar su grafo para un análisis posterior o exportarlo a varios formatos.

Espero que esta entrada le haya sido útil e interesante. Si tiene alguna pregunta o necesita ayuda, no dude en ponerse en contacto conmigo. ¡Gracias por su atención!

Alt text