
InfoHound es una herramienta OSINT para extraer una gran cantidad de datos dado un nombre de dominio web.
Durante la fase de reconocimiento, un atacante busca cualquier información sobre su objetivo para crear un perfil que luego le ayudará a identificar posibles vías de entrada en una organización. InfoHound realiza técnicas de análisis pasivo (que no interactúan directamente con el objetivo) utilizando OSINT para extraer una gran cantidad de datos a partir de un nombre de dominio web. Esta herramienta recuperará correos electrónicos, personas, archivos, subdominios, nombres de usuario y URLs que posteriormente serán analizados para extraer información aún más valiosa.
Además, InfoHound aprovecha una instancia de Ollama, lo que le permite utilizar el poder de los LLM (Modelos de Lenguaje de Gran Escala). Por defecto, InfoHound utiliza llama2, un modelo LLM preentrenado, para generar breves descripciones de los roles de las personas dentro de una organización. Esta funcionalidad proporciona información valiosa sobre la estructura organizativa y facilita la identificación de personal clave. Además, los esfuerzos de desarrollo en curso tienen como objetivo añadir nuevas características y mejoras para enriquecer aún más las capacidades de la herramienta en el futuro.
NOTA: InfoHound no requiere hardware especial para funcionar. Sin embargo, es importante considerar los requisitos de hardware al utilizar tareas que emplean el Modelo de Lenguaje de Gran Escala (LLM). Para obtener información detallada sobre los requisitos específicos del modelo LLM que planeas usar, consulta la documentación oficial de Ollama.

git clone https://github.com/Fundacio-i2CAT/InfoHound.git
cd InfoHound/infohound
mv infohound_config.sample.py infohound_config.py
cd ..
docker-compose up -d
Ahora puedes acceder a InfoHound navegando con tu navegador a:
http://localhost:8000/
NOTA: Debes añadir las API Keys dentro del archivo infohound_config.py
InfoHound tiene 2 tipos diferentes de módulos: los que recuperan datos y los que los analizan para extraer información más relevante.
| Nombre | Descripción |
|---|---|
| Obtener información Whois | Obtiene información relevante del registro Whois. |
| Obtener registros DNS | Esta tarea consulta el DNS. |
| Obtener subdominios | Esta tarea utiliza las APIs de Alienvault OTX, CRT.sh y HackerTarget como fuentes de datos para descubrir subdominios cacheados. |
| Obtener subdominios desde URLs | Una vez que se han ejecutado algunas tareas, la tabla de URLs tendrá muchas entradas. Esta tarea revisará todas las URLs para encontrar nuevos subdominios. |
| Obtener URLs | Busca todas las URLs cacheadas por Wayback Machine y las guarda en la base de datos. Esto ayudará posteriormente a descubrir otras entidades de datos como archivos o subdominios. |
| Obtener archivos desde URLs | Itera a través de la tabla de la base de datos de URLs para encontrar archivos y almacenarlos en la tabla de Archivos para su posterior análisis. Los archivos que se recuperarán son: doc, docx, ppt, pptx, pps, ppsx, xls, xlsx, odt, ods, odg, odp, sxw, sxc, sxi, pdf, wpd, svg, indd, rdp, ica, zip, rar |
| Buscar correos electrónicos | Busca correos electrónicos utilizando consultas a Google, Bing y bases de datos filtradas. |
| Buscar personas desde correos | Una vez que se han encontrado algunos correos, puede ser útil descubrir la persona detrás de ellos. También encuentra nombres de usuario de esas personas. |
| Buscar correos desde URLs | A veces, las URLs descubiertas pueden contener información sensible. Esta tarea recupera todos los correos electrónicos de las rutas de las URLs. |
| Ejecutar dorks | Ejecutará los dorks definidos en la carpeta dorks. Recuerda agrupar los dorks por categorías (nombre de archivo) para entender sus objetivos. |
| Buscar correos desde dorks | Por defecto, InfoHound tiene algunos dorks definidos para descubrir correos electrónicos. Esta tarea los buscará en los resultados obtenidos de la ejecución de dorks. |
| Buscar personas desde Google | Utiliza la API JSON de Google para encontrar personas que trabajan en la empresa asociada al dominio |
| Nombre | Descripción |
|---|---|
| Verificar posibilidad de apropiación de subdominios | Realiza algunas comprobaciones para determinar si un subdominio puede ser tomado. |
| Verificar si el dominio puede ser suplantado | Comprueba si un dominio, de los correos electrónicos que InfoHound ha descubierto, puede ser suplantado. Esto podría ser utilizado por atacantes para hacerse pasar por una persona y enviar correos electrónicos como si fueran ella. |
| Obtener perfiles desde nombres de usuario | Esta tarea utiliza los nombres de usuario descubiertos de cada persona para encontrar perfiles en servicios o redes sociales donde exista ese nombre de usuario. Esto se realiza utilizando la herramienta Maigret. Vale la pena señalar que aunque se encuentre un perfil con el mismo nombre de usuario, no necesariamente significa que pertenezca a la persona que se está analizando. |
| Descargar todos los archivos | Una vez que los archivos se han almacenado en la tabla de la base de datos de Archivos, esta tarea los descargará en la carpeta "download_files". |
| Obtener metadatos | Usando exiftool, esta tarea extraerá todos los metadatos de los archivos descargados y los guardará en la base de datos. |
| Obtener correos desde metadatos | Como algunos metadatos pueden contener correos electrónicos, esta tarea los recuperará todos y los guardará en la base de datos. |
| Obtener correos del contenido de archivos | Normalmente, los correos electrónicos pueden estar incluidos en archivos corporativos, por lo que esta tarea recuperará todos los correos electrónicos del contenido de los archivos descargados. |
| Encontrar servicios registrados usando correos electrónicos | Es posible encontrar servicios o redes sociales donde se haya utilizado un correo electrónico para crear una cuenta. Esta tarea verificará si un correo electrónico descubierto por InfoHound tiene una cuenta en Twitter, Adobe, Facebook, Imgur, Mewe, Parler, Rumble, Snapchat, Wordpress y/o Duolingo. |
| Verificar filtraciones de datos | Esta tarea consulta el servicio Firefox Monitor para ver si un correo electrónico ha aparecido en una filtración de datos. Aunque es un servicio gratuito, tiene un límite de 10 consultas por día. Si se ha configurado la clave de API de Leak-Lookup, también lo verifica. |
| Análisis de perfiles impulsado por IA | Puedes usar la tarea de análisis de perfiles para emplear una herramienta impulsada por IA que examina los metadatos y crea una descripción por ti. |
| Obtener contraseñas filtradas | Usando el servicio gratuito de Proxy Nova, InfoHound puede detectar y mostrar contraseñas de nombres de usuario encontrados que hayan sido filtrados en el pasado. |
InfoHound te permite crear módulos personalizados, solo necesitas añadir tu script dentro de infohound/tool/custom_modules. Se ha añadido un módulo personalizado como ejemplo que utiliza la herramienta Holehe para verificar si los correos electrónicos previamente encontrados están vinculados a una cuenta en sitios como Twitter, Instagram, Imgur y más de 120 otros.
# Import the packages you need
import trio
import httpx
import requests
from holehe import core