Dnstwist ayuda al usuario a detectar phishing en un dominio

El phishing es uno de los tipos de ciberataques que más han aumentado en los últimos tiempos. Los atacantes intentan hacerse pasar por una web legítima, una página de un banco por ejemplo, y lograr que las víctimas introduzcan sus credenciales. Realmente están entregando en bandeja sus datos a los delincuentes que pueden utilizarlos para el mal. La función que tiene Dnstwist es la de detectar phishing y otras posibles amenazas, en un dominio web determinado.

Detectar phishing con Dnstwist

Dnstwist es un script de Python creado por Marcin Ulikowski hace un tiempo. Resulta muy útil para los usuarios, ya que nos permite detectar phishing, errores de tipografía y dominios de ataque basados ​​en un dominio que introducimos. Si alguien es propietario de una página o está a cargo de la administración de dominios y la seguridad de marca de una compañía, esta herramienta puede ser de gran utilidad para ver posibles sitios que intentan dañar a otros pretendiendo ser esa marca.

La premisa detrás de dnstwist es realmente simple. Toma un nombre de dominio como entrada y luego usa varios algoritmos para generar dominios derivados que podrían ser potencialmente utilizados para phishing, errores de tipografía o espionaje corporativo. Usar dnstwist también es muy fácil.

Para un uso básico, simplemente tenemos que ingresar un dominio para obtener una lista de posibles dominios de ataque. Aunque es algo útil, al usar varios argumentos en la línea de comandos podemos refinar aún más la búsqueda para llegar a la esencia de lo que estamos buscando.

Opciones

Dnstwist contiene una variedad de opciones que podemos usar cuando se ejecuta el script. Estas opciones son:

usage: ./dnstwist.py [OPTION]... DOMAIN

Find similar-looking domain names that adversaries can use to attack you. Can

detect typosquatters, phishing attacks, fraud and corporate espionage. Useful

as an additional source of targeted threat intelligence.

positional arguments:

domain domain name or URL to check

optional arguments:

-h, --help show this help message and exit

-a, --all show all DNS records

-b, --banners determine HTTP and SMTP service banners

-c, --csv print output in CSV format

-d FILE, --dictionary FILE

generate additional domains using dictionary FILE

-g, --geoip perform lookup for GeoIP location

-j, --json print output in JSON format

-m, --mxcheck check if MX host can be used to intercept e-mails

-r, --registered show only registered domain names

-s, --ssdeep fetch web pages and compare their fuzzy hashes to

evaluate similarity

-t NUMBER, --threads NUMBER

start specified NUMBER of threads (default: 10)

-w, --whois perform lookup for WHOIS creation/update time (slow)

--nameservers LIST comma separated list of nameservers to query

--port PORT the port to send queries to

Sin embargo, antes de llegar a las diversas opciones, primero hay que instalar Dnstwist. Para Ubuntu, tenemos que usar el siguiente comando para configurar las dependencias:

sudo apt-get install python-dnspython python-geoip python-whois python-requests python-ssdeep python-cffi

Una vez que esas dependencias están instaladas, podemos clonar el repositorio desde https://github.com/elceef/dnstwist y comenzar a usarlo:

git clone https://github.com/elceef/dnstwist

A continuación vamos a ver algunos de los argumentos de línea de comandos que pueden resultar muy útiles.

Prueba de Dnstwist

Mostrar solo dominios de ataque registrados

Si bien es útil ver una lista de posibles nombres de dominio, es mucho más útil ver una lista de los dominios que están realmente registrados. Afortunadamente, Dnstwist contiene el distintivo -r que hace que el programa solo genere dominios realmente registrados. Al usar esta bandera, la cantidad de dominios basados en un dominio determinado, baja para que sea más manejable.

Para usar el distintivo -r, simplemente hay que ejecutar un comando como ./dnstwist.py -r redeszone.net y solo se generará una lista de dominios registrados.

¿Dónde están alojados estos dominios?

Si bien la ubicación geográfica de un sitio no es de ninguna manera una buena indicación de la nacionalidad del atacante, puede darnos pistas sobre si el sitio está siendo mal utilizado o no. Por ejemplo, si tenemos una empresa en España y vemos algunos dominios registrados en un país con el que no tenemos afiliación, entonces podría ser una pista de que alguien no está haciendo algo bueno.

Os recomendamos leer nuestro tutorial sobre cómo saber si una web o dominio son seguros con SynapsInt. También podéis ver qué es un ataque de camuflaje de dominio.