No ARP Attacks (narpa)

 

————————————————-***

Narpa es un proyecto en c++ basado en otro programa de envío y recepción de paquetes arp llamado “arp_sk” y usa las librerías winpcap.

————————————————-

El proyecto consiste en la protección de una red a ataques en el protocolo arp engañando al propio atacante y aislándolo de la red.

————————————————-

Si desea informarse acerca de las preguntas más frecuentes sobre el proyecto, porfavor acuda a la página del FAQ pinchando aquí o en el menú


Las fases del programa son las siguientes:

.

  1. Petición y almacenamiento de direcciones ip y mac del gateway y local.
  2. Creación de una entrada estática arp con la ip y mac del router.
  3. Petición y almacenamiento de todas las direcciones mac e ips de los hosts de la red.
  4. Estado de espera a que un atacante mande un paquete arp “diciendo ser” el gateway/router.
  5. El programa se alerta de esta situación, espera al proximo ataque del atacante, y reacciona de la siguiente manera:

5.1. Envío de las macs reales de los hosts asociadas a su ip al gw

5.2. Envio de la mac real del gateway a cada host de la red

5.3. Envio de macs falsas de las ips de la red hacia el atacante

5.4. Actualiza la caché arp de los pasos 5.1, 5.2 y 5.3 en modo reply

5.5. Espera al siguiente paquete falso del atacante para contraatacar de nuevo en el paso 5.4

5.6. Reescaneo de la red quitando hosts que esten ofline o añadiendo nuevos  (cada 10 minutos)

5.7. Si no es atacado por el atacante focalizado, actualiza ips y se mantiene a la espera de otro atacante