Cómo instalar y usar GHunt, excelente herramienta OSINT para investigar cuentas de Google

Cómo instalar y usar GHunt, excelente herramienta OSINT para investigar cuentas de Google

Dentro de las herramientas OSINT a nuestra disposición, hay una que se ha popularizado mucho últimamente: GHunt, una excelente aplicación que nos permite investigar cuentas de Google y extraer datos muy interesantes de nuestro objetivo.

Por eso, vamos a ver cómo instalar GHunt, cómo usarlo para investigar un objetivo y qué información podemos conseguir con la herramienta.

Empecemos por el principio, ya que la instalación no es difícil, pero puede ser un poco liosa, veremos por qué.

Cómo instalar GHunt

GHunt es una aplicación OSINT escrita en Python que podemos instalar de una manera similar a otras herramientas de investigación escritas también en este lenguaje. La dificultad de instalar GHunt viene de que necesitaremos 7 cookies especiales que, en ocasiones, pueden ser un poco complicadas de encontrar.

Sin embargo, vamos a ver, paso a paso, cómo hacer eso y cómo instalar GHunt con éxito.

GHunt se puede instalar también por Docker, pero vamos a ver el método manual.

1. Descargar GHunt desde el repositorio de Github

Como sucede con la mayoría de aplicaciones de este tipo, lo primero es descargar GHunt desde su repositorio de Github.

Para eso, podemos descargar el archivo master en formato zip y descomprimirlo en un directorio, o bien clonar ese repositorio de Github mediante la herramienta Git. Esto último es lo más recomendable y sencillo. Al final, si vamos a ser investigadores OSINT, será imprescindible manejarnos con esta clase de aplicaciones y procesos.

Para eso, abrimos una terminal y procedemos a clonar el repositorio en un directorio.

git clone https://github.com/mxrch/ghunt

Y entramos en el directorio recién creado en el que hemos clonado la aplicación.

cd ghunt

Para las anteriores instrucciones, uso la terminal de una máquina virtual Linux dedicada expresamente a los trabajos OSINT. Personalmente, creo que es el enfoque de trabajo más adecuado y lo que recomiendo personalmente.

Es posible que muchos usen Windows y Powershell, por ejemplo, o incluso Mac. Pero, personalmente, creo que la recomendación anterior es la más adecuada, al menos si te vas a dedicar profesionalmente a la ciberinvestigación.

2. Instalar GHUnt

Para eso, una vez dentro del directorio ghunt, instalamos los requerimientos que precisa GHunt para funcionar, con:

python3 -m pip install -r requirements.txt

De nuevo, nos encontramos con el típico procedimiento de este tipo de aplicaciones. Dejamos que haga su trabajo, descargue y configure los módulos necesarios y, al terminar, casi podemos empezar a usar GHunt, aunque tenemos que dar un paso más antes de que nos funcione.

3. Instalar las 7 cookies necesarias para GHunt

Para poder funcionar, GHunt necesita 7 cookies que tenemos que obtener a partir de una cuenta de Google que tengamos. Es recomendable que esa cuenta Google sea una cuenta títere de OSINT (o sock puppet) que usemos para investigaciones.

Es decir, que no usemos nuestra cuenta principal de Google para obtener esas cookies, por razones obvias de posibles agujeros de privacidad.

Hay dos maneras de configurar esas cookies, desde hace un tiempo, hay una forma más automática que se basa en usar esta extensión de Firefox llamada GHunt Companion para configurarlas más fácilmente.

Vamos a empezar con ese método más sencillo de la extensión, así que la instalamos en nuestro navegador Firefox.

Instalando las cookies con la extensión GHunt Companion

A fin de configurarlas, desde el directorio ghunt, ejecutamos:

python3 check_and_gen.py

Nos sale la siguiente pantalla:

GHunt al ejecutar la configuración de las cookies

Bien, elegimos la opción 1, para que GHunt se quede a la escucha, nos dirá que ha empezado a hacerlo en el puerto 60067.

Ahora vamos a Firefox, donde hemos instalado la extensión GHunt Companion. Pulsamos en su icono y nos salen dos opciones básicas que coinciden con las dos primeras opciones que nos daba GHunt cuando lo configuramos:

GHunt Companion

Pulsamos en el botón Launch de la primera opción Method 1 (server).

Si volvemos a la consola, esta nos comunicará que ha recibido las cookies y configurará los tokens necesarios para funcionar en la investigación.

Cookies configuradas con GHunt Companions

Esta es la opción más fácil y recomendable, pues no cuesta nada.

La opción 2 tampoco está mal, porque te ofrece las cookies en Base64 que copias y pegas una a una.

Pero hay quien se quiere complicar la vida, así que veamos el método manual para obtener las 7 cookies de GHunt por si acaso.

