15%

Ahorra 15%<\/span> en todos los servicios de hosting

Pon a prueba tus habilidades y obtén Descuento<\/span> en cualquier plan de hosting

Usa el código:

Skills
Comenzar
09.10.2024

Ataques de Inundación MAC: Análisis Técnico Profundo y Estrategias de Prevención

MAC flooding es un ataque de red de Capa 2 que agota deliberadamente la tabla CAM (Content Addressable Memory) de un switch Ethernet inyectando miles de tramas con direcciones MAC de origen falsificadas y aleatorias. Una vez que la tabla CAM alcanza su capacidad máxima, el switch degrada su comportamiento al de un hub, transmitiendo todas las tramas entrantes por todos los puertos, lo que expone todo el dominio de difusión a interceptación pasiva y manipulación activa.

Este ataque no es teórico. Es trivialmente ejecutable con herramientas como `macof` (parte de la suite `dsniff`) y puede saturar una tabla CAM típica de 8.000 entradas en menos de 70 segundos en un enlace gigabit. Comprender la mecánica, los modos de fallo y las contramedidas en capas es esencial para cualquier ingeniero de redes responsable de la integridad de la infraestructura.

Cómo Funciona la Tabla CAM y Por Qué Falla

Cada switch Ethernet gestionado mantiene una tabla CAM que mapea direcciones MAC a puertos físicos específicos. Cuando llega una trama, el switch realiza una búsqueda: si la MAC de destino está en la tabla, la trama se reenvía únicamente al puerto correspondiente (reenvío unicast). Si la MAC es desconocida, el switch inunda la trama a todos los puertos del mismo VLAN — este es el comportamiento normal y esperado para el tráfico unicast desconocido.

La tabla CAM tiene un tamaño finito, que típicamente varía desde 8.000 entradas en switches de capa de acceso hasta más de 128.000 entradas en switches de núcleo empresarial. Las entradas expiran tras un tiempo de inactividad (valor predeterminado: 300 segundos en la mayoría de las plataformas Cisco IOS). Un atacante explota esto inyectando tramas más rápido de lo que las entradas expiran, manteniendo la tabla perpetuamente llena con entradas basura.

El Modo de Fallo Fail-Open

Cuando la tabla CAM está llena, el switch no puede almacenar nuevos mapeos legítimos de MAC a puerto. Cada trama con una MAC de destino que no esté ya en la tabla se inunda a todos los puertos del VLAN. Esto se denomina comportamiento fail-open — el switch prioriza la conectividad sobre la seguridad, lo cual es lo opuesto a lo que requiere un diseño consciente de la seguridad.

Las consecuencias son inmediatas y graves:

  • Sniffing pasivo: Cualquier host en el segmento puede capturar tráfico destinado a otros hosts usando una NIC en modo promiscuo y un analizador de paquetes como Wireshark o tcpdump.
  • Ataques de hombre en el medio (MITM): Con visibilidad total del tráfico, un atacante puede combinar MAC flooding con envenenamiento ARP para interceptar, modificar y retransmitir tráfico entre dos hosts que se comunican sin que ninguna de las partes detecte la interceptación.
  • Recolección de credenciales: Los protocolos no cifrados (Telnet, FTP, HTTP Basic Auth, SMTP sin STARTTLS) exponen credenciales directamente. Incluso con TLS, los metadatos y patrones de sesión filtran valiosos datos de reconocimiento.
  • Degradación del rendimiento de la red: El enorme volumen de tramas inundadas consume ancho de banda de los puertos y ciclos de CPU en todos los hosts conectados, constituyendo efectivamente una condición de denegación de servicio.

Ejecución del Ataque: Cómo Se Ve en la Práctica

Un ataque realista usando `macof` en un host Linux:

“`bash

macof floods the network with random source MACs

-i specifies the interface, -n specifies the number of packets

macof -i eth0 -n 100000

“`

Cada paquete tiene una MAC de origen y una MAC de destino generadas aleatoriamente, forzando al switch a intentar una nueva entrada CAM por cada trama. En un enlace de 100 Mbps, `macof` puede generar aproximadamente 155.000 paquetes por segundo, superando con creces la tasa de reposición de la tabla CAM.

