Que es Mitm?
En criptografía, un ataque man-in-the-middle o JANUS (MitM o intermediario, en español) es un ataque en el que el enemigo adquiere la capacidad de leer, insertar y modificar a voluntad, los mensajes entre dos partes sin que ninguna de ellas conozca que el enlace entre ellos ha sido violado. El atacante debe ser capaz de observar e interceptar mensajes entre las dos víctimas. El ataque MitM es particularmente significativo en el protocolo original de intercambio de claves de Diffie-Hellman, cuando éste se emplea sin autenticación.
Posibles subataques
El ataque MitM puede incluir algunos de los siguientes subataques:
Intercepción de la comunicación (eavesdropping), incluyendo análisis del tráfico y posiblemente un ataque a partir de textos planos (plaintext) conocidos.
Ataques a partir de textos cifrados escogidos, en función de lo que el receptor haga con el mensaje descifrado.
Ataques de sustitución.
Ataques de repetición.
Ataque por denegación de servicio (denial of service). El atacante podría, por ejemplo, bloquear las comunicaciones antes de atacar una de las partes. La defensa en ese caso pasa por el envío periódico de mensajes de status autenticados.
ArpON (Arp handler inspectiON) es un demonio que nos permite mediante una serie de herramientas hacer el protocolo Arp, un poco más seguro. Implementa dos técnicas de defensivas contra ataques de envenenamiento de Arp:
SARPI (STATIC ARP INSPECTION): Cuando se inicia, guarda todas las entradas ARP en un caché estático (Caché SARPI). Cada vez que se recibe una respuesta ARP, el demonio comprueba que la dirección de origen de la respuesta es la misma que la que guarda en la caché. Si la respuesta proviene de la misma dirección, la nueva reemplazará a la guardada en la caché. Cualquier petición o respuesta, cuya dirección de origen sea distinta a la que hay en la caché, es ignorada.
DARPI (DYNAMIC ARP INSPECTION): Cuando se inicia, limpia toda la caché ARP, evitando de esta manera verse afectado por un ataque efectuado anterior al inicio del demonio. DARPI maneja la caché DARPI, según diferentes pilicies para cada clase de paquete.
Instalacion
Vamos a crear un log, donde el demonio pueda comunicarnos cualquier irregularidad o la ausencia de ella:
Posteriormente lanzamos al programa con:
Nos saldra algo como esto:
ArpON "Arp handler inspection" version 1.90 (http://arpon.sourceforge.net)
[06/11/2012 - 16:56:49 CLT] Device: (wlan1) MAC: 90:f6:xxxx:xx Inet4: 190.161.56.228 Netmask: 255.255.255.0
[06/11/2012 - 16:56:49 CLT] Task is forking to background, using /var/run/arpon.pid pid file...
sintax de arpon
En criptografía, un ataque man-in-the-middle o JANUS (MitM o intermediario, en español) es un ataque en el que el enemigo adquiere la capacidad de leer, insertar y modificar a voluntad, los mensajes entre dos partes sin que ninguna de ellas conozca que el enlace entre ellos ha sido violado. El atacante debe ser capaz de observar e interceptar mensajes entre las dos víctimas. El ataque MitM es particularmente significativo en el protocolo original de intercambio de claves de Diffie-Hellman, cuando éste se emplea sin autenticación.
Posibles subataques
El ataque MitM puede incluir algunos de los siguientes subataques:
Intercepción de la comunicación (eavesdropping), incluyendo análisis del tráfico y posiblemente un ataque a partir de textos planos (plaintext) conocidos.
Ataques a partir de textos cifrados escogidos, en función de lo que el receptor haga con el mensaje descifrado.
Ataques de sustitución.
Ataques de repetición.
Ataque por denegación de servicio (denial of service). El atacante podría, por ejemplo, bloquear las comunicaciones antes de atacar una de las partes. La defensa en ese caso pasa por el envío periódico de mensajes de status autenticados.
ArpON (Arp handler inspectiON) es un demonio que nos permite mediante una serie de herramientas hacer el protocolo Arp, un poco más seguro. Implementa dos técnicas de defensivas contra ataques de envenenamiento de Arp:
SARPI (STATIC ARP INSPECTION): Cuando se inicia, guarda todas las entradas ARP en un caché estático (Caché SARPI). Cada vez que se recibe una respuesta ARP, el demonio comprueba que la dirección de origen de la respuesta es la misma que la que guarda en la caché. Si la respuesta proviene de la misma dirección, la nueva reemplazará a la guardada en la caché. Cualquier petición o respuesta, cuya dirección de origen sea distinta a la que hay en la caché, es ignorada.
DARPI (DYNAMIC ARP INSPECTION): Cuando se inicia, limpia toda la caché ARP, evitando de esta manera verse afectado por un ataque efectuado anterior al inicio del demonio. DARPI maneja la caché DARPI, según diferentes pilicies para cada clase de paquete.
Instalacion
root@bt:~# apt-get install arpon
Vamos a crear un log, donde el demonio pueda comunicarnos cualquier irregularidad o la ausencia de ella:
root@bt:~# mkdir /var/log/ArpON/ && nano /var/log/arpon/ArpON.log
Posteriormente lanzamos al programa con:
root@bt:~# arpon -i wlan1 -f /var/log/ArpON/arpon.log -g --daemon --darpi
Nos saldra algo como esto:
ArpON "Arp handler inspection" version 1.90 (http://arpon.sourceforge.net)
[06/11/2012 - 16:56:49 CLT] Device: (wlan1) MAC: 90:f6:xxxx:xx Inet4: 190.161.56.228 Netmask: 255.255.255.0
[06/11/2012 - 16:56:49 CLT] Task is forking to background, using /var/run/arpon.pid pid file...
sintax de arpon
root@bt:~# arpon --help
ArpON "Arp handler inspection" version 1.90 (http://arpon.sourceforge.net)
Usage: arpon [Task Mode] [Log Mode] [Device] {[Arping] | [Sniffer] | [Arp Cache] | [SARPI | DARPI]} [Misc]
TASK MODE:
-n, --nice <Nice Value> Sets PID's CPU priority
(Default Nice: 0)
-d, --daemon Works in background task
(Default: /var/run/arpon.pid)
LOG MODE:
-f, --log-file <Log file> Sets log file
(Default: /var/log/arpon.log)
-g, --log Works in logging mode
DEVICE MANAGER:
-i, --dev-manual <Device> Sets your valid device manually
-o, --dev-auto Sets valid device automatically
-l, --dev-list Prints all valid devices
(Sets last valid device)
ARP PING:
-m, --ping-timeout <Timeout> Sets Arp Ping response timeout
(Default: 500 milliseconds)
-p, --ping-host <Inet4> Sends Arp Ping to Inet4 address
-b, --ping-broadcast Sends Arp Ping to Broadcast address
(Prints LAN's active hosts)
ARP PASSIVE SNIFFER:
-r, --sniff-arp Sniffs only Arp protocol
(I/O Arp Request/Reply)
ARP CACHE MANAGER:
-a, --cache-add <"Inet4 MAC"> Adds Inet4 and MAC Arp entry
-e, --cache-del <Inet4 | MAC> Deletes Inet4 or MAC Arp entry
-t, --cache-list Prints total ARP Cache entries
STATIC ARP INSPECTION:
-u, --sarpi-timeout <Timeout> Sets Arp Cache refresh timeout
(Default: 10 minuts)
-s, --sarpi Manages Arp Cache statically
DYNAMIC ARP INSPECTION:
-z, --darpi-timeout <Timeout> Sets DARPI Cache entry timeout
(Default: 500 milliseconds)
-y, --darpi Manages Arp Cache dinamically
MISC:
-c, --license Prints license page
-v, --version Prints version number
-h, --help Prints help summary page