Protocolo ARP
En las redes actuales que hacen uso de la pila de protocolos TCP/IP, como Internet y la
mayoría de redes de área local, el encargado de establecer una correspondencia entre
las direcciones del nivel de enlace y del nivel de red es el protocolo ARP. Se trata de un protocolo
sencillo que permite averiguar la dirección hardware de nivel de enlace, en ethernet conocida como la dirección MAC, partiendo de una dirección IP de nivel de red. De la resolución
inversa se encarga el protocolo RARP (Reverse ARP).
Técnica de envenenamiento ARP
El protocolo ARP tiene ciertas carencias que facilitan
el uso ilegítimo del mismo para recibir tráfico ajeno. En particular, en el
caso que nos ocupa, resultan clave las siguientes características:
- Ausencia
absoluta de autenticación en el protocolo. Una máquina modificará su
comportamiento acorde con los paquetes ARP recibidos, sin poder determinar
de ningún modo la autenticidad de los mismos.
- Cachés
sujetas a alteraciones externas. Es posible modificar los contenidos de
una caché ARP tan sólo con construir y enviar
una petición o respuesta adecuada.
- Actualización
de las cachés a iniciativa externa. Con la técnica de ARP gratuito, una máquina
puede actualizar las cachés ARP del resto en cualquier momento.
Precisamente
de estas características nos aprovecharemos en la técnica del envenenamiento ARP o ARP spoofing para recibir tráfico ajeno en una red
construida con conmutadores. Se basa en ``envenenar'' la caché ARP de los dos nodos cuya comunicación
queremos intervenir con información falsa, haciéndoles creer que su
interlocutor es la máquina atacante. De esta forma, el tráfico generado entre
ambas máquinas tiene como destino nuestra propia máquina, y desde ésta las
tramas son reenviadas al destino real, evitando así la detección del ataque.
Más en detalle, un ataque de envenenamiento ARP se produce en las siguientes
condiciones:
- La
máquina atacante, conociendo las direcciones IP de los dos nodos cuyas
comunicaciones se quieren intervenir, resuelve mediante ARP, si es necesario, las
direcciones MAC que les corresponden.
- Bien
mediante respuestas ARP o mediante la técnica de ARP gratuito, el atacante
modifica el contenido de las cachés de las víctimas de forma que para la
dirección IP de su interlocutor se corresponda la dirección MAC real del atacante.
- Cada
vez que alguno de los nodos quiera enviar información al otro, resolverá
la dirección MAC del mismo mediante su caché de ARP previamente envenenada, enviando
así el tráfico al atacante en vez de al destinatario real.
- El switch enviará las tramas por la boca
del destinatario, que en este caso es el atacante. Éste las recibirá y las
pasará a la aplicación adecuada, que puede ser un sniffer que capture todo el tráfico. Al
estar todas las tramas destinadas a su dirección MAC, no es necesario que la tarjeta de
red se encuentre en modo promíscuo.
- El
atacante reenviará el contenido de las tramas al destinatario real. La
única diferencia entre la trama original y la modificada es, en un
principio, la dirección ethernet del destinatario, que varía de la
del atacante a la de una de las víctimas.
- El
nodo correspondiente recibirá el tráfico como si nada hubiese ocurrido. El
atacante, haciendo uso del envenenamiento
ARP y la técnica del hombre en el medio o man in the middle ha interceptado el tráfico sin
que ninguno de los interlocutores se percate.


