Planeamiento e implementación una instancia de Web Application Firewall (WAF)

Completado

El firewall de aplicaciones web (WAF) ofrece una protección centralizada de las aplicaciones web contra las vulnerabilidades de seguridad más habituales. Las aplicaciones web son cada vez más el objetivo de ataques malintencionados que aprovechan vulnerabilidades habitualmente conocidas. Los scripts entre sitios y las inyecciones de código SQL están dentro de los ataques más comunes.

Diagrama que muestra cómo el firewall de aplicaciones web (WAF) de Azure ofrece una protección centralizada de las aplicaciones web contra las vulnerabilidades de seguridad más habituales.

Evitar dichos ataques en el código de la aplicación es todo un desafío. Puede requerir un mantenimiento riguroso, revisión y supervisión en varias capas de la topología de la aplicación. Un firewall de aplicaciones web centralizado ayuda a simplificar muchísimo la administración de la seguridad. Un WAF también proporciona a los administradores de la aplicación a un mejor control de la protección contra amenazas e intrusiones.

Una solución de WAF puede reaccionar más rápido ante una amenaza de la seguridad mediante la aplicación centralizada de revisiones que aborden una vulnerabilidad conocida, en lugar de proteger de manera individual cada aplicación web.

Servicio admitido

WAF se puede implementar con el servicio Azure Application Gateway, Azure Front Door y Azure Content Delivery Network (CDN) de Microsoft. WAF en Azure CDN se encuentra actualmente en versión preliminar pública. WAF tiene características personalizadas para cada servicio específico. Para más información sobre las características de WAF para cada servicio, consulte la introducción a cada servicio.

Azure Web Application Firewall (WAF) en Azure Application Gateway protege activamente las aplicaciones web frente a vulnerabilidades de seguridad comunes. A medida que las aplicaciones web se vuelven objetivos más frecuentes para ataques malintencionados, estos ataques suelen aprovechar vulnerabilidades de seguridad conocidas, como la inyección de código SQL y el scripting entre sitios.

El firewall de aplicaciones web de Application Gateway se basa en el conjunto de reglas básicas (CRS) de OWASP (Open Web Application Security Project).

Todas las características siguientes de WAF existen dentro de una directiva de WAF. Puede crear múltiples directivas y se pueden asociar a una instancia de Application Gateway, a clientes de escucha individuales o a reglas de enrutamiento basadas en rutas de acceso en una instancia de Application Gateway. De este modo, puede tener directivas independientes para cada sitio detrás de la instancia Application Gateway si es necesario.

Diagrama que muestra un ejemplo de una funcionalidad de firewall de aplicaciones web y puerta de enlace de aplicaciones web.

Application Gateway funciona como un controlador de entrega de aplicaciones (ADC). Ofrece terminación de Seguridad de la capa de transporte (TLS), anteriormente conocido como Capa de sockets seguros (SSL), afinidad de sesión basada en cookies, distribución de la carga en operaciones por turnos, enrutamiento basado en contenido, posibilidad de hospedar varios sitios y mejoras de seguridad.

Application Gateway mejora la seguridad mediante la administración de directivas TLS y la compatibilidad con TLS de un extremo a otro. Al integrar WAF en Application Gateway, se activa la seguridad de las aplicaciones. Esta combinación defiende activamente las aplicaciones web frente a vulnerabilidades comunes y ofrece una ubicación fácil de configurar de forma centralizada.

Protección

  • Proteja las aplicaciones web contra las vulnerabilidades y los ataques web si modificación del código de back-end.
  • Proteja varias aplicaciones web al mismo tiempo. Una instancia de Application Gateway puede hospedar hasta 40 sitios web protegidos por un firewall de aplicaciones web.
  • Cree directivas de WAF personalizadas para distintos sitios detrás del mismo WAF.
  • Proteja las aplicaciones web de bots malintencionados con el conjunto de reglas de reputación de IP.
  • Proteja la aplicación frente a ataques DDoS.

Supervisión

Supervise los ataques contra sus aplicaciones web con un registro de WAF en tiempo real. El registro se integra con Azure Monitor para hacer un seguimiento de las alertas de WAF y permite supervisar con facilidad las tendencias.

Application Gateway con WAF se integra con Microsoft Defender for Cloud. Defender for Cloud proporciona una vista central del estado de seguridad de todos los recursos de Azure, híbridos y multinube.

Personalización

  • Personalice las reglas y grupos de reglas de WAF para satisfacer los requisitos de su aplicación y eliminar los falsos positivos.
  • Asocie una directiva de WAF a cada sitio detrás de la WAF para permitir la configuración específica del sitio.
  • Cree reglas personalizadas para satisfacer las necesidades de su aplicación.

