ACFP-Beispiel: Benutzerdefinierte Antwort auf kompromittierte Anmeldeinformationen - AWS WAFAWS Firewall Manager, und AWS Shield Advanced

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

ACFP-Beispiel: Benutzerdefinierte Antwort auf kompromittierte Anmeldeinformationen

Standardmäßig AWSManagedRulesACFPRuleSet behandelt die Überprüfung der Anmeldeinformationen, die von der Regelgruppe durchgeführt wird, kompromittierte Anmeldeinformationen, indem sie die Anfrage kennzeichnet und blockiert. Weitere Informationen zur Regelgruppe und zum Regelverhalten finden Sie unter AWS WAF Regelgruppe Betrugsprävention (ACFP) zur Kontoerstellung bei der Betrugsbekämpfung.

Um den Benutzer darüber zu informieren, dass die von ihm angegebenen Kontoanmeldeinformationen kompromittiert wurden, können Sie wie folgt vorgehen:

  • SignalCredentialCompromisedRegel überschreiben auf Count — Dadurch zählt und kennzeichnet die Regel nur übereinstimmende Anfragen.

  • Fügen Sie eine Label-Abgleichsregel mit benutzerdefinierter Behandlung hinzu — Konfigurieren Sie diese Regel so, dass sie mit dem ACFP-Label übereinstimmt und Ihre benutzerdefinierte Behandlung durchführt.

Die folgenden Web-ACL-Listen zeigen die von ACFP verwaltete Regelgruppe aus dem vorherigen Beispiel, wobei die SignalCredentialCompromised Regelaktion überschrieben wurde, sodass sie zählt. Wenn diese Regelgruppe bei dieser Konfiguration eine Webanfrage auswertet, die kompromittierte Anmeldeinformationen verwendet, kennzeichnet sie die Anfrage, blockiert sie jedoch nicht.

Darüber hinaus hat die Web-ACL jetzt eine benutzerdefinierte Antwort mit dem Namen aws-waf-credential-compromised und eine neue Regel mit dem Namen. AccountSignupCompromisedCredentialsHandling Bei der Regelpriorität handelt es sich um eine höhere numerische Einstellung als bei der Regelgruppe, sodass sie bei der Web-ACL-Evaluierung hinter der Regelgruppe ausgeführt wird. Die neue Regel gleicht alle Anfragen ab, die das Label „Kompromittierte Anmeldeinformationen“ der Regelgruppe aufweisen. Wenn die Regel eine Übereinstimmung findet, wendet sie die Block Aktion auf die Anfrage mit dem benutzerdefinierten Antworttext an. Der benutzerdefinierte Antworttext informiert den Endbenutzer darüber, dass seine Anmeldeinformationen kompromittiert wurden, und schlägt eine zu ergreifende Maßnahme vor.

{ "Name": "compromisedCreds", "Id": "... ", "ARN": "arn:aws:wafv2:us-east-1:111122223333:regional/webacl/compromisedCreds/...", "DefaultAction": { "Allow": {} }, "Description": "", "Rules": [ { "Name": "AWS-AWSManagedRulesACFPRuleSet", "Priority": 0, "Statement": { "ManagedRuleGroupStatement": { "VendorName": "AWS", "Name": "AWSManagedRulesACFPRuleSet", "ManagedRuleGroupConfigs": [ { "AWSManagedRulesACFPRuleSet": { "CreationPath": "/web/signup/submit-registration", "RegistrationPagePath": "/web/signup/registration", "RequestInspection": { "PayloadType": "JSON", "UsernameField": { "Identifier": "/form/username" }, "PasswordField": { "Identifier": "/form/password" }, "EmailField": { "Identifier": "/form/email" }, "PhoneNumberFields": [ { "Identifier": "/form/country-code" }, { "Identifier": "/form/region-code" }, { "Identifier": "/form/phonenumber" } ], "AddressFields": [ { "Identifier": "/form/name" }, { "Identifier": "/form/street-address" }, { "Identifier": "/form/city" }, { "Identifier": "/form/state" }, { "Identifier": "/form/zipcode" } ] }, "EnableRegexInPath": false } } ], "RuleActionOverrides": [ { "Name": "SignalCredentialCompromised", "ActionToUse": { "Count": {} } } ] } }, "OverrideAction": { "None": {} }, "VisibilityConfig": { "SampledRequestsEnabled": true, "CloudWatchMetricsEnabled": true, "MetricName": "AWS-AWSManagedRulesACFPRuleSet" } }, { "Name": "AccountSignupCompromisedCredentialsHandling", "Priority": 1, "Statement": { "LabelMatchStatement": { "Scope": "LABEL", "Key": "awswaf:managed:aws:acfp:signal:credential_compromised" } }, "Action": { "Block": { "CustomResponse": { "ResponseCode": 406, "CustomResponseBodyKey": "aws-waf-credential-compromised", "ResponseHeaders": [ { "Name": "aws-waf-credential-compromised", "Value": "true" } ] } } }, "VisibilityConfig": { "SampledRequestsEnabled": true, "CloudWatchMetricsEnabled": true, "MetricName": "AccountSignupCompromisedCredentialsHandling" } } ], "VisibilityConfig": { "SampledRequestsEnabled": true, "CloudWatchMetricsEnabled": true, "MetricName": "compromisedCreds" }, "Capacity": 51, "ManagedByFirewallManager": false, "LabelNamespace": "awswaf:111122223333:webacl:compromisedCreds:", "CustomResponseBodies": { "aws-waf-credential-compromised": { "ContentType": "APPLICATION_JSON", "Content": "{\n \"credentials-compromised\": \"The credentials you provided have been found in a compromised credentials database.\\n\\nTry again with a different username, password pair.\"\n}" } } }