跳至内容

WAF什么情况下会自动创建规则

0

什么情况下CloudFront会自动创建一条关于限制地理位置的AWF的规则,名称是CreatedByCloudFrontForDistributioneaaaaaaaa-Geo-BlockRule。能明确没有修正过CloudFront geographic restrictions,能帮助我一下吗?谢谢大家。

2 回答
0

CreatedByCloudFrontForDistribution{aaaa}-Geo-BlockRule 这种命名规则的 WAF 规则,是由 CloudFront Security Dashboard(安全仪表板) 自动创建的。具体触发条件如下:

触发自动创建的具体操作

CloudFront 控制台的 Security Dashboard 中,当你执行以下操作时会自动创建:

将鼠标悬停在安全仪表板中的某个国家柱状图上,然后点击 Block 来封锁该国家

关键机制是:CloudFront 和 AWS WAF 都提供地理限制功能。CloudFront 的地理限制是免费的,但 CloudFront 地理限制的指标不会显示在安全仪表板中。要查看被封锁国家请求的指标,必须使用 AWS WAF 的地理限制

所以当你在 Security Dashboard 上点击"Block"某个国家时,CloudFront 不会使用自己免费的 Geographic Restrictions 功能,而是自动在关联的 WAF Web ACL 中创建一条 Geo-Block 规则,规则名称就是 CreatedByCloudFrontForDistribution{DistributionId}-Geo-BlockRule

典型的操作路径

  1. CloudFront Console → 选择某个 Distribution
  2. 进入 Security 标签(Security Dashboard)
  3. 查看 Top countriesGeographic 图表
  4. 悬停在某个国家的柱状图上
  5. 点击 Block 按钮
  6. → CloudFront 自动在 WAF Web ACL 中创建 CreatedByCloudFrontForDistribution...-Geo-BlockRule 规则

需要注意的前提条件

必须启用 AWS WAF 才能在 CloudFront Security Dashboard 中查看安全指标。如果没有启用 AWS WAF,则只能使用 Security Dashboard 来启用 AWS WAF 或配置 CloudFront 的地理限制

换句话说,自动创建 Geo-BlockRule 的前提是该 CloudFront Distribution 已经关联了一个 WAF Web ACL

如何确认是哪次操作导致的

你说确定没有修改过 CloudFront Geographic Restrictions —— 这是正确的理解,因为:

  • CloudFront Geographic Restrictions(在 Distribution 的 General settings 下):由 CloudFront 自己拦截,不会创建 WAF 规则
  • Security Dashboard 上点击 Block 国家:会在 WAF 中创建规则(也就是你看到的这条规则)

建议的排查步骤

  1. 查看 CloudTrail 日志:搜索 UpdateWebACL 事件,过滤 EventName = UpdateWebACL,能看到是哪个 IAM 用户/角色、在什么时间通过什么途径调用的

    eventName = UpdateWebACL
    requestParameters.name 包含 "CreatedByCloudFrontForDistribution"
    
  2. 检查规则创建时间:在 WAF Console 里查看这条规则,结合 CloudTrail 可以定位到具体操作时间

  3. 排查可能的操作人:共享账号的情况下,可能是其他同事在 CloudFront Security Dashboard 上点击了国家封锁按钮

专家
已回答 25 天前
0

您好:

我是 Bright。

首先您应该是已经为 Cloudfront 分配启用 WAF 了,而这时候您切换到该分配 -> 安全性 页面时,就会看到根据请求来源国家的分析面板如下: Cloudfront-security

  • 如同图中红色箭头处,当你将鼠标放到常用国家/地区时,会显示选项让您决定是否封锁该国家的请求,一旦选择 Block 该国家,Cloudfront 就会自动帮您在 WAF WebACL 中添加一条名为 CreatedByCloudFrontForDistribution{DistributionId}-Geo-BlockRule 的规则。
  • 如果您是想使用 Cloudfront 原生的 Geographic Restrictions 功能,则需要修改图中的红框处。

若想要知道是何时进行这个操作,可以切换到弗吉尼亚北部(us-east-1)区域–因为 CLoudfront 的 WAF 相关 Cloudtrail 事件都纪录在此区域–并查询相关的 UpdateWebACL Cloudtrail 事件纪录。另外请注意,Cloudtrail 默认只会留存近90天的事件纪录。

如有其他疑问,欢迎继续回复。若有需要进一步的支持,也欢迎联络 AWS 技术支持: https://docs.aws.amazon.com/zh_cn/awssupport/latest/user/case-management.html

祝您顺心。

AWS
已回答 25 天前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。