Contoh ACFP: Respons khusus untuk kredensil yang dikompromikan - AWS WAF, AWS Firewall Manager, dan AWS Shield Advanced

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Contoh ACFP: Respons khusus untuk kredensil yang dikompromikan

Secara default, pemeriksaan kredensil yang dilakukan oleh grup aturan AWSManagedRulesACFPRuleSet menangani kredenal yang dikompromikan dengan memberi label permintaan dan memblokirnya. Untuk detail tentang kelompok aturan dan perilaku aturan, lihatAWS WAF Grup aturan pencegahan penipuan (ACFP) pembuatan akun Kontrol Penipuan.

Untuk memberi tahu pengguna bahwa kredensi akun yang mereka berikan telah disusupi, Anda dapat melakukan hal berikut:

  • Ganti SignalCredentialCompromised aturan ke Count — Ini menyebabkan aturan hanya menghitung dan memberi label permintaan yang cocok.

  • Tambahkan aturan pencocokan label dengan penanganan khusus — Konfigurasikan aturan ini agar sesuai dengan label ACFP dan untuk melakukan penanganan kustom Anda.

Daftar ACL web berikut menunjukkan grup aturan terkelola ACFP dari contoh sebelumnya, dengan tindakan SignalCredentialCompromised aturan diganti untuk dihitung. Dengan konfigurasi ini, ketika grup aturan ini mengevaluasi permintaan web apa pun yang menggunakan kredensi yang dikompromikan, ia akan memberi label permintaan, tetapi tidak memblokirnya.

Selain itu, web ACL sekarang memiliki respons khusus bernama aws-waf-credential-compromised dan aturan baru bernamaAccountSignupCompromisedCredentialsHandling. Prioritas aturan adalah pengaturan numerik yang lebih tinggi daripada grup aturan, sehingga berjalan setelah grup aturan dalam evaluasi ACL web. Aturan baru cocok dengan permintaan apa pun dengan label kredensi grup aturan yang disusupi. Saat aturan menemukan kecocokan, aturan tersebut menerapkan Block tindakan ke permintaan dengan badan respons khusus. Badan respons khusus memberikan informasi kepada pengguna akhir bahwa kredensialnya telah dikompromikan dan mengusulkan tindakan untuk diambil.

{ "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}" } } }