CHIVILCOY 16  de Octubre 200 4 CHIVI GUILi SEGURIDAD EN LAYER 2 02 LINUXFEST
AGENDA Ataques basados en direcciones MAC Ataques de VLAN “Hopping” Ataques de ARP Ataques de DHCP Ataques al algoritmo de Spanning Tree Otros ataques LINUXFEST 02 CHIVI GUILi SEGURIDAD EN LAYER 2
02 CHIVI GUILi Los ataques se asumen sobre redes basadas en switches Ethernet que transportan IP. Si se usa Ethernet compartido (WLAN,Hubs,etc) los ataques son aun mas sencillos de ejecutar. Si usa tecnologia diferente a Ethernet, algunos de  estos ataques pueden no funcionar, pero seguro  que se va a encontrar con otros problemas. SEGURIDAD EN LAYER 2 LINUXFEST
02 CHIVI GUILi Ataques MAC SEGURIDAD EN LAYER 2 LINUXFEST
02 CHIVI GUILi SEGURIDAD EN LAYER 2 Direccion MAC/Tabla de CAM 48 bit Hex (Base 16), direccion (supuestamente) unica 1234.5678.9ABC 1ros 24 bits = Fabricante Asignado por IEEE 2dos 24 bits = Interfaz Puntual, Asignado por el fabricante 0000.ocXX.XXXX XXXX.XX00.0001 F’s = Broadcast FFFF.FFFF.FFFF - Tabla de CAM = Content Addressable Memory - La CAM recuerda las direcciones MAC presentes en cada port, y las  asigna a las correspondientes VLANS junto con sus parametros asociados. - La tabla CAM tienen un tamaño fijo. LINUXFEST
02 CHIVI GUILi SEGURIDAD EN LAYER 2 LINUXFEST Comportamiento Normal de una CAM (1/3) MAC A MAC B MAC C Veo trafico para B! Port 2 Port 3 Port 1 No conozco a B... Inundo los ports! MAC Port A  1 C  3 A->B A->B A->B
02 CHIVI GUILi SEGURIDAD EN LAYER 2 LINUXFEST Comportamiento Normal de una CAM (2/3) MAC A MAC B MAC C Port 2 Port 3 Port 1 A esta en  Port 1 Aprendo: B esta en  Port 2 MAC Port A  1 B  2 C  3 A->B A->B
02 CHIVI GUILi SEGURIDAD EN LAYER 2 LINUXFEST Comportamiento Normal de una CAM (3/3) MAC A MAC B MAC C Port 2 Port 3 Port 1 B esta en port 2 MAC Port A  1 B  2 C  3 No veo trafico para B! A->B A->B
02 CHIVI GUILi SEGURIDAD EN LAYER 2 INUNDACION DE CAMs (1/3) Concepto teorico hasta Mayo de 1999 “ macof” desde Mayo 1999 (apenas 100 leneas de perl) Basado en el tamaño fijo de la tabla de CAM LINUXFEST
02 CHIVI GUILi SEGURIDAD EN LAYER 2 LINUXFEST MAC A MAC B MAC C Port 2 Port 3 Port 1 X en Port 3 MAC Port X  3 Y  3 C  3 INUNDACION DE CAMs (2/3) Y en Port 3 A->B X->? Y->?
02 CHIVI GUILi SEGURIDAD EN LAYER 2 LINUXFEST MAC A MAC B MAC C Port 2 Port 3 Port 1 B no lo conozco.... Inundo el frame MAC Port X  3 Y  3 C  3 INUNDACION DE CAMs (3/3) Veo trafico para B! A->B A->B A->B
02 CHIVI GUILi Ataques ARP SEGURIDAD EN LAYER 2 LINUXFEST
02 CHIVI GUILi ARP Revision SEGURIDAD EN LAYER 2 LINUXFEST V Z W Y X V Z W Y X V Z W Y X El “ARP Request” se deberia enviar  a todas las maquinas de la red en un frame de broadcast. Cada estacion recibe el ARP y  compara contra su IP. La estacion referida contesta al  Pedido; el resto descartan el pedido Sin enviar respuesta.
02 CHIVI GUILi SEGURIDAD EN LAYER 2 LINUXFEST DSNIFF – Una Colección de chiches para ARP spoofing MAC floodin Sniffing selectivo Interception SSH/SSL
02 CHIVI GUILi Gratuitous ARP SEGURIDAD EN LAYER 2 LINUXFEST V Z W Y X Gratuitous ARP es usado por los hosts para “anunciar” sus Ips a la red local y evitar direcciones IP duplicadas; las estaciones hacen caching de estos datos enviados a la red para estar listas  Host W: Hola a todos! Soy host W y mi IP es 1.2.3.4 y mi MAC es 12:34:56:78:9A:BC
02 CHIVI GUILi Uso abusivo Gratuitous ARP SEGURIDAD EN LAYER 2 LINUXFEST ARP no ofrece seguridad ni concepto de “propiedad” de MAC o direccion IP Y si hacemos lo siguiente ? 1.2.3.0/24 .1 . 2 . 4 . 3 Host Y Host X Host W Host W irradia “Soy 1.2.3.1, MAC “12:34:56:78:9A:BC” Espera 5 Segundos Host W irradia “Soy 1.2.3.1, MAC “12:34:56:78:9A:BC”
02 CHIVI GUILi TEST SEGURIDAD EN LAYER 2 LINUXFEST 1.2.3.0/24 .1 . 2 . 4 . 3 Host Y Host X Host W Si Y solicita la MAC de 1.2.3.1, el router responde y la comunicación funcionara hasta que W envie un gratuitous ARP. Aun con ARP estatico de 1.2.3.1 configurado en Y, en algunos sistemas operativos (NT4, Windows 2000) esta informacion sera reemplazada por la de Gratuitos ARP.
02 CHIVI GUILi SEGURIDAD EN LAYER 2 LINUXFEST Arpspoof en accion C:\>test C:\>arp –d 15.1.1.1 C:\>ping –n 1 15.1.1.1 Pinging 15.1.1.1 with 32 bytes Reply from 15.1.1.1 bytes=32 time<10ms TTL=255 C:\>arp –a Interface: 15.1.1.26 on Interface 2 Internet Address Physical Address Type
02 CHIVI GUILi SEGURIDAD EN LAYER 2 LINUXFEST Mas de ARPspoof Todo el trafico fluye a traves de la maquina que corre dsniff, en modo half-duplex. No es un sniffer, pero se le parece bastante El ataque puede generarse en el sentido opuesto, al hacer spoofing del host destino cuando el router “busca” al host en su ARP request.
02 CHIVI GUILi SEGURIDAD EN LAYER 2 LINUXFEST Sniffing Selectivo Una vez que la estacion dsniff arranca el proceso arpspoof, la magia comienza: [root@linux dsniff-2.3]# ./dsniff –c dsniff: listening on eth0 ---------------------------- 07/17/01 10:09:48 tcp 15.1.1.26.1126 -> wwwi –abc.cisco.com.80 (http) Get /SERVICE/Pqging/page/ HTTP/1.1 Host: wwwin-abc.cisco.com Authorization: Basic c2NvBsfdfsGfggffgdS34FFFF== [myuser:mypassword] Soporta mas de 30 Protocolos Estándar y propietarios:
02 CHIVI GUILi SEGURIDAD EN LAYER 2 LINUXFEST ATAQUES VIA DHCP DHCP  ( RFC1531 )  es usado para entregar automaticamente direcciones IP y otros parametros de red. De esta manera no es necesario tener asignadas las direcciones IP estaticamente.
02 CHIVI GUILi SEGURIDAD EN LAYER 2 LINUXFEST DHCP SECUENCIA NORMAL 1.2.3.0/24 .1 . 4 . 3 Host Y Host X DHCP Server . 2 DHCP ? DHCP ? IP 2 ? GW .1 IP 2 ? GW .1 IP 2 OK IP 2 OK
02 CHIVI GUILi Rogue DHCP server SEGURIDAD EN LAYER 2 LINUXFEST Seteando un rogue DHCP server, un hacker puede crear las condiciones necesarias para armar un ataque. El control del server DHCP puede ayudar al hacker a redireccionar el trafico a su maquina ( ataque de main in the midle ) o enviar a los usarios a falsas paginas web. Esto dado que un server DHCP puede setear varias opciones, DNS Server, Default Gateway… 1.2.3.0/24 .1 . 4 . 3 Host Y Host X DHCP Server . 2 GW .3 DNS .3 DHCP ? IP 2 ? GW .3 DNS .3 IP 2 OK BANCO ? .XXX Banco Banco .XXX