MAC Flooding vs. ARP Spoofing vs. ARP Poisoning

Estos tres ataques se confunden frecuentemente, pero operan en diferentes capas y mediante diferentes mecanismos. Comprender la distinción es fundamental para seleccionar la contramedida adecuada.

AtributoMAC FloodingARP SpoofingARP Poisoning
**Capa OSI**Capa 2 (Enlace de Datos)Frontera Capa 2/3Frontera Capa 2/3
**Objetivo**Tabla CAM del switchCaché ARP del hostCaché ARP del host
**Mecanismo**Agota la CAM con MACs falsasEnvía respuestas ARP falsificadasRespuestas ARP falsificadas continuas
**Objetivo Principal**Forzar inundación tipo hubRedirigir tráfico al atacanteMITM persistente
**Dificultad de Detección**Moderada (alto volumen de tráfico)Alta (manipulación sutil de caché)Alta
**Contramedida Principal**Seguridad de PuertoInspección ARP DinámicaInspección ARP Dinámica + DHCP Snooping
**Requiere Acceso Físico**Sí (segmento local)Sí (segmento local)Sí (segmento local)
**Herramientas**macof, hping3arpspoof, EttercapEttercap, Bettercap

Estrategia de Prevención 1: Seguridad de Puerto en Switches Gestionados

La seguridad de puerto es la primera línea de defensa más directa y efectiva contra el MAC flooding. Opera a nivel de puerto, imponiendo un límite estricto al número de direcciones MAC que pueden aprenderse en cualquier interfaz.

Parámetros de Configuración Principales

Número máximo de direcciones MAC: Establézcalo en el número mínimo requerido para la operación legítima. Un puerto conectado a una sola estación de trabajo debe permitir exactamente una dirección MAC. Un puerto conectado a un teléfono IP con un PC aguas abajo (una topología de cadena daisy común) debe permitir dos.

Los modos de violación determinan qué ocurre cuando se supera el límite:

  • `protect` — Descarta silenciosamente las tramas de MACs desconocidas. Sin registro, sin apagado del puerto. Útil en entornos donde los falsos positivos son una preocupación, pero no proporciona visibilidad.
  • `restrict` — Descarta las tramas de MACs desconocidas e incrementa un contador de violaciones, generando un mensaje syslog. El puerto permanece operativo.
  • `shutdown` — Coloca inmediatamente el puerto en estado err-disabled y genera una alerta syslog. Esta es la opción más segura, pero requiere intervención administrativa (o recuperación automática) para restaurar el puerto.

El direccionamiento MAC sticky (`mac-address sticky`) instruye al switch para que aprenda dinámicamente las direcciones MAC y las escriba directamente en la configuración en ejecución como entradas estáticas. Esto elimina la necesidad de rellenar manualmente las tablas de direcciones MAC mientras sigue vinculando dispositivos específicos a puertos específicos.

Ejemplo Completo de Configuración Cisco IOS

“`

interface GigabitEthernet0/1

switchport mode access

switchport access vlan 10

switchport port-security

switchport port-security maximum 2

switchport port-security violation shutdown

switchport port-security mac-address sticky

spanning-tree portfast

“`

Para verificar el estado de seguridad del puerto:

“`

show port-security interface GigabitEthernet0/1

show port-security address

“`

Para recuperar un puerto en estado err-disabled tras una violación:

“`

interface GigabitEthernet0/1

shutdown

no shutdown

“`

Para la recuperación automática, configure `errdisable recovery cause psecure-violation` con un intervalo apropiado.

Nunca aplique seguridad de puerto a puertos trunk o uplinks de switch. Estos puertos transportan legítimamente tráfico de cientos de direcciones MAC a través de múltiples VLANs. Aplicar un límite de MAC a un puerto trunk causará fallos catastróficos de conectividad. La seguridad de puerto es exclusivamente una característica de puertos de acceso.

Estrategia de Prevención 2: Segmentación VLAN y VLANs Privadas

