“ANÁLISIS, DISEÑO E IMPLEMENTACIÓN DE UN SISTEMA PARA EVITAR ATAQUES AL PROTOCOLO ARP EN REDES...

Post on 27-Jan-2016

215 views 1 download

Transcript of “ANÁLISIS, DISEÑO E IMPLEMENTACIÓN DE UN SISTEMA PARA EVITAR ATAQUES AL PROTOCOLO ARP EN REDES...

“ANÁLISIS, DISEÑO E IMPLEMENTACIÓN DE UN SISTEMA

PARA EVITAR ATAQUES AL PROTOCOLO ARP EN REDES DE

ÁREA LOCAL”

Andre Ortega A.

Xavier Marcos R.

AGENDA

Funcionamiento del protocolo ARP El problema: Envenenamiento a la caché ARP Objetivos Solución: Análisis y Diseño Solución: Implementación Demostración Pruebas y Resultados Conclusiones

FUNCIONAMIENTO DEL PROTOCOLO ARP

Alice Bob

IP addr Mac addrIP addr Mac addr

192.168.1.20 00:44:33:08:A3:C0

IP addr Mac addr

192.168.1.10 192.168.1.20

IP addr Mac addr

192.168.1.10 17:44:07:BB:24:C5

IP addr Mac addr

Carol

IP addr Mac addr

192.168.1.10 17:44:07:BB:24:C5

17:44:07:BB:24:C5 00:44:33:08:A3:C0

Alice se comunica con Bob

éxitosamente

ARP (Address Resolution Protocol)

EL PROBLEMA: ENVENENAMIENTO A LA CACHÉ ARP

6

El problema

OBJETIVOS

Objetivos

Presentar un nuevo esquema para asegurar ARP, de manera que:

• No implique cambios en cada host.

• Evite uso de técnicas criptográficas.

• Sea ampliamente disponible.

• Sea fácil de implementar.

• No se requiera de hardware costoso.

• Se combatan todos los tipos de ataques ARP.

SOLUCIÓN: ANÁLISIS Y DISEÑO

Análisis y Diseño

La solución la integran 2 elementos:

• Switch.

• Servidor.

Diseño Inicial

Diseño final

SOLUCIÓN: IMPLEMENTACIÓN

Servidor

Actualización de su caché ARP a través de mensajes DHCP:

update_arp_cache

Responde consultas ARP:

send_arp_reply

Impide actualización de su caché ARP a través de consultas ARP:

arptables -A INPUT --opcode 1 -j DROP

Switch

Bloqueo de respuestas ARP excepto las del servidor:

ebtables -A FORWARD -p ARP --arp-opcode 2 -i !

INTERFASE_SERVIDOR -j DROP

Redirección de consultas ARP tanto broadcast como unicast hacia el servidor:

Switch

ebtables -t nat -A PREROUTING -p ARP --arp-opcode 1 -s ! MAC_SERVIDOR -d ff:ff:ff:ff:ff:ff -j dnat --to-destination MAC_SERVIDOR

ebtables -t nat -A PREROUTING -p ARP --arp-opcode 1 -s ! MAC_SERVIDOR -d ! ff:ff:ff:ff:ff:ff -j dnat --to-destination MAC_SERVIDOR

Switch

Reenvío de tramas DHCP hacia el servidor:

iptables -t mangle -A INPUT -s IP_RED_LOCAL -j MARK --set-mark 100

iptables -A INPUT -m mark --mark 100 -p udp --sport 68 -j ULOG

iptables -t mangle -A OUTPUT -d IP_RED_LOCAL -j MARK --set-mark 200

iptables -A OUTPUT -m mark --mark 200 -p udp --dport 68 -j ULOG

• Paquete ForwardDhcpFrames_1_mipsel.ipk

Funcionamiento de nuestro mecanismo

DEMOSTRACIÓN

PRUEBAS Y RESULTADOS

Pruebas y resultados obtenidos

Comparación de 3 escenarios:

1.Switch con OpenWrt, sin configuraciones.

2.Ruteador con VLANs creadas.

3.Solución ejecutándose.

Pruebas y resultados obtenidos

Medición de:

1.Porcentaje de paquetes perdidos.

2.Tiempo de recepción de respuestas ARP.

3.Tiempo de transmisión de paquetes.

Paquetes perdidos

Respuestas ARP

Transmisión de datos

CONCLUSIONES

27

Conclusiones

No fue necesaria la implementación de un gran sistema. El nivel de rendimiento que obtendríamos por la

utilización de la librería libpcap no fue considerado inicialmente.

El tiempo en que una respuesta ARP llega a un nodo que realiza una consulta, no es considerado crítico, ya que únicamente las consultas ARP son afectadas y en una red, el porcentaje de tráfico ARP puede ser considerado despreciable.