Blocage des demandes dont le AWS WAF jeton n'est pas valide - AWS WAF, AWS Firewall Manager, et AWS Shield Advanced

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Blocage des demandes dont le AWS WAF jeton n'est pas valide

Lorsque vous utilisez la menace intelligente AWS Managed RulesAWSManagedRulesACFPRuleSet, les groupes de règles et AWSManagedRulesATPRuleSetAWSManagedRulesBotControlRuleSet, les groupes de règles invoquent la gestion des AWS WAF jetons pour évaluer le statut du jeton de requête Web et étiqueter les demandes en conséquence.

Note

L'étiquetage des jetons s'applique uniquement aux demandes Web que vous évaluez à l'aide de l'un de ces groupes de règles gérés.

Pour plus d'informations sur l'étiquetage appliqué par la gestion des jetons, consultez la section précédente,AWS WAF étiquetage des jetons par le bot et groupes de règles gérés contre la fraude.

Les groupes de règles gérés d'atténuation intelligente des menaces gèrent ensuite les exigences en matière de jetons comme suit :

  • La AWSManagedRulesACFPRuleSet AllRequests règle est configurée pour exécuter l'Challengeaction sur toutes les demandes, bloquant ainsi efficacement celles qui ne possèdent pas l'étiquette du accepted jeton.

  • Le AWSManagedRulesATPRuleSet bloque les demandes portant le libellé du rejected jeton, mais il ne bloque pas les demandes portant le libellé du absent jeton.

  • Le niveau de protection AWSManagedRulesBotControlRuleSet ciblé pose un défi aux clients après avoir envoyé cinq demandes sans étiquette de accepted jeton. Il ne bloque pas une demande individuelle dont le jeton n'est pas valide. Le niveau de protection commun du groupe de règles ne gère pas les exigences en matière de jetons.

Pour plus de détails sur les groupes de règles de menaces intelligentesAWS WAF Groupe de règles de prévention des fraudes (ACFP) pour la création de comptes et la prévention des fraudes, reportez-vous aux sections AWS WAF Groupe de règles de prévention des prises de contrôle des fraudes (ATP) etAWS WAF Groupe de règles Bot Control.

Pour bloquer les demandes auxquelles il manque des jetons lors de l'utilisation du groupe de règles géré par Bot Control ou ATP

Avec les groupes de règles Bot Control et ATP, il est possible qu'une demande sans jeton valide quitte l'évaluation du groupe de règles et continue d'être évaluée par l'ACL Web.

Pour bloquer toutes les demandes dont le jeton est manquant ou dont le jeton est rejeté, ajoutez une règle à exécuter immédiatement après le groupe de règles géré afin de capturer et de bloquer les demandes que le groupe de règles ne gère pas pour vous.

Voici un exemple de liste JSON pour une ACL Web qui utilise le groupe de règles géré par ATP. L'ACL Web a une règle ajoutée pour capturer l'awswaf:managed:token:absentétiquette et la gérer. La règle limite son évaluation aux demandes Web destinées au point de terminaison de connexion, afin de correspondre à l'étendue du groupe de règles ATP. La règle ajoutée est indiquée en gras.

{ "Name": "exampleWebACL", "Id": "55555555-6666-7777-8888-999999999999", "ARN": "arn:aws:wafv2:us-east-1:111111111111:regional/webacl/exampleWebACL/55555555-4444-3333-2222-111111111111", "DefaultAction": { "Allow": {} }, "Description": "", "Rules": [ { "Name": "AWS-AWSManagedRulesATPRuleSet", "Priority": 1, "Statement": { "ManagedRuleGroupStatement": { "VendorName": "AWS", "Name": "AWSManagedRulesATPRuleSet", "ManagedRuleGroupConfigs": [ { "AWSManagedRulesATPRuleSet": { "LoginPath": "/web/login", "RequestInspection": { "PayloadType": "JSON", "UsernameField": { "Identifier": "/form/username" }, "PasswordField": { "Identifier": "/form/password" } }, "ResponseInspection": { "StatusCode": { "SuccessCodes": [ 200 ], "FailureCodes": [ 401, 403, 500 ] } } } } ] } }, "OverrideAction": { "None": {} }, "VisibilityConfig": { "SampledRequestsEnabled": true, "CloudWatchMetricsEnabled": true, "MetricName": "AWS-AWSManagedRulesATPRuleSet" } }, { "Name": "RequireTokenForLogins", "Priority": 2, "Statement": { "AndStatement": { "Statements": [ { "Statement": { "LabelMatchStatement": { "Scope": "LABEL", "Key": "awswaf:managed:token:absent" } } }, { "ByteMatchStatement": { "SearchString": "/web/login", "FieldToMatch": { "UriPath": {} }, "TextTransformations": [ { "Priority": 0, "Type": "NONE" } ], "PositionalConstraint": "STARTS_WITH" } }, { "ByteMatchStatement": { "SearchString": "POST", "FieldToMatch": { "Method": {} }, "TextTransformations": [ { "Priority": 0, "Type": "NONE" } ], "PositionalConstraint": "EXACTLY" } } ] } }, "Action": { "Block": {} }, "VisibilityConfig": { "SampledRequestsEnabled": true, "CloudWatchMetricsEnabled": true, "MetricName": "RequireTokenForLogins" } } ], "VisibilityConfig": { "SampledRequestsEnabled": true, "CloudWatchMetricsEnabled": true, "MetricName": "exampleWebACL" }, "Capacity": 51, "ManagedByFirewallManager": false, "LabelNamespace": "awswaf:111111111111:webacl:exampleWebACL:" }