La segmentación VLAN limita el radio de impacto de un ataque de MAC flooding al restringir el dominio de difusión. Si un atacante inunda una tabla CAM, solo el VLAN que contiene el puerto del atacante entra en modo fail-open — los demás VLANs continúan operando con normalidad.

Segmentación VLAN Estándar

Segmente su red por función y nivel de sensibilidad:

  • VLAN de Gestión: Dispositivos de red, interfaces de gestión fuera de banda, acceso IPMI/iDRAC/iLO
  • VLAN de Servidores: Servidores de producción, bases de datos, niveles de aplicación
  • VLAN de Usuarios: Estaciones de trabajo, impresoras, endpoints de uso general
  • VLAN DMZ: Servicios orientados a Internet, proxies inversos, pasarelas de correo
  • VLAN de Voz: Teléfonos VoIP (también reduce la complejidad de QoS)

VLANs Privadas (PVLANs)

Las VLANs privadas extienden el aislamiento dentro de un único VLAN definiendo roles de puerto:

  • Puertos promiscuos: Pueden comunicarse con todos los puertos del PVLAN (típicamente el uplink o la pasarela)
  • Puertos aislados: Solo pueden comunicarse con puertos promiscuos — no con otros puertos aislados
  • Puertos de comunidad: Pueden comunicarse con otros puertos de la misma comunidad y con puertos promiscuos

Las PVLANs son especialmente valiosas en entornos de hosting donde múltiples inquilinos comparten la misma infraestructura física. Incluso si el puerto de un inquilino se ve comprometido, el comportamiento de puerto aislado impide la captura lateral de tráfico. Si está ejecutando cargas de trabajo en una plataforma de Hosting VPS, comprender cómo el tejido de switching subyacente implementa el aislamiento VLAN es directamente relevante para su modelo de amenazas.

Estrategia de Prevención 3: DHCP Snooping

El DHCP snooping construye una tabla de vinculación que mapea direcciones MAC a direcciones IP, VLANs y puertos del switch. Esta tabla de vinculación no solo es útil para ataques específicos de DHCP — sirve como fuente autoritativa de verdad para la Inspección ARP Dinámica y IP Source Guard.

Lógica de Configuración

Los puertos se clasifican como de confianza (conectados a servidores DHCP legítimos o uplinks) o no confiables (conectados a clientes). Las respuestas DHCP que llegan por puertos no confiables se descartan.

“`

ip dhcp snooping

ip dhcp snooping vlan 10,20,30

interface GigabitEthernet0/1

ip dhcp snooping limit rate 15

! Untrusted by default — no additional command needed

interface GigabitEthernet0/24

ip dhcp snooping trust

! Uplink or DHCP server port

“`

El comando `ip dhcp snooping limit rate 15` limita los paquetes DHCP a 15 por segundo en puertos no confiables, previniendo ataques de agotamiento DHCP que pueden acompañar a campañas de MAC flooding.

La Tabla de Vinculación de DHCP Snooping

“`

show ip dhcp snooping binding

“`

Esta salida de tabla muestra la dirección MAC, la dirección IP, el tiempo de concesión, el VLAN y la interfaz — exactamente los datos que DAI utiliza para la validación.

Estrategia de Prevención 4: Inspección ARP Dinámica (DAI)

DAI valida los paquetes ARP contra la tabla de vinculación de DHCP snooping. Cualquier paquete ARP que reclame un mapeo MAC-a-IP que no coincida con la tabla de vinculación es descartado. Esto contrarresta directamente el envenenamiento ARP que los atacantes típicamente superponen sobre el MAC flooding.

“`

ip arp inspection vlan 10,20,30

interface GigabitEthernet0/24

ip arp inspection trust

! Uplink — trusted for ARP

interface GigabitEthernet0/1

ip arp inspection limit rate 100

! Limit ARP rate on access ports

“`

DAI también registra los paquetes descartados, proporcionando evidencia forense de intentos de ataque:

“`

show ip arp inspection statistics vlan 10

“`

IP Source Guard: La Capa Final

IP Source Guard extiende la tabla de vinculación de DHCP snooping para filtrar paquetes IP. Solo se reenvían los paquetes con una IP de origen que coincida con la entrada de la tabla de vinculación para ese puerto. Esto previene la suplantación de IP incluso después de un evento exitoso de MAC flooding.