Características

  • Protección contra la inyección de código SQL.
  • Protección contra scripts entre sitios.
  • Protección contra otros ataques web comunes, como la inyección de comandos, el contrabando de solicitudes HTTP, la división de respuestas HTTP y la inclusión de archivos remotos.
  • Protección contra infracciones del protocolo HTTP.
  • Protección contra anomalías del protocolo HTTP, como la falta de agentes de usuario de host y encabezados de aceptación.
  • Protección contra rastreadores y escáneres.
  • Detección de errores de configuración comunes de las aplicaciones (por ejemplo, Apache e Internet Information Services).
  • Límites de tamaño de solicitud configurables con límites inferior y superior.
  • Las listas de exclusión le permiten omitir determinados atributos de una solicitud de una evaluación del WAF. Un ejemplo común son los tokens insertados de Microsoft Entra ID que se usan para campos de contraseña o autenticación.
  • Cree reglas personalizadas para satisfacer las necesidades específicas de las aplicaciones.
  • Filtre geográficamente el tráfico para permitir o impedir que determinados países o regiones obtengan acceso a las aplicaciones.
  • Proteja sus aplicaciones de bots con el conjunto de reglas de mitigación de bots.
  • Inspección de la notación de objetos JavaScript (JSON) y el lenguaje de marcado extensible (XML) en el cuerpo de la solicitud

Reglas y directiva de WAF

Para habilitar una instancia de Web Application Firewall en Application Gateway, debe crear una directiva WAF. Esta directiva es donde se encuentran todas las reglas administradas, reglas personalizadas, exclusiones y otras personalizaciones, como el límite de carga de archivos.

Puede configurar una directiva WAF y asociarla a una o varias instancias de Application Gateway con fines de protección. Una directiva de WAF consta de dos tipos de reglas de seguridad:

  • Reglas personalizadas que crea el usuario
  • Conjuntos de reglas administrados que son una colección del conjunto de reglas preconfigurado y administrado por Azure

Cuando ambos están presentes, las reglas personalizadas se procesan antes de procesar las reglas de un conjunto de reglas administrado. Una regla está formada por una condición de coincidencia, una prioridad y una acción. Los tipos de acción que se admiten son los siguientes: PERMITIR, BLOQUEAR y REGISTRAR. Puede crear una directiva totalmente personalizada que cumpla sus requisitos específicos de protección de aplicaciones al combinar reglas personalizadas y administradas.

Las reglas de una directiva se procesan en un orden de prioridad. La prioridad es un entero único que describe el orden de las reglas que se van a procesar. El valor entero más pequeño indica una prioridad más alta y estas reglas se evalúan antes que las reglas con un valor entero más alto. Una vez que una regla coincide, la acción correspondiente que se ha definido en la regla se aplica a la solicitud. Cuando se procesa esa coincidencia, ya no se procesan más reglas con prioridades inferiores.

Una aplicación web ofrecida por Application Gateway puede tener una directiva WAF asociada en el nivel global, por sitio o por URI.

Conjuntos de reglas principales

Application Gateway admite varios conjuntos de reglas, entre los que se incluyen CRS 3.2, CRS 3.1 y CRS 3.0. Estas reglas protegen las aplicaciones web frente a actividades malintencionadas.

Reglas personalizadas

Application Gateway también admite reglas personalizadas. Con las reglas personalizadas, puede crear reglas propias que se evalúan en cada solicitud que pasa por el WAF. Estas reglas tienen una prioridad mayor que el resto de las reglas de los conjuntos de reglas administrados. Si se cumple un conjunto de condiciones, se realiza una acción para permitir o bloquear.

Conjunto de reglas de protección contra bots

Puede habilitar un conjunto administrado de reglas de protección contra bots para realizar acciones personalizadas ante solicitudes de todas las categorías de bots.

Se admiten tres categorías de bot:

  • Defectuosos: los bots defectuosos incluyen bots de direcciones IP malintencionadas y bots que han falsificado sus identidades. Los bots malos con direcciones IP malintencionadas proceden de los indicadores de IP de alta confianza de la fuente de inteligencia sobre amenazas de Microsoft.
  • Correctos: los bots correctos incluyen motores de búsqueda validados, como Googlebot, bingbot y otros agentes de usuario de confianza.
  • Desconocido: los bots desconocidos se clasifican mediante agentes de usuario publicados sin más adicional. Por ejemplo, analizadores de mercado, recopiladores de fuentes y agentes de recopilación de datos. Los bots desconocidos también incluyen direcciones IP malintencionadas que proceden de los indicadores de IP de confianza media de la fuente de inteligencia sobre amenazas de Microsoft.

La plataforma de WAF administra activamente y actualiza dinámicamente las firmas del bot.

Captura de pantalla que muestra un ejemplo de firmas de bot.

Se puede asignar Microsoft_BotManagerRuleSet_1.0 usando la opción Asignar en Conjuntos de reglas administrados:

Captura de pantalla que muestra un ejemplo de cómo asignar conjuntos de reglas administradas.

Al habilitar la protección contra bots, se bloquean, permiten o registran las solicitudes entrantes que coincidan con las reglas de bot en función de la acción que configuró. Bloquea bots malintencionados, permite rastreadores comprobados del motor de búsqueda, bloquea los rastreadores desconocidos del motor de búsqueda y registra bots desconocidos de forma predeterminada. Existe la opción de establecer acciones personalizadas para bloquear, permitir o registrar diferentes tipos de bots.

