1 “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. 1
2 AGENDA Funcionamiento del protocolo ARPEl problema: Envenenamiento a la caché ARP Objetivos Solución: Análisis y Diseño Solución: Implementación Demostración Pruebas y Resultados Conclusiones
3 FUNCIONAMIENTO DEL PROTOCOLO ARP
4 ARP (Address Resolution Protocol)IP addr Mac addr 00:44:33:08:A3:C0 IP addr Mac addr IP addr Mac addr IP addr Mac addr 17:44:07:BB:24:C5 Alice Bob 17:44:07:BB:24:C5 00:44:33:08:A3:C0 Carol Alice se comunica con Bob éxitosamente IP addr Mac addr IP addr Mac addr 17:44:07:BB:24:C5
5 EL PROBLEMA: ENVENENAMIENTO A LA CACHÉ ARP
6 El problema 6 6
7 OBJETIVOS
8 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. 8
9 SOLUCIÓN: ANÁLISIS Y DISEÑO9
10 Análisis y Diseño La solución la integran 2 elementos: Switch.Servidor. 10
11 Diseño Inicial 11
12 Diseño final 12
13 SOLUCIÓN: IMPLEMENTACIÓN13
14 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 14
15 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: 15
16 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 16
17 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 17
18 Funcionamiento de nuestro mecanismo
19 DEMOSTRACIÓN 19
20 PRUEBAS Y RESULTADOS 20
21 Pruebas y resultados obtenidosComparación de 3 escenarios: Switch con OpenWrt, sin configuraciones. Ruteador con VLANs creadas. Solución ejecutándose. 21
22 Pruebas y resultados obtenidosMedición de: Porcentaje de paquetes perdidos. Tiempo de recepción de respuestas ARP. Tiempo de transmisión de paquetes. 22
23 Paquetes perdidos 23
24 Respuestas ARP 24
25 Transmisión de datos 25
26 CONCLUSIONES 26
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. 27 27