“`

interface GigabitEthernet0/1

ip verify source

“`

La combinación de seguridad de puerto + DHCP snooping + DAI + IP Source Guard crea una pila de defensa en profundidad que aborda simultáneamente el MAC flooding, el ARP spoofing, el agotamiento DHCP y la suplantación de IP.

Estrategia de Prevención 5: Control de Acceso a la Red 802.1X

IEEE 802.1X proporciona control de acceso a la red basado en puertos al requerir autenticación antes de que un puerto pueda pasar tráfico. Un dispositivo no autenticado — incluida la máquina de un atacante que inyecta paquetes de MAC flooding — se coloca en un estado no autorizado y no puede comunicarse con la red.

La arquitectura 802.1X involucra tres componentes:

  • Suplicante: El dispositivo cliente (estación de trabajo, servidor)
  • Autenticador: El puerto del switch
  • Servidor de autenticación: Un servidor RADIUS (FreeRADIUS, Cisco ISE, Microsoft NPS)

Hasta que el suplicante se autentique correctamente mediante EAP (Extensible Authentication Protocol), el puerto solo pasa tramas EAPOL (EAP over LAN). El MAC flooding desde un puerto no autenticado es imposible porque el puerto no tiene acceso al plano de datos.

“`

aaa new-model

aaa authentication dot1x default group radius

dot1x system-auth-control

interface GigabitEthernet0/1

authentication port-control auto

dot1x pae authenticator

“`

802.1X es el control preventivo más sólido disponible para la seguridad de la capa de acceso, pero requiere una infraestructura RADIUS y configuración del suplicante en todos los endpoints — una inversión operativa significativa.

Estrategia de Prevención 6: Monitorización de Red y Detección de Anomalías

Ningún control preventivo es infalible. La monitorización continua proporciona la capacidad de detección necesaria para identificar ataques que eluden o preceden a las medidas preventivas.

Indicadores de MAC Flooding

  • Aumento rápido en el número de direcciones MAC aprendidas en un único puerto
  • Utilización de la tabla CAM aproximándose al 80-90% de capacidad
  • Pico en el volumen de tráfico de difusión a través de un VLAN
  • Aumento en eventos de inundación de unicast desconocido
  • Picos de utilización de CPU en los switches (debido al procesamiento de inundaciones)

Herramientas y Técnicas de Monitorización

Sondeo SNMP: Consulte `dot1dTpFdbTable` (RFC 1493) o `dot1qFdbTable` (RFC 2674) para rastrear el tamaño de la tabla CAM a lo largo del tiempo. Genere alertas cuando las entradas superen un umbral definido.

Análisis NetFlow/sFlow: Los datos de flujo revelan patrones de tráfico anómalos — una única fuente que genera miles de direcciones MAC de origen únicas es un indicador claro.

Sistemas de Detección de Intrusiones: Snort y Suricata tienen reglas para detectar patrones de MAC flooding. Zeek (anteriormente Bro) puede configurarse para alertar sobre cambios rápidos de direcciones MAC.

Wireshark/tshark para análisis forense: Al investigar un ataque sospechoso, capture en un puerto mirror/SPAN y filtre por MACs de origen únicas:

“`bash

tshark -i eth0 -T fields -e eth.src | sort | uniq -c | sort -rn | head -20

“`

Un host legítimo genera un puñado de MACs de origen únicas (típicamente una). Un atacante ejecutando `macof` genera miles por segundo.

SPAN/RSPAN para Análisis de Tráfico

Configure una sesión SPAN (Switched Port Analyzer) para reflejar el tráfico a un host de monitorización:

“`

monitor session 1 source vlan 10

monitor session 1 destination interface GigabitEthernet0/48

“`

Esto permite que un IDS/IPS dedicado o un dispositivo de captura de paquetes analice todo el tráfico del VLAN 10 sin interrumpir el reenvío en producción.

Consideraciones de Hardware: Tamaño de la Tabla CAM y Selección de Switches