Puede acceder a los registros de WAF desde una cuenta de almacenamiento, un centro de eventos o Log Analytics, o bien enviar los registros a una solución de un asociado.

Modos de WAF

El WAF de Application Gateway se puede configurar para ejecutarse en dos modos:

  • Modo de detección: supervisa y registra todas las alertas de amenazas. Puede activar el registro de diagnósticos de Application Gateway en la sección Diagnósticos. También debe asegurarse de que el registro del WAF está seleccionado y activado. El firewall de aplicaciones web no bloquea solicitudes entrantes cuando se ejecuta en modo de detección.
  • Modo de prevención: bloquea las intrusiones y los ataques que detectan las reglas. El atacante recibe una excepción de "403: acceso no autorizado" y se cierra la conexión. El modo de prevención registra dichos ataques en los registros del WAF.

Motores WAF

El motor del firewall de aplicaciones web (WAF) de Azure es el componente que inspecciona el tráfico y determina si una solicitud incluye una firma que representa un posible ataque. Cuando se usa CRS 3.2, o cualquier versión posterior, el firewall de aplicaciones web ejecuta el nuevo motor de WAF, que proporciona un mayor rendimiento y un conjunto mejorado de características. Cuando se usan versiones anteriores de CRS, WAF se ejecuta en un motor anterior. Las nuevas características solo están disponibles en el nuevo motor de WAF de Azure.

Acciones de WAF

Es posible elegir qué acción se ejecutará cuando una solicitud coincida con alguna condición de regla. Se admiten las siguientes acciones:

  • Permitir: la solicitud pasa por WAF y se reenvía al servidor back-end. Ninguna otra regla de prioridad más baja puede bloquear esta solicitud. Las acciones permitidas solo se puede aplicar al conjunto de reglas de Bot Manager y no se pueden aplicar al conjunto de reglas básico.
  • Bloquear: la solicitud está bloqueada y WAF envía una respuesta al cliente sin reenviar la solicitud al servidor back-end.
  • Registrar: la solicitud se registra en los registros de WAF, y WAF sigue evaluando las reglas de prioridad más baja.
  • Puntuación de anomalías: esta es la acción predeterminada para el conjunto de reglas de CRS donde la puntuación total de anomalías se incrementa cuando hay una coincidencia con una regla con esta acción. La puntuación de anomalías no se puede aplicar al conjunto de reglas de Bot Manager.

Modo de puntuación de anomalías

Open Web Application Security Project (OWASP) tiene dos modos para decidir si se va a bloquear el tráfico: el modo tradicional y el modo de puntuación de anomalías.

En el modo tradicional, se considera el tráfico que coincide con alguna regla, independientemente de si otra regla coincide. Este modo es fácil de entender, pero la falta de información sobre cuántas reglas coinciden con una solicitud específica representa una limitación. Es por eso que se introdujo el modo de puntuación de anomalías. Es el valor predeterminado en OWASP 3.x.

En el modo de puntuación de anomalías, el tráfico que coincide con alguna regla no se bloquea de inmediato cuando el firewall está en modo de prevención. Las reglas tienen una gravedad determinada: Crítica, Error, Advertencia o Aviso. Dicha gravedad afecta a un valor numérico para la solicitud, denominado como la puntuación de anomalía. Por ejemplo, una coincidencia con la regla Advertencia contribuye con un valor de 3 a la puntuación. Una coincidencia con la regla Crítica, con 5.

Gravedad Valor
Crítico 5
Error 4
Advertencia 3
Aviso 2

Hay un umbral de 5 para que la puntuación de anomalías bloquee el tráfico. Por lo tanto, solo hace falta una coincidencia con la regla Crítica para que el WAF de Application Gateway bloquee una solicitud, includo en modo de prevención. Pero una coincidencia con la regla Advertencia solo aumenta la puntuación de anomalías en 3, lo que no es suficiente para bloquear por sí misma el tráfico.

Configuración

Puede configurar e implementar todas las directivas de WAF mediante Azure Portal, API de REST, plantillas de Azure Resource Manager y Azure PowerShell.

Supervisión de WAF

Es importante supervisar el estado de la puerta de enlace de aplicaciones. Es posible admitirlo mediante la integración de WAF y las aplicaciones que protege con Microsoft Defender for Cloud, Azure Monitor y los registros de Azure Monitor.

Diagrama que muestra un ejemplo de una funcionalidad de supervisión del firewall de aplicaciones web de Azure.

Azure Monitor

Los registros de Application Gateway se integran con Azure Monitor. Esto permite realizar un seguimiento de la información de diagnósticos incluidos los registros y las alertas de WAF. Puede acceder a esta funcionalidad en la pestaña Diagnósticos del recurso de Application Gateway en el portal o directamente en Azure Monitor.