Zones, Zone Protection y DoS Protection

Resumen

Una zona de seguridad es un grupo de interfaces que comparten un mismo nivel de confianza (por ejemplo inside, dmz, outside). Todas las reglas de Security Policy se escriben entre zonas: “de inside a outside”. Por defecto, el tráfico dentro de una misma zona se permite (regla intrazone-default) y el tráfico entre zonas distintas se deniega (regla interzone-default) hasta que crees una regla que lo permita. Existen varios tipos de zona (Layer 3, Layer 2, Virtual Wire, Tap, Tunnel, External) según el modo de las interfaces que contienen.
Además de decidir qué tráfico se permite, hay que protegerse de ataques que no dependen de una regla: inundaciones de paquetes (SYN flood, UDP flood), escaneos de puertos y paquetes malformados. Eso lo hacen dos mecanismos distintos. Zone Protection Profile se aplica a una zona y protege en la entrada, antes de la Security Policy, contra inundaciones, reconocimiento y ataques basados en paquetes; es una defensa general de la zona. DoS Protection (perfil + política) es más específica: se aplica con reglas (origen, destino, servicio) para limitar conexiones hacia un recurso concreto, como un servidor web, y puede ser clasificada (por IP) o agregada. Esta nota cubre las zonas, el Zone Protection Profile, la DoS Protection y cómo comprobarlos.

Requisitos previos

  • Interfaces creadas con su tipo (Layer 3, Layer 2, Virtual Wire, Tap) (ver L3 Interfaces, Subinterfaces y DHCP)
  • Un diseño de zonas: qué redes van en cada una según su nivel de confianza
  • Conocer los valores normales de tráfico de tu red, para fijar umbrales con criterio (si no, empieza con alert y ajusta)
  • Para DoS Protection: saber qué servidores quieres proteger y cuántas conexiones por segundo son normales
  • Logging activado (ver Logging, Monitoring y SIEM) para ver las alertas

Conceptos clave

ConceptoQué es
ZonaAgrupación de interfaces con el mismo nivel de confianza; una interfaz pertenece a una zona
intrazone-defaultRegla implícita: permite el tráfico dentro de la misma zona
interzone-defaultRegla implícita: deniega el tráfico entre zonas distintas
Zone Protection ProfileProtección contra flood, reconocimiento y ataques de paquetes por zona, en la entrada
DoS Protection ProfileDefine umbrales de conexiones (SYN, UDP, ICMP, otros) y la acción
DoS Protection PolicyReglas que aplican el perfil a un tráfico concreto
ClassifiedDoS por dirección IP origen o destino (cada IP tiene su propio contador)
AggregateDoS sobre el total de las conexiones que coinciden con la regla

Tipos de zona: Layer3, Layer2, Virtual Wire, Tap, Tunnel (para túneles) y External (para zonas entre sistemas virtuales).

Acciones de la Security Policy entre zonas: Allow, Deny, Drop, Reset client, Reset server, Reset both (ver Security Policy Fundamentals).

graph LR
    A["Paquete entrante"] --> Z["Zone Protection Profile<br/>(flood, reconocimiento,<br/>ataques de paquetes)"]
    Z --> D["DoS Protection Policy<br/>(umbral por regla)"]
    D --> S["Security Policy<br/>(permitir o negar)"]
    S --> P["Security Profiles<br/>(AV, VP, WildFire...)"]

Zone Protection frente a DoS Protection

Zone Protection protege toda la zona de forma general y es “barata” en recursos. DoS Protection protege servidores concretos con reglas, y permite acciones como Protect (con contador por IP). Si solo vas a activar una, empieza por Zone Protection en la zona outside.

Configuración (Ejemplo, Lab PCNSA)

1. Zonas

  1. Network > Zones > Add.
  2. Name inside, Type Layer3, Interfaces > Add: ethernet1/1, ethernet1/2.
  3. Opcional: Enable User Identification (ver User-ID), Log Setting (Log Forwarding Profile para los logs de la zona).
  4. OK.
  5. Repite con dmz (ethernet1/3) y outside (ethernet1/6, ethernet1/7).
  6. Commit.

Reglas básicas a recordar:

  1. El tráfico de inside hacia outside no pasa hasta que crees una regla Allow.
  2. El tráfico entre dos interfaces de la misma zona sí pasa sin regla.

2. Zone Protection Profile

  1. Network > Network Profiles > Zone Protection > Add. Name Outside-ZP.
  2. Pestaña Flood Protection:
    • SYN: Action SYN Cookies (recomendado), Alert 10000, Activate 10000, Maximum 40000 (paquetes por segundo; ajústalos a tu red).
    • ICMP, ICMPv6, UDP y Other IP: Enable con valores Alert/Activate/Maximum.
  3. Pestaña Reconnaissance Protection: Enable en TCP Port Scan, Host Sweep, UDP Port Scan, con Interval, Threshold y Action (alert, block-ip; block-ip bloquea la IP atacante por un tiempo).
  4. Pestaña Packet Based Attack Protection: IP Drop (por ejemplo Spoofed IP address, Strict IP Address Check), TCP Drop (Reject Non-SYN TCP, Asymmetric Path, Remove TCP Timestamp), ICMP Drop (ICMP Ping ID 0, ICMP Fragment, Suppress ICMP TTL Expired Error) y IPv6 Drop.
  5. Pestaña Protocol Protection (opcional): bloquear protocolos no IP que no usas en una zona Layer 2 / Virtual Wire (por ejemplo bloquear LLDP, STP según la política).
  6. OK.
  7. Asígnalo: Network > Zones > outside > Zone Protection Profile Outside-ZP. OK y Commit.

