Estoy haciendo la experimentación de ARP Spoof con arpspoof y he configurado con éxito a un hombre en el medio entre dos máquinas.
Configuramos el reenvío de IP usando:
echo 1 > /proc/sys/net/ipv4/ip_forward
Esto nos permite analizar las comunicaciones usando, por ejemplo, Wireshark. En teoría, deberíamos poder modificar el tráfico también. Soy consciente de herramientas como Ettercap y SSLstrip, pero ¿cómo podría personificar manualmente el servidor de destino?
Para reformular la pregunta: el cliente A está hablando con el servidor B. El atacante C (ese soy yo) está en medio y actualmente reenvía paquetes de ambas formas. ¿Cómo hace C, en un nivel bajo, las solicitudes de redireccionamiento destinadas a B a mi propia máquina?
Todos los sistemas involucrados están utilizando BackTrack.
Actualización:
Mis comandos de arpspoof (en la máquina de ataque, C):
arpspoof -i eth0 -t 8.0.0.2 8.0.0.3 # Tell 8.0.0.2 (A) that I am 8.0.0.3 (B)
arpspoof -i eth0 -t 8.0.0.3 8.0.0.2 # Tell 8.0.0.3 (B) that I am 8.0.0.2 (A)
Mis comandos de netcat para pruebas:
nc -p 5555 -l # Run on target B, listen on port 5555
nc -p 5555 -l # Run same thing on attack machine
nc 8.0.0.3 5555 # Run on A; connect to B.
Mi objetivo es hacer que C se haga pasar por B cuando A ejecuta el último comando.
Si el reenvío de IP está activado, A se conecta a B. Si el reenvío de IP está desactivado, A no puede conectarse con: (UNKNOWN) [8.0.0.3] 5555 (?) : Connection timed out
. El problema es que la capa IP no responde a un paquete destinado a otra dirección IP; así que aunque C recibe el paquete en un nivel inferior, no se pasa "arriba" de la pila. Mi objetivo es subir esto a la pila.