Cómo obtener manualmente las 7 cookies de GHunt, incluyendo la maldita LSID

En este caso, en la pantalla de configuración cuando ejecutemos check_and_gen.py, vamos a elegir la opción 3, que nos irá pidiendo, una a una, las 7 cookies que necesitamos.

Al elegir esa opción 3, la primera cookie que nos pide es la llamada SID.

Para obtenerla nos vamos a https://accounts.google.com/ y nos identificamos en la cuenta sock puppet.

Una vez hecho, es hora de ejecutar la consola web con las opciones de desarrollador, etc. Asumo que usamos Firefox, pero aunque usemos Chrome, el atajo de teclado es el mismo:

Ctrl + Shift + I

En la pantalla que nos sale, nos interesa la pestaña “Almacenamiento”, destacada en rojo en la imagen de abajo:

Pestaña almacenamiento de Firefox

Cuando pinchamos ahí, entramos normalmente en la subsección Cookies de esa pestaña Almacenamiento. Si no es así, pinchamos en Cookies y luego en https://myaccount.google.com, de esa manera, nos saldrán un buen puñado de cookies, de entre las que tendremos que elegir las 7 que necesitamos.

Observemos la imagen de abajo:

Pestaña cookies de Firefox

Bien de todas esas cookies que nos salen, la primera que nos pedía GHunt si recordamos más arriba, cuando ejecutamos la aplicación de configuración, era la llamada SID.

Ese SID es lo que tenemos que buscar en la columna “Nombre” de las cookies. Si vamos bajando por dichas cookies, la acabamos encontrando.

Cookie SID de Firefox para GHunt

Ahora, tenemos que copiar lo que hay en la casilla “Valor” de la cookie SID, que por razones de seguridad y privacidad, aparece difuminado en la imagen de arriba, pero no tiene dificultad. Hacemos doble clic en ese valor (que será una ristra de números, letras y símbolos) y nos aparecerá seleccionado ese valor.

Si pulsamos el atajo de copiar (Ctrl + c o Cmd + c en Mac OS) tendremos el valor copiado al portapapeles.

Ahora, nos volvemos a la terminal en la que hemos ejecutado la configuración de GHunt y pegamos ahí ese valor de SID que nos pide. Recordemos (aunque no debería estar diciendo cosas tan básicas, pero por si acaso) que para pegar en la consola Linux, normalmente, el atajo es Ctrl + Shift + V en lugar del habitual Ctrl + V.

Pegando la cookie SID en GHunt

Pulsamos Intro y nos aceptará la primera cookie, pidiendo la siguiente. Tenemos que repetir el mismo proceso, buscar el nombre de cookie que nos pida GHunt en la columna “Nombre”, copiar el valor como en el caso de SID y pegarlo.

Las 6 cookies adicionales que nos pedirá son:

  • SSID.
  • APISID.
  • SAPISID.
  • HSID.
  • LSID.
  • __Secure-3PSID.

Así que vamos, arriba y abajo por las diferentes cookies en Firefox, copiando y pegando valores.

Aviso importante: Si usamos Firefox, vamos a tener una complicación añadida, LSID es una cookie que pertenece a https://accounts.google.com, pero, una vez identificados en nuestra cuenta Google, se nos redirige a https://myaccount.google.com donde no encontraremos esa cookie. ¿Cómo la localizamos entonces?

Que no cunda el pánico. Abandonamos la pestaña “Almacenamiento” y pulsamos en la pestaña “Red” de la consola de Firefox.

Ahí, vamos buscando por las diferentes peticiones, hasta que vemos la columna “Método” con el valor “POST” y la columna “Dominio” con el valor “accounts.google.com”. Está resaltado en rojo y azul.

Cookie LSID en Firefox para en GHunt

Si hacemos clic ahí, en la parte derecha nos aparecen los valores de un montón de cookies. Vamos buscando por ellos el valor LSID, también resaltado en rojo más arriba a la derecha de la imagen.

El Valor que necesitamos está después del trozo de ristra de caracteres “youtube:” que es lo que tendremos que copiar, seleccionando con el ratón justo después de los dos puntos tras youtube y deteniéndonos justo antes de las comillas finales (si haces clic en la imagen, puedes ampliarla).

Una vez seleccionado el valor, le damos al atajo de copiar.

Lo amplío y resalto el valor de LSID a obtener para que quede un poco más claro, nótese una vez más cómo no selecciono las comillas finales de cierre a la hora de copiar:

Detalle de la cookie LSID en GHunt y Firefox

Una vez introducidos los valores de las 7 cookies, GHunt nos dice que está listo para funcionar.

Configuración de cookies completa en GHunt

