En este post se hablará de la herramienta Domain Hunter. Es un script muy sencillo pero útil en campañas de Red Team especialmente en la etapa de Delivery. En el momento en el que se plantea la creación de una campaña de Phishing es importante elegir un buen dominio para obtener los mejores resultados y en este sentido, Domain Hunter utiliza el servicio ExpiredDomains para encontrar aquellos que recientemente han expirado por diversos motivos. El objetivo de este proyecto, de hecho, no es el de obtener una lista de dominios que podrían ser utilizados para Phishing, sino el de proveer un listado de dominios que por diferentes motivos ahora se encuentran en estado de “Pending Delete” y que pueden ser comprados para aprovechar el posicionamiento que ya tienen, de cara a aplicar SEO no es lo mismo un dominio recién creado y sin presencia en Internet que otro que ya tiene algo de recorrido y posicionamiento en motores de búsqueda. Este servicio no solamente lista los dominios que están a punto de caducar, sino que también enseña aquellos que ya lo están y que ahora  se podrían comprar.

Instalación y uso de DomainHunter

Se puede utilizar DomainHunter (https://github.com/threatexpress/domainhunter) para automatizar el proceso de búsqueda de dominios en ExpiredDomains y tras leer el fichero README del proyecto es fácil entender sus funcionalidades. En primer lugar, la instalación puede hacerse utilizando el “requirements.txt” tan común en los proyectos basados en Python o por medio del fichero Dockerfile que se encuentra en el proyecto y que está preparado para crear un contenedor con todo lo necesario para ejecutar la herramienta.

Una vez instalado todo, se puede ejecutar el script “domainhunter.py” con la opción “-h” para explorar las alternativas que ofrece.


Hay que tener en cuenta que las últimas versiones de la API del servicio ExpiredDomains requiere de un usuario valido en el sistema, por ese motivo se ha incorporado en el script las opciones “–username” y “–password”, aunque si solamente se indica el nombre de usuario, el script solicita la contraseña sin necesidad de introducirla en plano con la opción “–password”.
Después de crear una cuenta en el servicio de ExpiredDomains se puede empezar a usar el script prácticamente sin ninguna dificultad, solamente hace falta indicar las opciones adecuadas para la búsqueda. Las más interesantes a efectos prácticos son las siguientes.

-k : Permite filtrar por los dominios que contienen una palabra concreta.

-ks : Permite filtrar por los dominios que empiezan por la palabra especificada.

-ke : Permite filtrar por los dominios que terminan por la palabra especificada.

-s : Ejecuta verificaciones sobre la reputación de un dominio o dirección IP especificada.

-f : Recibe un fichero en donde cada línea corresponde a un dominio o dirección IP. Con cada uno de estos elementos se aplican las mismas verificaciones que con la opción “-s”.

Para una búsqueda directa sin aplicar ningún filtro basta simplemente con ejecutar el script utilizando una cuenta de usuario valida y automáticamente se podrán apreciar los resultados en la terminal.

Aplicando los filtros indicados anteriormente también se obtiene un listado de resultados que automáticamente se almacenan en un fichero HTML para su posterior consulta, así como una tabla que se enseña directamente en la terminal. Por otro lado, incluye algunas opciones como “–ocr” o “–alexa” que son mucho más especificas y permiten en este caso, aplicar un OCR a los captcha que suelen ser solicitados por parte de la plataforma y ordenar los resultados de acuerdo al ranking de Alexa para cada resultado de la búsqueda.

Aunque es un script fácil de instalar y utilizar, los mismos resultados se pueden obtener simplemente navegando por el servicio de ExpiredDomains con una cuenta de usuario valida, de hecho, se encuentran muchas más alternativas de cara al filtrado de dominios y se puede consultar el feed de los últimos que se han incorporado a la lista de “Pending Delete”.

Tanto el script DomainHunter como el servicio ExpiredDomains son recursos interesantes a la hora de llevar a cabo una simulación de un ataque o un Red Team, especialmente en aquellos casos en los que hay que crear campañas de Phishing con algún dominio valido y lo más legitimo/creíble posible.

 

Un saludo y Happy Hack!
Adastra.