SlideShare una empresa de Scribd logo
Seguridad en  i pv6 (2)
Lic. Fernando Alonso
   CISSP, CCNA-Sec, GSEC
   Comenzó siendo IPng (Next
    Generation) a principios de
    los ‟90 por la IETF

   Comenzó su
    implementación en 1995

   En la actualidad IPv6 se está
    convirtiendo en una realidad
   Los software que implementan IPv6 son
    nuevos y todavía no han sido testeados lo
    suficiente para considerarlos confiables
    (Sobre      todo      en      el     stack).
    Microsoft, Juniper, Linux, Sun, BSD y Cisco
    han publicado vulnerabilidades en su
    software de IPv6

   En IPv4, las identificaciones de redes y
    hosts (Como protocolos de enrutamiento
    y DNS) se hacían in-line, dando lugar a
    Spoofing, Session Hijacking y DoS. Hoy
    esto sigue ocurriendo en IPv6, no se
    modificó.

   Ya existen Worms para IPv6, y software de
    Exploits, como Scapy6 y “Hackers‟choice
    IPv6 Toolkit”
   Tanto IPv4 como IPv6
    mantienen el mismo
    concepto de arqui-
    tectura de redes, por
    los que aspectos como
    asegurar perímetros o
    amenazas
    internas, deben seguir
    tenién-dose en cuenta.

   El concepto de Cisco
    Self Defending Network
    ya puede aplicarse en
    entornos de IPv6
Seguridad en  i pv6 (2)
   Cisco incorpora filtros en las ACL para
    headers IPv6.
   Funcionalidad: -Neighbor Discovery Protocol
    (NDP), Neighbor Advertisement (NA), Neighbor
    Solicitation (NS)
   Router Advertisements (RA) and Router Solicitations(RS)
   Echo Reply / Request
   PMTU (Proper MTU size)
   Multicast Listener Discovery (MLD)

   Mulsticast Router Discovery (MRD)
    Node Information Query (NIQ)
   Secure Neighbor Discovery
   Mobile IPv6
   IPv6 es susceptible a casi todos los mismos
    ataques que IPv4, y se le agregan nuevos
    inherentes debido a las funcionalidades de
    network discovery. Se deberían filtrar los
    protocolos de Network Discoveries en los
    borders gateways.

   Al permitir Multicast (Como por ejemplo en
    DHCP), permite a un atacante obtener
    información de toda una red con un solo
    query.
(config)# ipv6 access-list BLOCKMULTICAST
(config-ipv6-acl)# rem permit local-link
(config-ipv6-acl)# permit any ff02:: /16
(config-ipv6-acl)# permit ff02:: /16 any
(config-ipv6-acl)# rem deny other multicast
(config-ipv6-acl)# deny ipv6 any ff00::/16
(config-ipv6-acl)# deny ipv6 ff00:: /16 any
(config-ipv6-acl)# rem permit any other ipv6 packets
(config-ipv6-acl)# permit ipv6 any any
(config-ipv6-acl)# int fa0/0
(config-ipv6-acl)# ipv6 traffic-filter BLOCKMULTICAST   in
Seguridad en  i pv6 (2)
   Next Header Number 43 indica los nodos que
    se    deben      visitar. Implica   misma
    vulnerabilidad de Spoofing que “Source
    Routing” de IPv4.

   La complejidad de interconexión de Headers
    en la estructura facilita el DoS al mandar
    “crafted headers”, generando un “crash” en la
    supuesta victima.
   Ataque de “Router Alert”: El Router Alert es un campo que le indica al
    router como tiene que reaccionar ante un inconveniente (Hacer un
    „discard‟, generar una respuesta ICMPv6 determinada, hacer un forward
    a otro nodo,etc).

   Esto implica que cada vez que un
    router recibe un paquete con este
    campo activado, si o si el CPU del
    router   debe    procesarlo   para
    reaccionar ante un error.

   Esto demanda exceso de consumo
    de ciclos de CPU, y una gran
    cantidad de paquetes con esta
    característica puede generar una
    baja de performance en la red y
    hasta inclusive un DoS.
   Una de las opciones del paquete con RH es hacer un
    forward a otro nodo, se puede atacar a un nodo
    restringido por firewall o IPS, poniendo como IP destino un
    router y que este, haga un relay como IP origen a un
    destino restringido, pasando los filtros de seguridad, ya
    que el IP de origen es del mismo router.
   Routing header:
(config)# ipv6 access-list BLOCKRH
(config-ipv6-acl)# deny ipv6 any any routing


   RH0
(config-ipv6-acl)# deny ipv6 any any routing-type 0
   IPv6 tambien permite desfragmentación de
    paquetes, permitiendo como en IPv4 un DoS
    enviando      fragmentos      malformados, e
    inclusive evitar los IDS/IPS.
El ataque por fragmentación se puede mitigar a través de Access Lists:
(config-ipv6-acl)# deny ipv6 any 2001:db8:22:: /64 fragments
   Hoy en día es necesario
    que un firewall sea
    adaptable a IPv6

   Inclusive    durante  la
    implementación del pro-
    tocolo, debe haber de-
    tección de protocolo y
    filtrado IPv6 e IPv4