Cuidado con Reject Non-SYN TCP y rutas asimétricas

Si tu red tiene caminos asimétricos (por ejemplo doble ISP), algunas opciones del perfil pueden descartar tráfico legítimo. Empieza con alert y observa antes de bloquear.

set network profiles zone-protection-profile Outside-ZP flood tcp-syn enable yes
set zone outside network zone-protection-profile Outside-ZP
commit

Si un comando no coincide con tu versión, usa Tab o ?.

3. DoS Protection Profile

  1. Objects > Security Profiles > DoS Protection > Add. Name Web-DoS.
  2. Type: Classified (por IP) o Aggregate (total).
  3. Flood Protection: SYN Flood (Action SYN Cookies, Alarm Rate, Activate Rate, Max Rate), UDP Flood, ICMP Flood, Other IP Flood.
  4. Resource Protection (opcional): limita el máximo de sesiones simultáneas.
  5. OK.

4. DoS Protection Policy

  1. Policies > DoS Protection > Add. Name Protect-DMZ-Web.
  2. Source: Source Zone outside. Destination: Destination Zone dmz, Destination Address 10.30.0.100.
  3. Option/Protection: Service service-https (o any), Action Protect, Aggregate Profile o Classified Profile Web-DoS. Si usas Classified, elige también Address: source-ip-only, destination-ip-only o src-dest-ip-both.
  4. Log Forwarding: el perfil si quieres enviar los eventos a un servidor.
  5. OK y Commit.

Otras acciones: Deny, Allow (excluye ese tráfico de DoS) y Protect (aplica el perfil).

5. Ver qué se está bloqueando

  1. Monitor > Logs > Threat: eventos de tipo flood o scan con la zona y la acción.
  2. Monitor > Logs > Traffic: sesiones descartadas por Zone Protection (según versión).
  3. ACC > Threat Activity.

Verificación

Comando o lugarQué debes verSi no lo ves
Network > ZonesCada zona con sus interfaces y el Zone Protection Profile asignadoSi falta el perfil, la zona no tiene protección
show zone-protection zone outsideEstado del perfil y contadores (activaciones de SYN cookies, etc.)Si dice que no hay perfil, no se asignó o falta commit
show running zone (verificar con Tab o ?)Zonas y sus interfacesÚtil para confirmar la configuración activa
show counter global filter delta yes severity dropContadores de descartes (por ejemplo flow_fwd_zonechange, flow_policy_deny)Si suben, mira cuál corresponde
Monitor > Logs > Threat: filtro ( subtype eq flood ) o ( subtype eq scan )Eventos de inundación o escaneoSi no hay, el umbral no se alcanza o el perfil está en modo alert sin tráfico
show dos-protection rule <nombre> statistics (verificar con Tab o ?)Contadores de la regla DoSSi no suben, la regla no coincide
Policies > DoS Protection: hit countSube con el tráficoSi es cero, revisa zonas y servicio
Prueba controlada: un escaneo nmap desde otra zona (solo en laboratorio)Un log de escaneo con la IP de origenSi no, revisa el perfil y la zona

Errores comunes

El tráfico entre zonas no pasa

  • Causa: no hay regla Allow, y la interzone-default deniega.
  • Solución: crea la regla y confirma la zona de origen y destino (ver Security Policy Fundamentals).

Dos interfaces de la misma zona se comunican y no debería

  • Causa: la intrazone-default permite el tráfico dentro de la zona.
  • Solución: usa zonas distintas, o crea una regla explícita de Deny intrazone para esa zona.

Una interfaz no aparece para agregar a la zona

  • Causa: ya pertenece a otra zona, o su tipo no coincide con el de la zona.
  • Solución: el tipo de la interfaz debe coincidir con el de la zona (una interfaz L3 solo va en una zona L3).

El Zone Protection bloquea tráfico legítimo

  • Causa: umbrales muy bajos, rutas asimétricas o block-ip agresivo en reconocimiento.
  • Revisa: Monitor > Logs > Threat para ver qué evento y qué IP.
  • Solución: sube los umbrales, usa alert primero y añade excepciones (por ejemplo, para escáneres de seguridad internos) en la zona o con IPs excluidas.

Los umbrales de flood no se disparan en pruebas

  • Causa: los valores son altos o el generador de tráfico no llega a ellos.
  • Solución: baja temporalmente los umbrales en laboratorio y observa los contadores.

DoS Protection no coincide

  • Causa: la regla no coincide con zonas, destino o servicio.
  • Solución: revisa el hit count y los campos; las reglas DoS se evalúan por orden.

Confundo Zone Protection con DoS Protection

  • Causa: ambos protegen contra inundaciones, pero actúan en lugares distintos.
  • Solución: recuerda que Zone Protection se asigna a una zona (general) y DoS Protection se aplica con reglas (específica a un recurso).

La protección de reconocimiento bloquea a mi propio escáner de vulnerabilidades

  • Causa: el escáner interno se detecta como ataque.
  • Solución: agrega las IP del escáner a las excepciones de la zona o agrega las IP del escáner a Source Address Exclusion en Reconnaissance Protection del Zone Protection Profile.