Azure Web Application Firewall (WAF)

Sebastian Pacheco 286 Puntos de reputación
2025-03-18T15:43:34.54+00:00

Hola a todos... tengo un AKS con Application Gateway y le active el WAF v2... quiero estar seguro sobre la información que puedo obtener de los request que llegan por el WAF y así poder estar monitoreando.

Si desde el mismo appgw voy a la sección de LOGs veo que estan las 4 secciones que selecciones para que se almacenaran en mi loganalytics:

Captura desde 2025-03-18 12-27-46

En este momento tengo el WAF En modo "Detección", para ver todo lo que pasa por ahí tendría que hacer consultas a "AGWFirewallLogs" y con eso me traería TODO lo que esta pasando?? esa cantidad de columnas son todas las que existen?:

*TenantId, TimeGenerated [UTC], OperationName, InstanceId, ClientIp, RequestUri, RuleSetType, RuleSetVersion, RuleId, Message, Action, DetailedMessage, DetailedData, FileDetails, LineDetails, Hostname, TransactionId, Type y _ResourceId
*
En base solo a esos campos yo debo hacer consultas para monitorear las solicitudes de mi waf??

Por ejemplo si quisiera ver los registros de lo que waf (modo detección)detecta como "sospechoso" como deberia ser la consulta?

AGWFirewallLogs
| where Action == "Matched" 
| project TimeGenerated, ClientIp, RequestUri, Action, RuleId, Message, DetailedMessage, Hostname
| order by TimeGenerated desc

Si me ayudan un poquito a entender este tema del waf, lo que podría llegar a observar y si estos son todas las columnas que tiene.

Gracias.

Azure Information Protection
Azure Information Protection
Servicio de Azure que se usa para controlar y ayudar a proteger el correo electrónico, los documentos y los datos confidenciales que se comparten fuera de la empresa.
48 preguntas
0 comentarios No hay comentarios
{count} votos

1 respuesta

Ordenar por: Muy útil
  1. Jonathan Pereira Castillo 17,095 Puntos de reputación Personal externo de Microsoft Moderador
    2025-03-18T20:06:41.39+00:00

    ¡Hola Sebastian Pacheco!

    ¡Bienvenido/a a Microsoft Q&A!

    Entiendo que estás buscando información detallada sobre cómo monitorear y consultar los registros de tu Azure Web Application Firewall (WAF) en modo "Detección". Aquí tienes una guía completa para ayudarte a entender mejor este proceso:

    Información de los Registros del WAF

    Cuando activas el WAF en modo "Detección", puedes obtener información detallada sobre las solicitudes que pasan a través del WAF. Los registros que mencionaste (AGWFirewallLogs) contienen varias columnas importantes que te permiten monitorear y analizar las solicitudes. Aquí están las columnas que mencionaste y su descripción:

    • TenantId: Identificador del inquilino de Azure.
    • TimeGenerated [UTC]: Fecha y hora en que se generó el registro.
    • OperationName: Nombre de la operación realizada.
    • InstanceId: Identificador de la instancia del Application Gateway.
    • ClientIp: Dirección IP del cliente que realizó la solicitud.
    • RequestUri: URI de la solicitud.
    • RuleSetType: Tipo de conjunto de reglas aplicado.
    • RuleSetVersion: Versión del conjunto de reglas.
    • RuleId: Identificador de la regla que coincidió.
    • Message: Mensaje asociado con la regla que coincidió.
    • Action: Acción tomada por el WAF (por ejemplo, "Matched").
    • DetailedMessage: Mensaje detallado sobre la solicitud.
    • DetailedData: Datos detallados adicionales.
    • FileDetails: Detalles del archivo (si aplica).
    • LineDetails: Detalles de la línea (si aplica).
    • Hostname: Nombre del host de la solicitud.
    • TransactionId: Identificador de la transacción.
    • Type: Tipo de registro.
    • _ResourceId: Identificador del recurso.

    Consultas para Monitorear Solicitudes

    Para monitorear las solicitudes que pasan por el WAF y detectar actividades sospechosas, puedes usar consultas en Azure Log Analytics. Aquí tienes un ejemplo de consulta para ver los registros donde el WAF detecta algo como "sospechoso":

    AGWFirewallLogs

    | where Action == "Matched"

    | project TimeGenerated, ClientIp, RequestUri, Action, RuleId, Message, DetailedMessage, 

    Hostname

    | order by TimeGenerated desc

    Esta consulta filtra los registros donde la acción es "Matched" y proyecta las columnas más relevantes para tu análisis.

    Monitoreo y Análisis Adicional

    Además de las consultas básicas, puedes realizar análisis más avanzados utilizando Azure Monitor y Azure Sentinel. Aquí tienes algunos ejemplos de consultas adicionales:

    • Solicitudes Bloqueadas por IP:

    AGWFirewallLogs

    | where Action == "Blocked"

    | summarize count() by ClientIp, bin(TimeGenerated, 1h)

    | render timechart

    • Solicitudes Bloqueadas por URI:

    AGWFirewallLogs

    | where Action == "Blocked"

    | summarize count() by RequestUri, bin(TimeGenerated, 1h)

    | render timechart

    • Principales Reglas Coincidentes:

    AGWFirewallLogs

    | where Action == "Matched"

    | summarize count() by RuleId, bin(TimeGenerated, 1h)

    | where count_ > 10

    | render timechart

    Recursos Adicionales

    Para obtener más información sobre cómo configurar y monitorear el WAF en Azure, puedes consultar los siguientes recursos:

    Espero que estos consejos ayuden a resolver el problema. Si necesitas más asistencia, estoy a tu disposición.

    Saludos,

    Jonathan


    Tu opinión es muy importante para nosotros. Si esta respuesta resolvió tu consulta, por favor haz clic en 'SÍ'. Esto nos ayuda a mejorar continuamente la calidad y relevancia de nuestras soluciones. ¡Gracias por tu colaboración!


Su respuesta

Las respuestas se pueden marcar como respuestas aceptadas por el autor de la pregunta, lo que ayuda a los usuarios a conocer la respuesta que resolvió el problema del autor.