Seguridad layer 2

  • 1.
    CHIVILCOY 16 de Octubre 200 4 CHIVI GUILi SEGURIDAD EN LAYER 2 02 LINUXFEST
  • 2.
    AGENDA Ataques basadosen direcciones MAC Ataques de VLAN “Hopping” Ataques de ARP Ataques de DHCP Ataques al algoritmo de Spanning Tree Otros ataques LINUXFEST 02 CHIVI GUILi SEGURIDAD EN LAYER 2
  • 3.
    02 CHIVI GUILiLos ataques se asumen sobre redes basadas en switches Ethernet que transportan IP. Si se usa Ethernet compartido (WLAN,Hubs,etc) los ataques son aun mas sencillos de ejecutar. Si usa tecnologia diferente a Ethernet, algunos de estos ataques pueden no funcionar, pero seguro que se va a encontrar con otros problemas. SEGURIDAD EN LAYER 2 LINUXFEST
  • 4.
    02 CHIVI GUILiAtaques MAC SEGURIDAD EN LAYER 2 LINUXFEST
  • 5.
    02 CHIVI GUILiSEGURIDAD EN LAYER 2 Direccion MAC/Tabla de CAM 48 bit Hex (Base 16), direccion (supuestamente) unica 1234.5678.9ABC 1ros 24 bits = Fabricante Asignado por IEEE 2dos 24 bits = Interfaz Puntual, Asignado por el fabricante 0000.ocXX.XXXX XXXX.XX00.0001 F’s = Broadcast FFFF.FFFF.FFFF - Tabla de CAM = Content Addressable Memory - La CAM recuerda las direcciones MAC presentes en cada port, y las asigna a las correspondientes VLANS junto con sus parametros asociados. - La tabla CAM tienen un tamaño fijo. LINUXFEST
  • 6.
    02 CHIVI GUILiSEGURIDAD EN LAYER 2 LINUXFEST Comportamiento Normal de una CAM (1/3) MAC A MAC B MAC C Veo trafico para B! Port 2 Port 3 Port 1 No conozco a B... Inundo los ports! MAC Port A 1 C 3 A->B A->B A->B
  • 7.
    02 CHIVI GUILiSEGURIDAD EN LAYER 2 LINUXFEST Comportamiento Normal de una CAM (2/3) MAC A MAC B MAC C Port 2 Port 3 Port 1 A esta en Port 1 Aprendo: B esta en Port 2 MAC Port A 1 B 2 C 3 A->B A->B
  • 8.
    02 CHIVI GUILiSEGURIDAD EN LAYER 2 LINUXFEST Comportamiento Normal de una CAM (3/3) MAC A MAC B MAC C Port 2 Port 3 Port 1 B esta en port 2 MAC Port A 1 B 2 C 3 No veo trafico para B! A->B A->B
  • 9.
    02 CHIVI GUILiSEGURIDAD EN LAYER 2 INUNDACION DE CAMs (1/3) Concepto teorico hasta Mayo de 1999 “ macof” desde Mayo 1999 (apenas 100 leneas de perl) Basado en el tamaño fijo de la tabla de CAM LINUXFEST
  • 10.
    02 CHIVI GUILiSEGURIDAD EN LAYER 2 LINUXFEST MAC A MAC B MAC C Port 2 Port 3 Port 1 X en Port 3 MAC Port X 3 Y 3 C 3 INUNDACION DE CAMs (2/3) Y en Port 3 A->B X->? Y->?
  • 11.
    02 CHIVI GUILiSEGURIDAD EN LAYER 2 LINUXFEST MAC A MAC B MAC C Port 2 Port 3 Port 1 B no lo conozco.... Inundo el frame MAC Port X 3 Y 3 C 3 INUNDACION DE CAMs (3/3) Veo trafico para B! A->B A->B A->B
  • 12.
    02 CHIVI GUILiAtaques ARP SEGURIDAD EN LAYER 2 LINUXFEST
  • 13.
    02 CHIVI GUILiARP Revision SEGURIDAD EN LAYER 2 LINUXFEST V Z W Y X V Z W Y X V Z W Y X El “ARP Request” se deberia enviar a todas las maquinas de la red en un frame de broadcast. Cada estacion recibe el ARP y compara contra su IP. La estacion referida contesta al Pedido; el resto descartan el pedido Sin enviar respuesta.
  • 14.
    02 CHIVI GUILiSEGURIDAD EN LAYER 2 LINUXFEST DSNIFF – Una Colección de chiches para ARP spoofing MAC floodin Sniffing selectivo Interception SSH/SSL
  • 15.
    02 CHIVI GUILiGratuitous ARP SEGURIDAD EN LAYER 2 LINUXFEST V Z W Y X Gratuitous ARP es usado por los hosts para “anunciar” sus Ips a la red local y evitar direcciones IP duplicadas; las estaciones hacen caching de estos datos enviados a la red para estar listas Host W: Hola a todos! Soy host W y mi IP es 1.2.3.4 y mi MAC es 12:34:56:78:9A:BC
  • 16.
    02 CHIVI GUILiUso abusivo Gratuitous ARP SEGURIDAD EN LAYER 2 LINUXFEST ARP no ofrece seguridad ni concepto de “propiedad” de MAC o direccion IP Y si hacemos lo siguiente ? 1.2.3.0/24 .1 . 2 . 4 . 3 Host Y Host X Host W Host W irradia “Soy 1.2.3.1, MAC “12:34:56:78:9A:BC” Espera 5 Segundos Host W irradia “Soy 1.2.3.1, MAC “12:34:56:78:9A:BC”
  • 17.
    02 CHIVI GUILiTEST SEGURIDAD EN LAYER 2 LINUXFEST 1.2.3.0/24 .1 . 2 . 4 . 3 Host Y Host X Host W Si Y solicita la MAC de 1.2.3.1, el router responde y la comunicación funcionara hasta que W envie un gratuitous ARP. Aun con ARP estatico de 1.2.3.1 configurado en Y, en algunos sistemas operativos (NT4, Windows 2000) esta informacion sera reemplazada por la de Gratuitos ARP.
  • 18.
    02 CHIVI GUILiSEGURIDAD EN LAYER 2 LINUXFEST Arpspoof en accion C:\>test C:\>arp –d 15.1.1.1 C:\>ping –n 1 15.1.1.1 Pinging 15.1.1.1 with 32 bytes Reply from 15.1.1.1 bytes=32 time<10ms TTL=255 C:\>arp –a Interface: 15.1.1.26 on Interface 2 Internet Address Physical Address Type
  • 19.
    02 CHIVI GUILiSEGURIDAD EN LAYER 2 LINUXFEST Mas de ARPspoof Todo el trafico fluye a traves de la maquina que corre dsniff, en modo half-duplex. No es un sniffer, pero se le parece bastante El ataque puede generarse en el sentido opuesto, al hacer spoofing del host destino cuando el router “busca” al host en su ARP request.
  • 20.
    02 CHIVI GUILiSEGURIDAD EN LAYER 2 LINUXFEST Sniffing Selectivo Una vez que la estacion dsniff arranca el proceso arpspoof, la magia comienza: [root@linux dsniff-2.3]# ./dsniff –c dsniff: listening on eth0 ---------------------------- 07/17/01 10:09:48 tcp 15.1.1.26.1126 -> wwwi –abc.cisco.com.80 (http) Get /SERVICE/Pqging/page/ HTTP/1.1 Host: wwwin-abc.cisco.com Authorization: Basic c2NvBsfdfsGfggffgdS34FFFF== [myuser:mypassword] Soporta mas de 30 Protocolos Estándar y propietarios:
  • 21.
    02 CHIVI GUILiSEGURIDAD EN LAYER 2 LINUXFEST ATAQUES VIA DHCP DHCP ( RFC1531 ) es usado para entregar automaticamente direcciones IP y otros parametros de red. De esta manera no es necesario tener asignadas las direcciones IP estaticamente.
  • 22.
    02 CHIVI GUILiSEGURIDAD EN LAYER 2 LINUXFEST DHCP SECUENCIA NORMAL 1.2.3.0/24 .1 . 4 . 3 Host Y Host X DHCP Server . 2 DHCP ? DHCP ? IP 2 ? GW .1 IP 2 ? GW .1 IP 2 OK IP 2 OK
  • 23.
    02 CHIVI GUILiRogue DHCP server SEGURIDAD EN LAYER 2 LINUXFEST Seteando un rogue DHCP server, un hacker puede crear las condiciones necesarias para armar un ataque. El control del server DHCP puede ayudar al hacker a redireccionar el trafico a su maquina ( ataque de main in the midle ) o enviar a los usarios a falsas paginas web. Esto dado que un server DHCP puede setear varias opciones, DNS Server, Default Gateway… 1.2.3.0/24 .1 . 4 . 3 Host Y Host X DHCP Server . 2 GW .3 DNS .3 DHCP ? IP 2 ? GW .3 DNS .3 IP 2 OK BANCO ? .XXX Banco Banco .XXX