En este
tutorial se hablará de cómo hacer un DNS spoofing, que nos servirá para
engañar a una víctima en sus peticiones web, por ejemplo, si navega a facebook,
nosotros le podremos mandar una página hecha a nuestra medida, si está bien
hecho la víctima no se dará cuenta.
Antes de
continuar leyendo si se desconoce que es el protocolo de sistema de nombres de dominio (DNS) es conveniente
consultarlo, se puede ver en la wikipedia.
¿Cuándo es de utilidad está técnica? Por ejemplo, cuando alguien sin permiso
se conecte a nuestra red, están en nuestra "casa", ;). Desde BoomerNiX no se alienta a hacer un uso irresponsable de esta técnica.
Tenemos muchas
herramientas en la red para hacer esta tarea, aquí se va a utilizar arpspoof
y dnsspoof en Kali Linux, además se necesitará un servidor web
corriendo en nuestra máquina (aquí usaremos algo rápido y con Django valdrá). Vamos a
comenzar.
Comprobar y activar ip_forward
Lo primero
que tenemos que hacer es comprobar si está activo el IP forwarding, para que
nos permita reenviar paquetes, para ello ejecutaremos:
sysctl net.ipv4.ip_forward
Si nos sale
0, está deshabilitado, si es 1 ya lo tenemos activado, en la siguiente imagen
se ve la salida de ejecutar el comando:
Para
activarlo ejecutaremos el siguiente comando:
echo 1 > /proc/sys/net/ipv4/ip_forward
Después
podemos volver a comprobar si ya tenemos el 1.
Envenenar tabla ARP
Para
continuar tenemos que envenenar la tabla ARP de la víctima, para que así está
piense que somos el punto de acceso, para ello usamos arpspoof (no usar las
comillas, ver imagen):
arpspoof -i eth0 -t “IP víctima” “IP router”
arpspoof -i eth0 -t “IP router” “IP víctima”
arpspoof -i eth0 -t “IP router” “IP víctima”
-i sirve para indicar la interfaz a
usar (aquí eth0), -t define la dirección de la víctima, se deja captura de uno de los comandos.
Para saber
la IP de la víctima podemos entrar en el panel de control de nuestro router (caso indicado al inicio, de que alguien haga mal uso de nuestra red) o
usar nmap, en este caso es un entorno de pruebas por lo que obtener la IP es
tan fácil como usar ipconfig (nuestra "víctima" es Windows).
Usar dnsspoof para realizar la PoC
Ahora, necesitaremos crear un fichero con nuestra información de hosts antes de usar dnsspoof, vamos
a ver uno sencillo en el que resolveremos las peticiones a twitter y facebook
hacía nuestro servidor, el archivo le vamos a llamar host.txt, y tendrá
el siguiente contenido:
192.168.0.194 *facebook*
192.168.0.194 *twitter*
Se procede a ejecutar dnsspoof de la siguiente manera:
dnsspoof -i eth0 -f host.txt
-i es de nuevo la interfaz a utilizar,
y -f el fichero que creamos antes, del que se servirá para resolver las
peticiones a los dominios que se encuentran, si visita otro se dirigirá al
correcto.
En este instante, si
desde el ordenador de la víctima visitamos facebook, tendremos
la siguiente salida en la terminal de nuestra máquina:
Y en el navegador de la máquina víctima nuestra página:
Aquí se redirige a la página que por defecto nos lanza
Django, y no hay nada interesante que ver, pero en este punto se podrían conseguir muchas cosas, como por ejemplo, conseguir los datos almacenados en sessionStorage o localStorage,
puedes visitar w3schools para leer sobre estos datos.
Nota: si las pruebas os dirige a la página original, revisa los paquetes con un sniffer como Wireshark, para comprobar si la primera resolución nombre-IP es tu DNS. Para solucionarlo se puede usar IPTABLES para redirigir el tráfico y evitar que llegue a la víctima.
Nota: si las pruebas os dirige a la página original, revisa los paquetes con un sniffer como Wireshark, para comprobar si la primera resolución nombre-IP es tu DNS. Para solucionarlo se puede usar IPTABLES para redirigir el tráfico y evitar que llegue a la víctima.
Hasta aquí
llega el tutorial de DNS spoofing, hasta la próxima entrada.
Espectacular no todos llegan a necesitar o entender este nivel y en español no es facil conseguir informacion,mil gracias. Felicidad y salud
ResponderEliminarUna pregunta, ¿Cómo puedo redireccionar el tráfico al puerto 80 en vez del puerto 53, al momento de usar dnsspoof me indica el puerto destino en 53.
ResponderEliminar