Actualizar a switches con tablas CAM más grandes eleva el listón para los atacantes, pero no sustituye a los controles descritos anteriormente. Un atacante determinado con suficiente ancho de banda puede inundar cualquier tabla finita.

Nivel de SwitchTamaño Típico de Tabla CAMCaso de Uso Recomendado
Consumidor no gestionado1.000 – 4.000 entradasSolo redes domésticas
PYME gestionado (p. ej., Cisco SG350)8.000 – 16.000 entradasOficina pequeña, entornos de bajo riesgo
Acceso empresarial (p. ej., Cisco Catalyst 9200)32.000 – 64.000 entradasCapa de acceso corporativo
Distribución/núcleo empresarial (p. ej., Cisco Catalyst 9500)128.000 – 256.000+ entradasCentro de datos, núcleo de campus

Para cargas de trabajo en producción — particularmente las que se ejecutan en Servidores Dedicados conectados a infraestructura de switching empresarial — el nivel del switch impacta directamente en su ventana de exposición durante un ataque activo.

Protección de Entornos Hospedados y en la Nube

El MAC flooding es un ataque de segmento local. En un entorno de hosting compartido o de colocación, el modelo de amenazas cambia: un inquilino comprometido o malicioso en el mismo tejido de switch físico puede atacar a otros inquilinos.

Para entornos donde usted controla el hipervisor o el switch virtual (Open vSwitch, VMware vSwitch), existen controles equivalentes:

Seguridad de puerto Open vSwitch:

“`bash

ovs-vsctl set port <port-name> other_config:rstp-enable=true

ovs-vsctl set Interface <port-name> type=internal

Limit MAC learning via OpenFlow rules

“`

VMware vSwitch: Habilite “Cambios de Dirección MAC: Rechazar” y “Transmisiones Falsificadas: Rechazar” en la política de seguridad del vSwitch. Esto impide que una VM inyecte tramas con MACs de origen distintas a su MAC asignada.

Si está gestionando aplicaciones web o servicios en un VPS con cPanel o usando Paneles de Control VPS para la gestión del servidor, verifique con su proveedor que el hipervisor subyacente aplica anti-suplantación de MAC a nivel del switch virtual — este es el equivalente virtualizado de la seguridad de puerto.

Para organizaciones que ejecutan servicios con terminación SSL, asegurarse de que sus Certificados SSL estén correctamente configurados proporciona una capa adicional de protección: incluso si un atacante logra interceptar el tráfico mediante MAC flooding, TLS correctamente implementado con certificate pinning impide la recolección de credenciales de sesiones cifradas.

Matriz de Decisión: Elegir los Controles Adecuados

Use esta matriz para priorizar los controles según el tipo de entorno:

ControlOficina PequeñaLAN EmpresarialCentro de DatosHospedado/Nube
Seguridad de PuertoAlta prioridadAlta prioridadMedia (usar 802.1X)N/A (nivel hipervisor)
Segmentación VLANMediaAlta prioridadAlta prioridadAlta prioridad
DHCP SnoopingMediaAlta prioridadAlta prioridadGestionado por proveedor
Inspección ARP DinámicaMediaAlta prioridadAlta prioridadGestionado por proveedor
802.1X NACBaja (complejidad)Alta prioridadAlta prioridadN/A
IP Source GuardBajaAlta prioridadAlta prioridadGestionado por proveedor
Monitorización SNMP/NetFlowBajaAlta prioridadAlta prioridadGestionado por inquilino
VLANs PrivadasBajaMediaAlta prioridadAlta prioridad

Lista de Verificación de Puntos Clave Técnicos

