ipv6 day seguridad - lacnic

25
IPv6 Day Alejandro Acosta LACNIC alejandro @ lacnic dot net / @ITandNetworking 1 Seguridad 2019

Upload: others

Post on 28-Mar-2022

3 views

Category:

Documents


0 download

TRANSCRIPT

IPv6 Day

Alejandro AcostaLACNIC

alejandro @ lacnic dot net / @ITandNetworking

1

Seguridad

2019

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

Recomendacionesde

Seguridad

14

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

Firewalling

18

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

¿Preguntas /Dudas ?Alejandro Acosta

alejandro at lacnic dot net@ITandNetworking

25