Como vemos, es mucho más sencillo usar la extensión Companion, que tampoco dan premios a complicarse la vida.

Cómo usar GHunt para analizar una cuenta de Google objetivo

GHunt es muy poderoso, porque extrae datos muy útiles y (casi) todo el mundo tiene una cuenta de Google y es muy posible que la tengamos como dato en una ciberinvestigación OSINT, o bien que intentemos descubrir dicha cuenta de Google del objetivo.

Seguramente, dicho objetivo tendrá alguna y, si no la tenemos disponible, podemos intentar descubrirla por inferencia, iterando posibles nicks y comprobando si funcionan, etc.

Una vez conseguida esa cuenta Google del objetivo, que habitualmente será del tipo apodo@gmail.com, empleamos GHunt para comprobar qué podemos averiguar sobre él.

Por suerte. GHunt es mucho más fácil de usar que de instalar.

Qué datos OSINT podemos averiguar con GHunt

Bastantes, eso sí, dependiendo, como siempre, de lo que comparte el usuario, lo activo que es, las opciones de privacidad que ha puesto en su cuenta de Google, etc.

Pero, teniendo en cuenta lo que especifica la propia documentación de GHunt, este tiene 4 módulos con los que podríamos obtener:

1. Módulo de correo electrónico:

  • Nombre del propietario
  • ID de Gaia
  • Última vez que se editó el perfil
  • Imagen del perfil (+ detectar imagen personalizada)
  • Si la cuenta es un Hangouts Bot
  • Servicios de Google activados (YouTube, Fotos, Mapas, News360, Hangouts, etc.)
  • Posible canal de YouTube
  • Posibles otros nombres de usuario
  • Reseñas de Google Maps (M)
  • Posible ubicación física (M)
  • Eventos de Google Calendar (C)
  • Organizaciones (trabajo y educación) (A)
  • Correos electrónicos de contacto (A)
  • Teléfonos de contacto (A)
  • Direcciones (A)
  • Fotos públicas (P)
  • Modelos de teléfonos (P)
  • Firmwares de teléfonos (P)
  • Programas instalados (P)

2. módulo de documentos

  • Nombre del propietario
  • ID de Gaia del propietario
  • Imagen de perfil del propietario (+ detectar imagen personalizada)
  • Fecha de creación
  • Última vez que se editó el documento
  • Permisos públicos

3. Módulo Youtube:

  • ID de Gaia del propietario (a través de Wayback Machine)
  • Detectar si el correo electrónico es visible
  • País
  • Descripción
  • Vistas totales
  • Fecha de incorporación
  • Enlaces principales (redes sociales)
  • Toda la información accesible por el módulo Gaia

4. Módulo Gaia:

  • Nombre del propietario
  • Imagen de perfil (+ detectar imagen personalizada)
  • Posible canal de YouTube
  • Posibles otros nombres de usuario
  • Reseñas de Google Maps (M)
  • Posible ubicación física (M)
  • Organizaciones (trabajo y educación) (A)
  • Correos electrónicos de contacto (A)
  • Teléfonos de contacto (A)
  • Direcciones (A)

Las funciones marcadas con una (P) requieren que la cuenta de destino tenga la configuración predeterminada de Permitir que las personas con las que compartes contenido descarguen tus fotos y vídeos en el Archivo de álbumes de Google, o bien que el objetivo haya utilizado alguna vez Picasa vinculado a su cuenta de Google.

Los marcados con una (M) requieren que las reseñas de Google Maps del objetivo sean públicas (lo son por defecto).

Los marcados con una (C) requieren que el usuario tenga Google Calendar configurado como público (por defecto está cerrado).

Los marcados con una (A) requieren que el usuario tenga la información adicional configurada en el perfil con la opción de privacidad “Cualquiera” activada.

Ejecutando GHunt contra un objetivo

Muy sencillo. Para ello, en el directorio ghunt en el que hemos estado trabajando, ejecutamos:

python3 ghunt.py modulo apodo@gmail.com

Así, si queremos usar el módulo email, pondríamos:

python3 ghunt.py email apodo@gmail.com

Módulo email de GHunt en acción

Como vemos en la imagen de arriba, tras usar el módulo email de GHunt con un objetivo, nos ha sacado el nombre, las reseñas en Maps, una dirección adicional de correo de contacto que investigar, nos ha guardado la foto de perfil, cuando actualizó dicho perfil, etc.

En definitiva, GHunt es una herramienta muy poderosa, la más útil en mi opinión actualmente para investigar cuentas de Google. Y gracias a la extensión de Firefox a la hora de configurar las 7 cookies necesarias, es más sencillo que nunca tenerlo en nuestro arsenal OSINT, listo para usarlo.