Un grupo de reglas administradas de AWS en AWS WAF bloquea las solicitudes legítimas a mi aplicación. Quiero entender cómo estas reglas provocan falsos positivos. También quiero mantener en vigor las reglas administradas y permitir el paso del tráfico legítimo.
Resolución
En primer lugar, identifica los falsos positivos provocados por las reglas administradas de AWS. Luego, usa etiquetas o una instrucción de ámbito reducido para agregar esos falsos positivos a tu lista de permitidos.
Detección de errores de falsos positivos en grupos de reglas administradas
Sigue estos pasos:
-
En terminatingRuleId de tus registros de AWS WAF, busca el grupo de reglas del administrador que bloquea la solicitud legítima. El siguiente es un ejemplo de un registro de AWS WAF:
"timestamp": 1712236911743,
"formatVersion": 1,
"webaclId": "arn:aws:wafv2:us-west-2:***:regional/webacl/WAFtester/3c372***-***",
"terminatingRuleId": "AWS-AWSManagedRulesCommonRuleSet",
"terminatingRuleType": "MANAGED_RULE_GROUP",
"action": "BLOCK",
"terminatingRuleMatchDetails": [],
"ruleGroupList": [{
"ruleGroupId": "AWS#AWSManagedRulesCommonRuleSet",
"terminatingRule": {
"ruleId": "SizeRestrictions_BODY",
"action": "BLOCK",
"overriddenAction": "BLOCK",
"ruleMatchDetails": null
},
"nonTerminatingMatchingRules": [],
"excludedRules": null,
"customerConfig": null
}],
-
En terminatingRule, busca ruleId para identificar la regla que bloquea la solicitud legítima. Por ejemplo: ****"SizeRestrictions_Body".
-
Identifica el atributo o los criterios que causan el falso positivo. Por ejemplo, si un administrador de base de datos ejecuta procedimientos almacenados de forma remota, sus solicitudes pueden contener un gran volumen de datos. El grupo de reglas ManagedRulesCommonRuleSet bloquea estas solicitudes debido a la regla SizeRestrictions_Body.
Adición de falsos positivos a la lista de permitidos
Configura la lista de control de acceso web (ACL web) para permitir las solicitudes legítimas a través del grupo de reglas administradas que provoca el falso positivo. Para modificar el grupo de reglas administradas, utiliza etiquetas o instrucciones de ámbito reducido.
Nota: Se recomienda usar etiquetas para reglas explícitas detalladas. La instrucción de ámbito reducido no inspecciona las solicitudes que están fuera del ámbito con respecto a todas las reglas de un grupo de reglas.
Etiquetas
Utiliza las etiquetas agregadas por las reglas administradas de AWS para evitar falsos positivos. Al crear reglas personalizadas que hagan coincidir las solicitudes con estas etiquetas, cambia la acción predeterminada de las reglas dentro del grupo de reglas administradas.
Sigue estos pasos:
- Abre la consola de AWS WAF.
- En el panel de navegación, selecciona AWS WAF.
- Elige Paquetes de protección y recursos.
- En Paquetes de protección, selecciona el menú desplegable Conjuntos y grupos administrados y elige Administrar conjuntos de IP.
- En el panel derecho, elige Crear nuevo conjunto de direcciones IP.
- Introduce el nombre del conjunto de direcciones IP.
Si usas este conjunto de IP en CloudFront, en Ámbito elige CloudFront.
(Opcional) Introduce una descripción.
Elige tu versión de IP.
Introduce la dirección IP.
- Selecciona Guardar.
- Busca tu paquete de protección y elige Ver y editar junto a Reglas.
- En el panel derecho, selecciona las reglas administradas de AWS que bloquean tus solicitudes.
- En Anulaciones de reglas, cambia la acción a Contar para la regla que está bloqueando la solicitud.
- Selecciona Guardar regla.
- En el panel derecho, selecciona Agregar reglas.
Elige Regla personalizada y selecciona Siguiente.
Vuelve a elegir Regla personalizada y selecciona Siguiente.
- Establece la Acción de la regla en BLOQUEAR.
- Introduce el nombre de la regla.
- En Si una solicitud, expande el menú desplegable y elige cumple todas las instrucciones (AND).
- En Instrucción 1, completa lo siguiente:
En Inspeccionar, elige Tiene una etiqueta.
En Instrucción, elige Etiqueta.
En Clave de coincidencia, selecciona la etiqueta de la regla del grupo de reglas administradas de AWS que bloquea tus solicitudes.
- En Instrucción 2, completa lo siguiente:
En Inspeccionar, elige Se origina en una dirección IP en.
En Instrucción, en Lista de direcciones IP, selecciona tu conjunto de IP.
Amplía Configuración de la regla, en Negar instrucción (NOT), selecciona Negar los resultados de la instrucción.
En Dirección IP que se va a usar como dirección de origen, elige Dirección IP de origen.
- Elige Crear regla.
- Para establecer la prioridad de las reglas, selecciona Editar orden de reglas en el panel derecho y arrastra la regla hasta debajo del grupo de reglas administradas de AWS.
Nota: Las reglas se aplican en el orden en que aparecen.
- Selecciona Guardar orden de reglas.
Instrucción de ámbito reducido
Usa una instrucción de ámbito reducido para reducir el ámbito de las solicitudes que evalúa la regla o el grupo de reglas. Al agregar una instrucción de ámbito reducido a un grupo de reglas, las solicitudes se pueden inspeccionar. La instrucción omite las direcciones IP legítimas que se incluyen en la instrucción.
Sigue estos pasos:
- Abre la consola de AWS WAF.
- En el panel de navegación, selecciona AWS WAF.
- Elige Paquetes de protección y recursos.
- En Paquetes de protección, haz clic en Conjuntos y grupos administrados y elige Administrar conjuntos de IP.
- En el panel derecho, elige Crear nuevo conjunto de direcciones IP.
- Introduce el nombre del conjunto de direcciones IP.
Si usas este conjunto de IP en CloudFront, en Ámbito elige CloudFront.
(Opcional) Introduce una descripción.
Elige tu versión de IP.
Introduce la dirección IP.
- Selecciona Guardar.
- Busca tu paquete de protección y elige Ver y editar junto a Reglas.
- En el panel derecho, selecciona el grupo de reglas administradas de AWS que bloquea tus solicitudes.
- En Inspección, selecciona Instrucción de coincidencia.
- En Si una solicitud, selecciona no cumple la instrucción (NOT).
- En Inspeccionar, selecciona Se origina en una dirección IP en.
- En Instrucción, en Lista de direcciones IP, selecciona tu conjunto de IP.
- Amplía Configuración de la regla y selecciona la dirección IP de origen como origen.
- Selecciona Guardar regla.