IPv6 Day Seguridad - LACNIC
Transcript of IPv6 Day Seguridad - LACNIC
Contenido
2
� Introducción a Seguridadcon IPv6
� Amenazas de SeguridadIPv6
� Firewalling y Switching
� Recomendaciones de Seguridad IPv6
Mitos de Seguridad IPv6
� Mitos de Seguridad� Yo solo uso IPv4, no tengo que preocuparme de IPv6� IPv6 es más seguro que IPv4� Estoy expuesto: sin NAT ni direcciones privadas� IPv6 es algo muy nuevo para ser atacado
Clasificación Amenazas IPv6 (I)
4
� Tres categorías para amenazas seguridad IPv6:1. Ya existían con IPv4 y se comportan similar con IPv6
� Ejemplos: sniffing, ataques a otras capas, flooding
2. Ya existían con IPv4 y se comportan distinto con IPv6� Ejemplos: escaneo de red, amplificación (smurf)
3. Nuevas amenazas que aparecen con IPv6� Ejemplos: amenazas a NDP, Routing Header tipo 0, cabeceras de
extensión
Amenazas NDP (I)
5
� Neighbor Discovery Protocol (NDP) [RFC4861] es vulnerable a diversos ataques [RFC3756][RFC6583]
� La especificación original define el uso de IPsec para proteger los mensajes de ND. Por diversas razones en la práctica esta no es una solución
� SEcure Neighbor Discovery (SEND) [RFC3971] tiene como objetivo proteger ND
Amenazas NDP (II)
6
� Neighbor Advertisement no solicitado: MITM
Host A
Host B
Host C
IPa - aa:aa:aa:aa:aa:aaIPr - ff:ff:ff:ff:ff:ff
IPa
IPc
IPb
IPrMACa: aa:aa:aa:aa:aa:aa
MACc: cc:cc:cc:cc:cc:cc
MACb: bb:bb:bb:bb:bb:bb
MACr: ff:ff:ff:ff:ff:ff
1
IPv6 | ICMPv6: NA 1Target Addr.: IPbTarget Link-layer Addr.: cc:cc:cc:cc:cc:cc
IPb - bb:bb:bb:bb:bb:bbIPb - cc:cc:cc:cc:cc:cc
2
IPv6 | ICMPv6: NA 2Target Addr.: IPaTarget Link-layer Addr.: cc:cc:cc:cc:cc:cc
IPb - bb:bb:bb:bb:bb:bbIPr - ff:ff:ff:ff:ff:ffIPa - aa:aa:aa:aa:aa:aaIPa - cc:cc:cc:cc:cc:cc
IPv6 | Ethernet
Src = IPbDst = IPa
Src = MACbDst = MACc
IPv6 | Ethernet
Src = IPbDst = IPa
Src = MACcDst = MACa
IPv6 | Ethernet
Src = IPcDst = IPc
Src = MACaDst = MACc
IPv6 | Ethernet
Src = IPcDst = IPb
Src = MACcDst = MACb
345
6 3
4
5
6
Amenazas NDP (III)
7
� Ataques usando RAs:1. Atacante se hace pasar por router (Redir./Dos)2. Prefijo falso en el enlace (DoS)
3. Prefijo falso para configurar dirección (DoS)4. Parámetros falseados (DoS)
Amenazas NDP (IV)
8
� Neighbor Cache Exhaustion: DoS
Host A
Host B
Host C
IPa - aa:aa:aa:aa:aa:aaIPb - bb:bb:bb:bb:bb:bbIPr - ff:ff:ff:ff:ff:ff
IPa
IP1 = P::1 (2001:db8:1:2::1)
IPb
IPr = fe80::a:b:cMACa: aa:aa:aa:aa:aa:aa MACb: bb:bb:bb:bb:bb:bb
IP1 - ???
Prefijo LAN (P) = 2001:db8:1:2::/64
Internet
IP1
MACr: ff:ff:ff:ff:ff:ff
NS
IP2 = P::2 (2001:db8:1:2::2)
IP2 - ???
IP2
IPi = P:x:x:x:x…IPx - ???
…IP7 - ???IP6 - ???IP5 - ???IP4 - ???IP3 - ???
FHS (V)� Attack against IPv6 Router Discovery
Host AAttackerRouter
RS (Router Solicitation)
RA (Router Advertisement)
Spoofed/Fake RA from the attacker
Host A uses the Attacker IP as default GW
FHS (VI)� Attack against IPv6 Address Resolution Discovery
Host BAttacker
NS (Neigbor Solicitation)
Spoofed/Fake NA (Neigbor Advertisement)
Host A uses the Attacker MAC Address to reach Host B
Host A
FHS (VII)� Attack against IPv6 DAD
Host BAttacker
NS (Neigbor Solicitation) for 2001:db8::1
Spoofed/Fake NA (Neigbor Advertisement) from attacker
Host A will not autoconfigure 2001:db8:1
Host A
RH0 (I)� Routing Header (Type 0) puede ser usada para acumular tráfico
sobre un camino remoto con el propósito de degradar el tráfico o DoS
� Amenaza grave: Se prohibió su uso [RFC5095]� Sólo afecta a EH Routing Type 0.� Type 2 usada en MIPv6 [RFC6275], Type 3 usada en RPL [RFC6554]
siguen siendo válidas
Next Header Length8 bits 8 bits
32 bits
Address [1]
Routing Type=0Segments
Left
8 bits 8 bits
Reserved
128 bits
Address [n] 128 bits
…
RH0 (II)
IP1IP2
IP3
IPd
IPo
IPv6 Básica RH0 Upper
Layer
Source Addr. = IPoDest. Addr. = IP1
Length = 6Segments Letf = 3Addr[1] = IP2Addr[2] = IP1Addr[3] = IP2
IPv6 Básica RH0 Upper
Layer
Source Addr. = IPoDest. Addr. = IP2
Length = 6Segments Letf = 2Addr[1] = IP1, Addr[2] = IP1, Addr[3] = IP2 IPv6
Básica RH0 Upper Layer
Source Addr. = IPoDest. Addr. = IP1
Length = 6Segments Letf = 1Addr[1] = IP1, Addr[2] = IP2, Addr[3] = IP2
IPv6 Básica RH0 Upper
Layer
Source Addr. = IPoDest. Addr. = IP2
Length = 6Segments Letf = 0Addr[1] = IP1, Addr[2] = IP2, Addr[3] = IP1
IPv6 Básica RH0 Upper
Layer
Source Addr. = IPoDest. Addr. = IP2
Length = 6Segments Letf = 0Addr[1] = IP1, Addr[2] = IP2, Addr[3] = IP1
X
FHS (II)
15
� RA-GUARD DHCPv6 Guard
Fuente: http://www.cisco.com/c/en/us/products/ios-nx-os-software/ipv6-first-hop-security-fhs/index.html
FHS (III)
16 Módulo 4: Gestión de una Red IPv6
� IPv6 Snooping Source/Prefix Guard
Fuente: http://www.cisco.com/c/en/us/products/ios-nx-os-software/ipv6-first-hop-security-fhs/index.html
FHS (IV)
17
� IPv6 Destination Guard (o ND Resolution rate limiter)
Fuente: http://www.cisco.com/c/en/us/products/ios-nx-os-software/ipv6-first-hop-security-fhs/index.html
Introducción a Firewalling con IPv6
19
� Introducción:� En esta oportunidad se mencionan algunos aspectos
importantes que no se deben olvidar durante unaimplementación de IPv6 que contenga firewalls.
Firewalling con IPv6
20
� Tener en cuenta: No se pueden replicar ligeramente las reglasde IPv4 en IPv6� Se pueden replicar pero el trabajo no termina aquí !!
Firewalling con IPv6 (II)
21
� Prestar atención si es un firewall de borde o un firewall en el mismoequipo. Lo que vayamos a hacer puede ser diferente. Por ejemplo, enun firewall sobre el mismo dispositivo se debe permitir RS/RA, NS/NA.
� En los firewalls es muy importante permitir paquetes ICMPv6 PacketToo Big (PTB). De hecho, al momento de haber un problema deconectividad, los primeros pasos para resolver la situación es estar segurossi el PMTUD funciona correctamente (sin ICMPv6 PTB esto no funcionaría).
� Probablemente interese bloquear túneles automáticos (por seguridad).
RFC 4890
22
� Recommendations for Filtering ICMPv6 Messages in Firewalls
� Destination Unreacheable (Type 1)� Packet Too Big (PTB, needed for Path MTU Discovery)� Time Exceeded (Type 3 + Code 0)� Parameter Problem (Type 4 + Code 0,1,2)� Echo Requests (Echo Requests)� Echo Reponse (Type 129)
Cabecera ICMPv6
Firewalling – Filtrado de cabeceras
23
� Filtrado de cabeceras de extensión� Una cabecera que muy probablemente se desee filtrar sea
RH tipo 0 (Routing Header) – esto a pesar de ya haber sidodepreciada en el RFC 5095.� No bloquear todo RH0, solo ciertos tiempos de RH0
Routing header
� Bloquear RH Tipo 2 (mobilidad).
Firewalling – Filtrado de Tuneles
24
� Filtrado de túneles automáticos� 6to4 (bloquear prefijo 2001::/16)� Teredo (bloquear prefijo 2001::/32)
� Filtrado de túneles manuales� Bloquear protocolo 41 – IPv6 in IPv4