::1                  Deny   loopback address
::/96                Deny   IPv4 Compatible addresses (deprecated)
::/ffff:0.0.0.0/96   Deny   IPv4-Mapped addresses (obsolete)
::/8                 Deny   IPv4-Mapped addresses (obsolete)
::0.0.0.0/96         Deny   automatically tunneled packets using compatible addresses
::224.0.0.0/100      Deny   other compatible addresses
::127.0.0.0/104      Deny   other compatible addresses
::0.0.0.0/104        Deny   other compatible addresses
::255.0.0.0/104      Deny   other compatible addresses
2002:e000::/20       Deny   false 6to4 packets
2002:7f00::/24       Deny   false 6to4 packets
2002:0000::/24       Deny   false 6to4 packets
2002:ff00::/24       Deny   false 6to4 packets
2002:0a00::/24       Deny   false 6to4 packets
2002:ac10::/28       Deny   false 6to4 packets
2002:c0a8::/32       Deny   false 6to4 packets
fe80::/10            Deny   link-local addresses
fec0::/10            Deny   site-local addresses (deprecated)
fc00::/7             Deny   unique-local packets
ff00::/8             Deny   multicast packets (only as a source)
2001:db8::/32        Deny   documentation address
3ffe::/16            Deny   6bone addresses (deprecated)
   Si bien son más extensos en longitud, los headers IPv6 tienen menos
    campos por lo que la performance de chequeo es más ágil

   Algunos paquetes malformados intencionalmente pueden causar un
    DoS en el Firewall Perimetral por lo que éste debería estar
    configurado para hacer un „Drop‟ de los paquetes que no se
    adecúan a los estándares.
   Durante la actual implementación, muchas interfaces
    encapsulan un protocolo dentro de otro para llegar a
    destino (Header 41). Este método favorece el
    ocultamiento de un paquete pernicioso enmascarado en el
    túnel (Similar al GRE).

   Para esto los firewalls deberian examinar y filtrar los 2
    headers. El real y el encapsulado.
   Un firewall IPv6 debería también ser “Layer 2”
    y concatenar tráficos correctos de Neighbor
    Advertisement (NA), Neighbor Solicitation
    (NS), Router Advertisement (RA), Multicast, y
    otros.

   Un Firewall/Router no debería devolver
    paquetes ICMPv6 de lo ocurrido (Destination
    Unrecheable por ej.). Para no entregar datos
    fingering del appliance y su versión, de los
    hops de la red, de las reglas de filtrado, etc.
   Debido a la cantidad de direcciones
    disponibles que ofrece IPv6, NAT no es
    necesario de implementar desde el enfoque
    del diseño de red.

   Sin    embargo      si  es   necesario    por
    seguridad, debido a que oculta el armado de
    la red interna de reconocimientos externos.
   La opción “Reflect” ya viene adaptada para
    IPv6.

router(config)#ipv6 access-list IN-OUT

router(config-ipv6-acl)#permit tcp 2001:db8:11::/64 any eq 80
  reflect OUT-IN-REFLECT
   CBAC en IPv6
ipv6 inspect name inspection-name protocol [alert…] [audit-
  trail…][timeout…]
interface fa0/0
ipv6 inspect inspect-name {in|out}


Ejemplo, para evitar un ataque SYN-Flood
ipv6   inspect   tcp   synwait-time {segundos}
ipv6   inspect   tcp   idle-time {segundos}
ipv6   inspect   udp   idle-time {segundos}
ipv6   inspect   tcp   max-incomplete host <valor> [block-time <minutos>]
   IPv6 tiene un feature llamado Stateless Address
    Autoconfiguration (SLAAC) que automáticamente configura
    los parámetros de la red local.
   Este SLAAC se basa en los requests RA (Router
    Advertisement – ICMPv6 type 134) y RS (Router
    Solicitation).
   Este mensaje contiene información para configurar un
    host/interface en la LAN (Local Link) como:
    ◦ Local Prefix (Los 1eros 64 bits de las direcciones IPv6 de la LAN)
    ◦ Router Link Layer address
    ◦ Lifetime
    ◦ Router Priority (Cuando existen mas de un router en la LAN/Local
      Link, los enrutamientos elijen el de mayor prioridad)
    ◦ MTU
    ◦ Otros flags