Antes de considerar que su entorno de Capa 2 está reforzado contra el MAC flooding, verifique cada uno de los siguientes puntos:

  • La seguridad de puerto está configurada en todos los puertos de acceso con un límite de MAC apropiado al tipo de dispositivo conectado (1 para estaciones de trabajo, 2 para cadenas de teléfono IP + PC)
  • El modo de violación está configurado en `shutdown` en puertos de alta seguridad y `restrict` con registro en puertos de acceso general
  • El aprendizaje MAC sticky está habilitado y la configuración en ejecución está guardada en NVRAM
  • El DHCP snooping está habilitado en todos los VLANs de producción con designaciones correctas de puertos de confianza/no confiables y limitación de velocidad en puertos no confiables
  • La Inspección ARP Dinámica está habilitada en todos los VLANs de producción y validada contra la tabla de vinculación de DHCP snooping
  • IP Source Guard está desplegado en puertos de acceso no confiables en segmentos de alta seguridad
  • Los VLANs están segmentados por función sin enrutamiento inter-VLAN innecesario
  • Las VLANs privadas están implementadas en entornos multi-inquilino o de hosting
  • 802.1X está desplegado o en hoja de ruta para todos los puertos de la capa de acceso
  • La monitorización SNMP está configurada para alertar sobre umbrales de utilización de la tabla CAM
  • NetFlow o sFlow está habilitado y alimentando un sistema de detección de anomalías
  • Las sesiones SPAN están configuradas para visibilidad IDS/IPS en VLANs críticos
  • Las políticas de seguridad del switch virtual (anti-suplantación de MAC, rechazo de transmisiones falsificadas) se aplican a nivel del hipervisor
  • TLS está aplicado para todo el tráfico de aplicaciones sensibles de modo que, incluso si la interceptación tiene éxito, no se obtengan credenciales en texto plano

Preguntas Frecuentes

¿Puede el MAC flooding afectar a las redes inalámbricas?

La infraestructura Wi-Fi estándar utiliza un modelo de asociación diferente — los puntos de acceso gestionan las asociaciones de clientes mediante el protocolo 802.11, no una tabla CAM en el sentido Ethernet. Sin embargo, el controlador inalámbrico o el switch cableado que sirve al AP puede seguir siendo objetivo. Además, los ataques de AP falso en redes inalámbricas logran objetivos de interceptación similares mediante mecanismos diferentes.

¿Funciona el MAC flooding contra switches empresariales modernos con tablas CAM grandes?

Sí, pero el ataque requiere más ancho de banda y tiempo. Un switch con una tabla CAM de 128.000 entradas requiere proporcionalmente más tramas falsificadas para agotarla. Sin embargo, `macof` en un enlace de 10 Gbps puede generar millones de tramas por segundo, haciendo vulnerables incluso las tablas grandes en cuestión de segundos. Por eso los controles a nivel de hardware como la seguridad de puerto son esenciales — impiden que la tabla se llene en primer lugar.

¿Cuál es la diferencia entre MAC flooding y MAC spoofing?

El MAC flooding agota la tabla CAM mediante volumen — el objetivo es forzar una inundación tipo hub. El MAC spoofing implica suplantar una dirección MAC específica y legítima para secuestrar una sesión o eludir controles de acceso basados en MAC. Son ataques distintos, aunque un atacante puede usar MAC spoofing después de un evento exitoso de MAC flooding para mantener una posición MITM persistente.

¿Habilitar la seguridad de puerto interrumpe operaciones de red legítimas como DHCP?

No, si se configura correctamente. El tráfico DHCP se origina desde la dirección MAC del cliente, que es la única dirección MAC permitida en el puerto. La respuesta del servidor DHCP está dirigida a la MAC del cliente y llega por el uplink (un puerto de confianza). La seguridad de puerto en puertos de acceso no interfiere con DHCP a menos que el límite se establezca en cero o el modo de violación descarte incorrectamente tráfico legítimo.

¿Cómo detecto un ataque de MAC flooding que ya ha comenzado?

Compruebe inmediatamente la utilización de la tabla CAM: `show mac address-table count`. Si la utilización está cerca del 100%, crúcela con `show mac address-table dynamic` para identificar puertos con un número anormalmente alto de direcciones MAC aprendidas. Simultáneamente, compruebe los contadores de errores de interfaz con `show interfaces` para detectar picos en la tasa de entrada. El puerto infractor mostrará una tasa de paquetes de entrada dramáticamente elevada y un recuento inusualmente alto de direcciones MAC aprendidas.

15%

Ahorra 15%<\/span> en todos los servicios de hosting

Pon a prueba tus habilidades y obtén Descuento<\/span> en cualquier plan de hosting

Usa el código:

Skills
Comenzar