Buenas a todos,
sigo tratando de hacer funcionar un MITM, que tengo para windows en C++, en resumen lo que hace es envenenar la red, haciendose pasar por el router para las victimas y por cliente para el router, enviando así las peticione que nos hacen las victimas al router con la ip de las victimas y nuestra mac, ademas al router le decimos que a todas las ips de los clientes de la red les corresponde mi mac, asi cuando el router devuelva el paquete, se lo devuelva a la direccion ip que lo solicitó que estará asociada a nuestra mac, por lo que nosotros obtendremos el paquete, y luego nosotros recojemos la ip del paquete y lo reenviamos a la victima haciendonos pasar por router, pero algo falla pues consigo llegar a hacer denegacion de servicio a la red, pero no consigo dar conexión a los equipos de la red, se quedan cargando y no hay solución. He probado a establecer ip fordwarding pero el resultado es el mismo. No tengo la tarjeta de red en modo monitor, esta en modo normal, ¿puede ser eso?.
Os dejo una captura de lo que hace cuando trato de atacar a mi propio movil en la red:
Aparece la ip del router y la ip del movil, y tambien son paquetes nuestros ya que nosotros interactuamos conel router con la ip de la victima y nuestra mac en los paquetes, y a la victima con la ip del router y nuestra mac.
He visto proyectos de MITM como tomahawk hechos en C#, y lo que hacía era una tabla de ARP estática:
¿Será esto necesario?, uno de los problemas que puedo tener es que el SO manda datos con los datos correctos a los demás ordenadores, y muchas veces se siente engañado, ¿cómo podría solucionar eso en caso de que sea el problema? ¿sino lo es, que puede ocurrir?
He de añadir, que lo que hago ahora es un flooding de arp-poisoning, cuando me funcione así ya pasaré a hacerlo pasivo, pero de momento es de prueba, los hosts de la red me reconocen a mi como AP, pero no paso de la denegación de servicio.
Saludos y gracias por la ayuda, si os animáis a echar una mano.
sigo tratando de hacer funcionar un MITM, que tengo para windows en C++, en resumen lo que hace es envenenar la red, haciendose pasar por el router para las victimas y por cliente para el router, enviando así las peticione que nos hacen las victimas al router con la ip de las victimas y nuestra mac, ademas al router le decimos que a todas las ips de los clientes de la red les corresponde mi mac, asi cuando el router devuelva el paquete, se lo devuelva a la direccion ip que lo solicitó que estará asociada a nuestra mac, por lo que nosotros obtendremos el paquete, y luego nosotros recojemos la ip del paquete y lo reenviamos a la victima haciendonos pasar por router, pero algo falla pues consigo llegar a hacer denegacion de servicio a la red, pero no consigo dar conexión a los equipos de la red, se quedan cargando y no hay solución. He probado a establecer ip fordwarding pero el resultado es el mismo. No tengo la tarjeta de red en modo monitor, esta en modo normal, ¿puede ser eso?.
Os dejo una captura de lo que hace cuando trato de atacar a mi propio movil en la red:
Aparece la ip del router y la ip del movil, y tambien son paquetes nuestros ya que nosotros interactuamos conel router con la ip de la victima y nuestra mac en los paquetes, y a la victima con la ip del router y nuestra mac.
He visto proyectos de MITM como tomahawk hechos en C#, y lo que hacía era una tabla de ARP estática:
Código (csharp) [Seleccionar]
// static ARP entry manipulation (IP, MAC, friendly interface name, add/remove)
public bool StaticARP(string IP, PhysicalAddress mac, string WinName, StaticARPOperation operation)
{
OperatingSystem system = Environment.OSVersion;
// format MAC address
var macString = Network.FriendlyPhysicalAddress(mac).Replace(":", "-").ToLower();
// prepare process
Process p = new Process();
p.StartInfo.CreateNoWindow = true;
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.WorkingDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Windows);
p.StartInfo.FileName = "cmd";
// Vista, Windows 7/8 - use "netsh"
if (system.Version.Major > 5)
{
if(operation == StaticARPOperation.Add)
p.StartInfo.Arguments = "/k netsh interface ip delete neighbors \"" + WinName + "\" " + IP + " && netsh interface ip add neighbors \"" + WinName + "\" " + IP + " " + macString + " && exit";
else
p.StartInfo.Arguments = "/k netsh interface ip delete neighbors \"" + WinName + "\" " + IP + " && exit";
p.Start();
p.WaitForExit();
p.Dispose();
return true;
}
p.Dispose();
return false;
}
¿Será esto necesario?, uno de los problemas que puedo tener es que el SO manda datos con los datos correctos a los demás ordenadores, y muchas veces se siente engañado, ¿cómo podría solucionar eso en caso de que sea el problema? ¿sino lo es, que puede ocurrir?
He de añadir, que lo que hago ahora es un flooding de arp-poisoning, cuando me funcione así ya pasaré a hacerlo pasivo, pero de momento es de prueba, los hosts de la red me reconocen a mi como AP, pero no paso de la denegación de servicio.
Saludos y gracias por la ayuda, si os animáis a echar una mano.