Seguridad en  i pv6 (2)
Seguridad en  i pv6 (2)
   SLAAC no utiliza ningún tipo de autenticación.
   El ataque puede ser para una intrusion (Spoofing
    o MITM) o para causar un DoS.
   Esta vulnerabilidad no sólo es explotada por
    intrusos, sino tambien se puede producir por
    configuraciones incorrectas.
   Existe una herramienta llamada “fake_router6” en
    el paquete “van Hausers IPv6 Toolkit” (Es Open
    Source, se lo puede bajar en
    http://www.thc.org/thc-ipv6/) que produce este
    tipo de ataque para testear las redes.
Neighbor Discovery
 IPv6 utiliza NDP en lugar de ARP el cual funciona
  sobre ICMPv6
 Se envia un Neighbor Solicitation (NS – ICMPv6
  135) a una dirección multicast del Local Link
 El peer correspondiente responde con un
  Neighbor Advertisement (ICMPv6 136) con la
  MAC Address
 NDP no autentica, por lo que tiene las mismas
  vulnerabilidades de DoS, Spoofing y MITM que
  ARP en IPv4
Seguridad en  i pv6 (2)
Seguridad en  i pv6 (2)
Duplicate Address Detection
 Se utiliza para prevenir direcciones duplicadas.
 Cuando un host bootea y se asigna una IP
  estática en el local link, o se modifica su IP (Que
  no sea gobernada por un pool DHCP), este host
  emite un Neighbor Solicitation para esa IP.
 Si no recibe respuesta usa esa IP, si la recibe
  emite el host una inutilización de esa dirección.
 El DAD no utiliza autenticación, por lo que es
  suceptible a DoS
 Existe una tool en el Toolkit THC-IPv6: dos-new-
  IPv6 que justamente chequea este DoS en la LAN.
  (www.thc.org/thc-ipv6/)
Seguridad en  i pv6 (2)
Seguridad en  i pv6 (2)
Redirection
 IPv6 cuenta con un protocolo de “redirection”, que le
  permite a un host corregir cual es el router correcto
  para la salida de paquetes.
 Un host tiene un Router A para un destino
  determinado. Envia el paquete a ese router
 El Router A detecta que existe una mejor ruta
  (actualizada) por otro router del local-link, entonces
  reenvia el paquete a ese router y le envia un mensaje
  de “Redirection” (ICMPv6 type 137) al host para que
  corrija su tabla.
 Nuevamente, este protocolo no tiene autenticación.
 Se puede atacar la red con estos
  mensajes, generando nuevamente DoSs, Spoofing y
  MITM
Seguridad en  i pv6 (2)
SLAAC, NDP y DAD pueden protegerse:
 La dirección de origen debe estar dentro del
  rango del local-link
 El Hop-limit seteado en 255: Si el mensaje
  ICMPv6 es emitido por el mismo router
  dentro del local-link (LAN), entonces ningun
  router en el camino modificaría el Hop Count.
  Si el número es distinto a 255, el paquete
  debe descartarse.
   SEND usa el par de llave pública/privada
   Con SEND no se puede elegir la dirección de
    la interface, sino que la genera la llave
    pública. Para esto utiliza el prefijo de la
    Subnet, la llave y un “Modifier” aleatorio.
   Cada host, con su llave privada puede
    desencriptar la dirección completa
Seguridad en  i pv6 (2)
   Hoy en día cada dirección utiliza 62 bits (64 – 2).
    Esta combinación la hace dificil de romper por
    fuerza bruta, pero sin duda la evolución de los
    procesadores la hará vulnerable en el futuro.
   Cuando un nodo A quiere descubrir la MAC de un
    nodo B, realiza un multicast con el NS request
    compuesto por los parámetros CGA del nodo B.
    El nodo B puede desencriptarlo, interpretar el
    request y responderlo.
   Para prevenir un “Replay Attack” los routers le
    asignan un timestamp a los mensajes.
crypto key generate rsa label SEND modulus 1024
ipv6 cga generate modifier rsakeypair SEND
interface fa0/0
       ipv6 cga rsakeypair SEND
       ipv6 address FE80::/64 cga
       ipv6 address 2001:db8::/64 cga
   Los ataques de ICMPv6 se dan sobre una red
    local (o local-link) por lo que los sensores de
    este tipo de ataques deben estar distribuidos.
   Una solución es la implementación de IPS con
    firmas que detecten este tipo de ataque.
   Configurar los routers para que envíen
    paquetes RA con alta prioridad:

    interface fa0/0
     ipv6 nd router-preference high
     Este comando solo esta disponible en el IOS 12.4(2)T y el 12.2(33)SB
   Armar tablas estáticas dentro del local-link (Sólo
    conveniente para redes chicas)

ipv6 neighbor 2001:db8::215:58FF:FE28:27A3 ethernet 0 0015.5828.27a3


   Utilizar tools: Rafixd. Una herramienta basada en BSD. Esta
    tool detecta un mensaje RA falso y automáticamente
    manda a la red completa el mismo paquete pero con
    lifetime 0 para que sea descartado por todos los nodos.

   Reducir el alcance de estos ataques con VLANs

   El IETF está desarrollando un algoritmo por el que los
    switch durante la etapa learning toman las interfaces del
    local link, y una vez aprendidas y armaada la tabla, los
    paquetes de RA los descarta
   DHCP en IPv6 funciona
    en forma similar al
    IPv4

   Es suceptible a los
    mismos ataques que
    en IPv4.

    ◦   Starvation
    ◦   DoS
    ◦   Scanning
    ◦   Misinformation (Rogue
        DHCPv6)
   Starvation
    ◦ El intruso envía solicitudes como si fuera diferentes
      clientes, saturando la cantidad de direcciones.
    ◦ Con la cantidad de direcciones en IPv6 este tema se
      minimiza, pero debe ser tenido en cuenta
    ◦ Por mas variedad de direcciones que exista, si el
      pool de direcciones a entregar es chico, entonces es
      suceptible al ataque.
    ◦ Debe achicarse el timestamp para que libere con
      mas rapidez o por idle-time
   Ataque DoS
    ◦ Se le envian una cantidad muy grande de peticiones, en forma
      constante forzando al servidor a no poder soportar la carga y
      dejarlo fuera de servicio.
    ◦ Para esto, se puede configurar la red con QoS y asignarle una
      sección pequeña del ancho de banda al DHCP.
    ◦ Esto se puede realizar con los comandos CLASS-MAP
                     ipv6 access-list DHCPv6_REQUEST
                               permit udp any eq 546 any eq 547

                     class-map match-all DHCPv6_REQUEST_CLASS
                               match protocol ipv6
                               match access-group name DHCPv6_REQUEST

                     policy-map OUT-IN
                               class DHCPv6_REQUEST_CLASS
                               policy rate 8000 bps
                                         conform-action transmit
                                         exceed-action drop
                                         violate-action drop
                     interface gig0/1
                               load interval 30
                               ipv6 dhcp relay destination FF05::1:3
                               service-policy input OUT-IN
   Scanning
    ◦ Cuando un DHCP server entrega direcciones
      contiguas, un intruso en el local-link puede
      predecir direcciones válidas o ya en desuso para
      ingresar en la red.
    ◦ Para eso, existen versiones de software de DHCP
      servers (Ej: Cisco Network Registrar) que entregan
      las direcciones de un pool en forma aleatoria.
   Misinformation (Rogue DHCP Server)
                                 ◦ En este caso, un host se hace pasar
                                   por un DHCP en la red, enviando
                                   información de configuración DHCP
                                   dejando a un host fuera de servicio o
                                   situarlo dentro de su propio local-
                                   link.
                                 ◦ Este tipo de ataques se utilizaban para
                                   ingresar en redes protegidas por NAP
                                   de Microsoft o NAC de Cisco.
oUna forma de mitigarlo es con autenticación. Algunos DHCP server lo
ofrece y está explícito en la RFC 3315. Para esto deben existir una
adecuada administración de pre-shared keys, y sus respectivos
reemplazos por antiguedad.
oOtra forma de reducir el riesgo es con una minuciosa y adecuada

configuración de VLANs.
Seguridad en  i pv6 (2)
Seguridad en  i pv6 (2)

Más contenido relacionado

PDF
IPv6: Introducción y Ataques
PPTX
Implementación de NAT/PAT en routers Cisco
PDF
6sos instalacion ipv6_windows_v4_0
PPTX
PPT
PDF
3.3.3.4 lab using wireshark to view network traffic
ODP
Tecnologías libres para túneles y VPNs
PDF
IPv6 Modulo1
IPv6: Introducción y Ataques
Implementación de NAT/PAT en routers Cisco
6sos instalacion ipv6_windows_v4_0
3.3.3.4 lab using wireshark to view network traffic
Tecnologías libres para túneles y VPNs
IPv6 Modulo1

La actualidad más candente (20)

PDF
4.1 Gestión de trafico NAT
PPT
Exposicion sistemas seguridad_linux_software_libre
PDF
Fundamentos de RPKI y BGP
PPTX
Nat (network address translation) qué es y cómo funciona
PDF
IPv6 Modulo2
PPTX
Mecanismos de transición IPv6: Teredo, 6to4 y 6RD
PDF
José Selvi - Unprivileged Network Post-Exploitation [RootedCON 2011]
PPTX
Tecnicas avanzadas de penetracion a sistemas
ODP
Curso Avanzado Seguridad Redes
PDF
1. Conceptos OSPF
PPTX
Ccna security-ch2-securing-network-devices
PPT
DOCX
Transicion de ipv4 a ipv6
PDF
IPv6 Modulo3
PDF
Backtrack 5 manual traducido
PPT
Firewall hw
PDF
Webinar Gratuito "Wireshark"
PDF
Puertos bienconocidos
4.1 Gestión de trafico NAT
Exposicion sistemas seguridad_linux_software_libre
Fundamentos de RPKI y BGP
Nat (network address translation) qué es y cómo funciona
IPv6 Modulo2
Mecanismos de transición IPv6: Teredo, 6to4 y 6RD
José Selvi - Unprivileged Network Post-Exploitation [RootedCON 2011]
Tecnicas avanzadas de penetracion a sistemas
Curso Avanzado Seguridad Redes
1. Conceptos OSPF
Ccna security-ch2-securing-network-devices
Transicion de ipv4 a ipv6
IPv6 Modulo3
Backtrack 5 manual traducido
Firewall hw
Webinar Gratuito "Wireshark"
Puertos bienconocidos
Publicidad

Destacado (20)

PPS
El cuadrado magico de durero
PPTX
DBA, Clase abierta por Alejandro Moge
PPT
Webrtc"VoIP también desde el navegador"
PPT
Vo ip codec 2013
PPT
Presentacion voip codec_2013
PPT
WebRCT "VoIP también desde el navegador"
PPT
Vo ip analisis y medicion 17 10_2012
PPT
Presentacion voip codec_2013
PPTX
Recomendaciones y técnicas para la configuración de puertos de span
PPT
Webex: IT Essentials
PPTX
VPN (virtual private network)
PPTX
Webex: ¿Qué es CCNA?
PPSX
Cableado estructurado
PPTX
Introducción a mpls
PPTX
MPLS - Multiprotocol Label Switching v1.3
PPTX
Diapositivas mpls
PPT
Actualizacion de medidion en cobre y fibra optica
PPT
Asterix: simplemente...
PPT
VoIP sobre IPv6
PPTX
Introducción al Cableado Estructurado
El cuadrado magico de durero
DBA, Clase abierta por Alejandro Moge
Webrtc"VoIP también desde el navegador"
Vo ip codec 2013
Presentacion voip codec_2013
WebRCT "VoIP también desde el navegador"
Vo ip analisis y medicion 17 10_2012
Presentacion voip codec_2013
Recomendaciones y técnicas para la configuración de puertos de span
Webex: IT Essentials
VPN (virtual private network)
Webex: ¿Qué es CCNA?
Cableado estructurado
Introducción a mpls
MPLS - Multiprotocol Label Switching v1.3
Diapositivas mpls
Actualizacion de medidion en cobre y fibra optica
Asterix: simplemente...
VoIP sobre IPv6
Introducción al Cableado Estructurado
Publicidad

Similar a Seguridad en i pv6 (2) (20)

PPTX
Taller práctico de hacking a redes y servicios IPv6
PPTX
Ataque a redes de datos IPv6 con Evil Foca
PDF
Protocolo de red IPv6
PDF
8.2.5.4 lab identifying i pv6 addresses
PDF
3. OSPFv3 Redes IPv6
PDF
2. Configuración OSPF
PPTX
S07.s1 - Material tGDFHFGHFHDFHeórico.pptx
PPTX
Protocolo de Internet (IPv6) -Redes
PPTX
Implicaciones de seguridad en la implantación de i pv6
PPTX
IPv6 - Internet Protocol version 6 v2
PPTX
INTERNET PROTOCOL VRSION 6
PPT
presentacion-ipv6 (1).ppt
PPTX
ccna: redes de nat ipv4 stharlling cande
PPTX
ENSA_Module_6.pptx11111111111111111111111
PPTX
ENSA_Module_6.pptx11111111111111111111111
PDF
clase 01 DHCPv6.pdf
PPTX
Una introduccion a IPv6
PPT
Webex: Migración IPV4 a IPV6
Taller práctico de hacking a redes y servicios IPv6
Ataque a redes de datos IPv6 con Evil Foca
Protocolo de red IPv6
8.2.5.4 lab identifying i pv6 addresses
3. OSPFv3 Redes IPv6
2. Configuración OSPF
S07.s1 - Material tGDFHFGHFHDFHeórico.pptx
Protocolo de Internet (IPv6) -Redes
Implicaciones de seguridad en la implantación de i pv6
IPv6 - Internet Protocol version 6 v2
INTERNET PROTOCOL VRSION 6
presentacion-ipv6 (1).ppt
ccna: redes de nat ipv4 stharlling cande
ENSA_Module_6.pptx11111111111111111111111
ENSA_Module_6.pptx11111111111111111111111
clase 01 DHCPv6.pdf
Una introduccion a IPv6
Webex: Migración IPV4 a IPV6

Más de Fundación Proydesa (12)

PPTX
Voice OVER IP
PPT
WebRCT - Comunicaciones en tiempo real desde el navegador...
PPTX
Webex: Red Hat Academy
PPT
PPTX
La nueva privacidad en internet y sus consecuencias
PPT
Voip webex310512
PPT
Presentacion PL/SQL
PPT
Análisis y soluciones wireless
PPT
Extracto Herramientas Estratégicas
PPT
PPTX
Tendencias de seguridad en redes
PPTX
Proydesa | CCF
Voice OVER IP
WebRCT - Comunicaciones en tiempo real desde el navegador...
Webex: Red Hat Academy
La nueva privacidad en internet y sus consecuencias
Voip webex310512
Presentacion PL/SQL
Análisis y soluciones wireless
Extracto Herramientas Estratégicas
Tendencias de seguridad en redes
Proydesa | CCF

Seguridad en i pv6 (2)

  • 2. Lic. Fernando Alonso CISSP, CCNA-Sec, GSEC
  • 3. Comenzó siendo IPng (Next Generation) a principios de los ‟90 por la IETF  Comenzó su implementación en 1995  En la actualidad IPv6 se está convirtiendo en una realidad
  • 4. Los software que implementan IPv6 son nuevos y todavía no han sido testeados lo suficiente para considerarlos confiables (Sobre todo en el stack). Microsoft, Juniper, Linux, Sun, BSD y Cisco han publicado vulnerabilidades en su software de IPv6  En IPv4, las identificaciones de redes y hosts (Como protocolos de enrutamiento y DNS) se hacían in-line, dando lugar a Spoofing, Session Hijacking y DoS. Hoy esto sigue ocurriendo en IPv6, no se modificó.  Ya existen Worms para IPv6, y software de Exploits, como Scapy6 y “Hackers‟choice IPv6 Toolkit”
  • 5. Tanto IPv4 como IPv6 mantienen el mismo concepto de arqui- tectura de redes, por los que aspectos como asegurar perímetros o amenazas internas, deben seguir tenién-dose en cuenta.  El concepto de Cisco Self Defending Network ya puede aplicarse en entornos de IPv6
  • 7. Cisco incorpora filtros en las ACL para headers IPv6.
  • 8. Funcionalidad: -Neighbor Discovery Protocol (NDP), Neighbor Advertisement (NA), Neighbor Solicitation (NS)  Router Advertisements (RA) and Router Solicitations(RS)  Echo Reply / Request  PMTU (Proper MTU size)  Multicast Listener Discovery (MLD)   Mulsticast Router Discovery (MRD) Node Information Query (NIQ)  Secure Neighbor Discovery  Mobile IPv6
  • 9. IPv6 es susceptible a casi todos los mismos ataques que IPv4, y se le agregan nuevos inherentes debido a las funcionalidades de network discovery. Se deberían filtrar los protocolos de Network Discoveries en los borders gateways.  Al permitir Multicast (Como por ejemplo en DHCP), permite a un atacante obtener información de toda una red con un solo query.
  • 10. (config)# ipv6 access-list BLOCKMULTICAST (config-ipv6-acl)# rem permit local-link (config-ipv6-acl)# permit any ff02:: /16 (config-ipv6-acl)# permit ff02:: /16 any (config-ipv6-acl)# rem deny other multicast (config-ipv6-acl)# deny ipv6 any ff00::/16 (config-ipv6-acl)# deny ipv6 ff00:: /16 any (config-ipv6-acl)# rem permit any other ipv6 packets (config-ipv6-acl)# permit ipv6 any any (config-ipv6-acl)# int fa0/0 (config-ipv6-acl)# ipv6 traffic-filter BLOCKMULTICAST in
  • 12. Next Header Number 43 indica los nodos que se deben visitar. Implica misma vulnerabilidad de Spoofing que “Source Routing” de IPv4.  La complejidad de interconexión de Headers en la estructura facilita el DoS al mandar “crafted headers”, generando un “crash” en la supuesta victima.
  • 13. Ataque de “Router Alert”: El Router Alert es un campo que le indica al router como tiene que reaccionar ante un inconveniente (Hacer un „discard‟, generar una respuesta ICMPv6 determinada, hacer un forward a otro nodo,etc).  Esto implica que cada vez que un router recibe un paquete con este campo activado, si o si el CPU del router debe procesarlo para reaccionar ante un error.  Esto demanda exceso de consumo de ciclos de CPU, y una gran cantidad de paquetes con esta característica puede generar una baja de performance en la red y hasta inclusive un DoS.
  • 14. Una de las opciones del paquete con RH es hacer un forward a otro nodo, se puede atacar a un nodo restringido por firewall o IPS, poniendo como IP destino un router y que este, haga un relay como IP origen a un destino restringido, pasando los filtros de seguridad, ya que el IP de origen es del mismo router.
  • 15. Routing header: (config)# ipv6 access-list BLOCKRH (config-ipv6-acl)# deny ipv6 any any routing  RH0 (config-ipv6-acl)# deny ipv6 any any routing-type 0
  • 16. IPv6 tambien permite desfragmentación de paquetes, permitiendo como en IPv4 un DoS enviando fragmentos malformados, e inclusive evitar los IDS/IPS.
  • 17. El ataque por fragmentación se puede mitigar a través de Access Lists: (config-ipv6-acl)# deny ipv6 any 2001:db8:22:: /64 fragments
  • 18. Hoy en día es necesario que un firewall sea adaptable a IPv6  Inclusive durante la implementación del pro- tocolo, debe haber de- tección de protocolo y filtrado IPv6 e IPv4
  • 19. ::1 Deny loopback address ::/96 Deny IPv4 Compatible addresses (deprecated) ::/ffff:0.0.0.0/96 Deny IPv4-Mapped addresses (obsolete) ::/8 Deny IPv4-Mapped addresses (obsolete) ::0.0.0.0/96 Deny automatically tunneled packets using compatible addresses ::224.0.0.0/100 Deny other compatible addresses ::127.0.0.0/104 Deny other compatible addresses ::0.0.0.0/104 Deny other compatible addresses ::255.0.0.0/104 Deny other compatible addresses 2002:e000::/20 Deny false 6to4 packets 2002:7f00::/24 Deny false 6to4 packets 2002:0000::/24 Deny false 6to4 packets 2002:ff00::/24 Deny false 6to4 packets 2002:0a00::/24 Deny false 6to4 packets 2002:ac10::/28 Deny false 6to4 packets 2002:c0a8::/32 Deny false 6to4 packets fe80::/10 Deny link-local addresses fec0::/10 Deny site-local addresses (deprecated) fc00::/7 Deny unique-local packets ff00::/8 Deny multicast packets (only as a source) 2001:db8::/32 Deny documentation address 3ffe::/16 Deny 6bone addresses (deprecated)
  • 20. Si bien son más extensos en longitud, los headers IPv6 tienen menos campos por lo que la performance de chequeo es más ágil  Algunos paquetes malformados intencionalmente pueden causar un DoS en el Firewall Perimetral por lo que éste debería estar configurado para hacer un „Drop‟ de los paquetes que no se adecúan a los estándares.
  • 21. Durante la actual implementación, muchas interfaces encapsulan un protocolo dentro de otro para llegar a destino (Header 41). Este método favorece el ocultamiento de un paquete pernicioso enmascarado en el túnel (Similar al GRE).  Para esto los firewalls deberian examinar y filtrar los 2 headers. El real y el encapsulado.
  • 22. Un firewall IPv6 debería también ser “Layer 2” y concatenar tráficos correctos de Neighbor Advertisement (NA), Neighbor Solicitation (NS), Router Advertisement (RA), Multicast, y otros.  Un Firewall/Router no debería devolver paquetes ICMPv6 de lo ocurrido (Destination Unrecheable por ej.). Para no entregar datos fingering del appliance y su versión, de los hops de la red, de las reglas de filtrado, etc.
  • 23. Debido a la cantidad de direcciones disponibles que ofrece IPv6, NAT no es necesario de implementar desde el enfoque del diseño de red.  Sin embargo si es necesario por seguridad, debido a que oculta el armado de la red interna de reconocimientos externos.
  • 24. La opción “Reflect” ya viene adaptada para IPv6. router(config)#ipv6 access-list IN-OUT router(config-ipv6-acl)#permit tcp 2001:db8:11::/64 any eq 80 reflect OUT-IN-REFLECT
  • 25. CBAC en IPv6 ipv6 inspect name inspection-name protocol [alert…] [audit- trail…][timeout…] interface fa0/0 ipv6 inspect inspect-name {in|out} Ejemplo, para evitar un ataque SYN-Flood ipv6 inspect tcp synwait-time {segundos} ipv6 inspect tcp idle-time {segundos} ipv6 inspect udp idle-time {segundos} ipv6 inspect tcp max-incomplete host <valor> [block-time <minutos>]
  • 26. IPv6 tiene un feature llamado Stateless Address Autoconfiguration (SLAAC) que automáticamente configura los parámetros de la red local.  Este SLAAC se basa en los requests RA (Router Advertisement – ICMPv6 type 134) y RS (Router Solicitation).  Este mensaje contiene información para configurar un host/interface en la LAN (Local Link) como: ◦ Local Prefix (Los 1eros 64 bits de las direcciones IPv6 de la LAN) ◦ Router Link Layer address ◦ Lifetime ◦ Router Priority (Cuando existen mas de un router en la LAN/Local Link, los enrutamientos elijen el de mayor prioridad) ◦ MTU ◦ Otros flags
  • 29. SLAAC no utiliza ningún tipo de autenticación.  El ataque puede ser para una intrusion (Spoofing o MITM) o para causar un DoS.  Esta vulnerabilidad no sólo es explotada por intrusos, sino tambien se puede producir por configuraciones incorrectas.  Existe una herramienta llamada “fake_router6” en el paquete “van Hausers IPv6 Toolkit” (Es Open Source, se lo puede bajar en http://www.thc.org/thc-ipv6/) que produce este tipo de ataque para testear las redes.
  • 30. Neighbor Discovery  IPv6 utiliza NDP en lugar de ARP el cual funciona sobre ICMPv6  Se envia un Neighbor Solicitation (NS – ICMPv6 135) a una dirección multicast del Local Link  El peer correspondiente responde con un Neighbor Advertisement (ICMPv6 136) con la MAC Address  NDP no autentica, por lo que tiene las mismas vulnerabilidades de DoS, Spoofing y MITM que ARP en IPv4
  • 33. Duplicate Address Detection  Se utiliza para prevenir direcciones duplicadas.  Cuando un host bootea y se asigna una IP estática en el local link, o se modifica su IP (Que no sea gobernada por un pool DHCP), este host emite un Neighbor Solicitation para esa IP.  Si no recibe respuesta usa esa IP, si la recibe emite el host una inutilización de esa dirección.  El DAD no utiliza autenticación, por lo que es suceptible a DoS  Existe una tool en el Toolkit THC-IPv6: dos-new- IPv6 que justamente chequea este DoS en la LAN. (www.thc.org/thc-ipv6/)
  • 36. Redirection  IPv6 cuenta con un protocolo de “redirection”, que le permite a un host corregir cual es el router correcto para la salida de paquetes.  Un host tiene un Router A para un destino determinado. Envia el paquete a ese router  El Router A detecta que existe una mejor ruta (actualizada) por otro router del local-link, entonces reenvia el paquete a ese router y le envia un mensaje de “Redirection” (ICMPv6 type 137) al host para que corrija su tabla.  Nuevamente, este protocolo no tiene autenticación.  Se puede atacar la red con estos mensajes, generando nuevamente DoSs, Spoofing y MITM
  • 38. SLAAC, NDP y DAD pueden protegerse:  La dirección de origen debe estar dentro del rango del local-link  El Hop-limit seteado en 255: Si el mensaje ICMPv6 es emitido por el mismo router dentro del local-link (LAN), entonces ningun router en el camino modificaría el Hop Count. Si el número es distinto a 255, el paquete debe descartarse.
  • 39. SEND usa el par de llave pública/privada  Con SEND no se puede elegir la dirección de la interface, sino que la genera la llave pública. Para esto utiliza el prefijo de la Subnet, la llave y un “Modifier” aleatorio.  Cada host, con su llave privada puede desencriptar la dirección completa
  • 41. Hoy en día cada dirección utiliza 62 bits (64 – 2). Esta combinación la hace dificil de romper por fuerza bruta, pero sin duda la evolución de los procesadores la hará vulnerable en el futuro.  Cuando un nodo A quiere descubrir la MAC de un nodo B, realiza un multicast con el NS request compuesto por los parámetros CGA del nodo B. El nodo B puede desencriptarlo, interpretar el request y responderlo.  Para prevenir un “Replay Attack” los routers le asignan un timestamp a los mensajes.
  • 42. crypto key generate rsa label SEND modulus 1024 ipv6 cga generate modifier rsakeypair SEND interface fa0/0 ipv6 cga rsakeypair SEND ipv6 address FE80::/64 cga ipv6 address 2001:db8::/64 cga
  • 43. Los ataques de ICMPv6 se dan sobre una red local (o local-link) por lo que los sensores de este tipo de ataques deben estar distribuidos.  Una solución es la implementación de IPS con firmas que detecten este tipo de ataque.  Configurar los routers para que envíen paquetes RA con alta prioridad: interface fa0/0 ipv6 nd router-preference high Este comando solo esta disponible en el IOS 12.4(2)T y el 12.2(33)SB
  • 44. Armar tablas estáticas dentro del local-link (Sólo conveniente para redes chicas) ipv6 neighbor 2001:db8::215:58FF:FE28:27A3 ethernet 0 0015.5828.27a3  Utilizar tools: Rafixd. Una herramienta basada en BSD. Esta tool detecta un mensaje RA falso y automáticamente manda a la red completa el mismo paquete pero con lifetime 0 para que sea descartado por todos los nodos.  Reducir el alcance de estos ataques con VLANs  El IETF está desarrollando un algoritmo por el que los switch durante la etapa learning toman las interfaces del local link, y una vez aprendidas y armaada la tabla, los paquetes de RA los descarta
  • 45. DHCP en IPv6 funciona en forma similar al IPv4  Es suceptible a los mismos ataques que en IPv4. ◦ Starvation ◦ DoS ◦ Scanning ◦ Misinformation (Rogue DHCPv6)
  • 46. Starvation ◦ El intruso envía solicitudes como si fuera diferentes clientes, saturando la cantidad de direcciones. ◦ Con la cantidad de direcciones en IPv6 este tema se minimiza, pero debe ser tenido en cuenta ◦ Por mas variedad de direcciones que exista, si el pool de direcciones a entregar es chico, entonces es suceptible al ataque. ◦ Debe achicarse el timestamp para que libere con mas rapidez o por idle-time
  • 47. Ataque DoS ◦ Se le envian una cantidad muy grande de peticiones, en forma constante forzando al servidor a no poder soportar la carga y dejarlo fuera de servicio. ◦ Para esto, se puede configurar la red con QoS y asignarle una sección pequeña del ancho de banda al DHCP. ◦ Esto se puede realizar con los comandos CLASS-MAP ipv6 access-list DHCPv6_REQUEST permit udp any eq 546 any eq 547 class-map match-all DHCPv6_REQUEST_CLASS match protocol ipv6 match access-group name DHCPv6_REQUEST policy-map OUT-IN class DHCPv6_REQUEST_CLASS policy rate 8000 bps conform-action transmit exceed-action drop violate-action drop interface gig0/1 load interval 30 ipv6 dhcp relay destination FF05::1:3 service-policy input OUT-IN
  • 48. Scanning ◦ Cuando un DHCP server entrega direcciones contiguas, un intruso en el local-link puede predecir direcciones válidas o ya en desuso para ingresar en la red. ◦ Para eso, existen versiones de software de DHCP servers (Ej: Cisco Network Registrar) que entregan las direcciones de un pool en forma aleatoria.
  • 49. Misinformation (Rogue DHCP Server) ◦ En este caso, un host se hace pasar por un DHCP en la red, enviando información de configuración DHCP dejando a un host fuera de servicio o situarlo dentro de su propio local- link. ◦ Este tipo de ataques se utilizaban para ingresar en redes protegidas por NAP de Microsoft o NAC de Cisco. oUna forma de mitigarlo es con autenticación. Algunos DHCP server lo ofrece y está explícito en la RFC 3315. Para esto deben existir una adecuada administración de pre-shared keys, y sus respectivos reemplazos por antiguedad. oOtra forma de reducir el riesgo es con una minuciosa y adecuada configuración de VLANs.