当前位置: 首页 > news >正文

亚马逊云科技 WAF 指南(十)用 Amazon Q Developer CLI 解决 DDoS 防护与 SEO 冲突问题

亚马逊云科技于 2025 年 6 月推出了全自动化的 WAF AntiDDoS 托管规则组。相比于 Amazon Shield Advanced,它提供更快速的秒级检测与缓解,以及更高精准度和更灵活的配置。其中 ChallengeAllDuringEvent 规则会在攻击事件发生时,对所有请求(除了预先定义的 Challenge URI 例外路径)进行 JavaScript Challenge(软性缓解)。

📢限时插播:Amazon Q Developer 来帮你做应用啦!

🌟10分钟帮你构建智能番茄钟应用,1小时搞定新功能拓展、测试优化、文档注程和部署

⏩快快点击进入《Agentic Al 帮你做应用 -- 从0到1打造自己的智能番茄钟》实验

免费体验企业级 AI 开发工具的真实效果吧

构建无限,探索启程!

问题:搜索引擎爬虫与 JavaScript Challenge 的冲突

部分搜索引擎的爬虫无法正确处理 JavaScript Challenge。如下图所示,它们可能会直接将 Challenge 响应作为索引内容并显示在搜索结果页面上,严重影响网站的 SEO 表现。

我们在另一篇博客文章 亚马逊云科技 WAF 部署小指南(九)利用 Amazon WAF Bot Control 增强网站安全与搜索引擎优化(SEO)表现 中介绍了 WAF Common Bot Control 托管规则组如何识别合法 SEO 爬虫和业务机器人。但在 AntiDDoS 场景下,使用 Bot Control 来标记搜索引擎爬虫并配置 Scope-down 成本过高,不够经济。

解决方案:基于 ASN 的爬虫识别

我们可以借鉴 Common Bot Control 的识别原理,利用同样在 2025 年 6 月发布的 ASN (Autonomous System Number) match statement 功能。通过同时验证 User-Agent 关键字和爬虫 IP 地址所属的 ASN,可以准确识别请求是否来自合法的搜索引擎爬虫。

这种双重验证机制既能防止恶意用户伪造 User-Agent,又能确保只有真正来自搜索引擎官方 IP 段的请求才会被排除在 Challenge 之外。

使用 Amazon Q Developer CLI 生成复杂的 WAF 规则

这种识别逻辑涉及复杂的多层嵌套条件判断,手工编写 JSON 规则既耗时又容易出错。使用 Amazon Q Developer CLI 可以大大简化这个过程。Amazon Q Developer CLI 是 Amazon Q 的命令行工具,Amazon Q 是一个由生成式 AI 驱动的助手。您可以使用它来询问有关 AWS 架构、资源和一般开发任务的问题。我们向 Q CLI 描述需求,让它生成相应的 WAF scope-down statement。

由于 WAF ASN match statement 功能刚发布不久,超出了 AI 模型的训练数据范围,Q CLI 最初提供的 Scope-down statement 使用了 IP Set 或 Label 来判断爬虫 IP 地址是否属于 ASN 15169(Google)或 ASN 8075(Microsoft Bing)。

我们参考 Amazon WAF Developer Guide 中的 ASN match statement 示例,将正确的语法结构提供给 Q CLI 进行学习和调整。

仅通过 2 次交互,Q CLI 就成功生成了包含多层嵌套逻辑的复杂 WAF scope-down statement,大大提高了开发效率。完整的 Scope-down statement 如下:

{"NotStatement": {"Statement": {"OrStatement": {"Statements": [{"AndStatement": {"Statements": [{"ByteMatchStatement": {"SearchString": "google","FieldToMatch": {"SingleHeader": {"Name": "user-agent"}},"TextTransformations": [{"Priority": 0,"Type": "LOWERCASE"}],"PositionalConstraint": "CONTAINS"}},{"AsnMatchStatement": {"AsnList": [15169]}}]}},{"AndStatement": {"Statements": [{"ByteMatchStatement": {"SearchString": "bing","FieldToMatch": {"SingleHeader": {"Name": "user-agent"}},"TextTransformations": [{"Priority": 0,"Type": "LOWERCASE"}],"PositionalConstraint": "CONTAINS"}},{"AsnMatchStatement": {"AsnList": [8075]}}]}}]}}}
}

配置 AntiDDoS 托管规则组

接下来配置 AntiDDoS AMR:

  1. 在 Web ACL 中编辑 AWS-AWSManagedRulesAntiDDoSRuleSet

  2. Scope of inspection 部分选择 Only inspect requests that match a scope-down statement

  3. 点击 Rule JSON editor

  4. 将上面生成的 statement 内容复制粘贴到编辑器中

  5. 保存配置

配置完成后,即使在 DDoS 攻击期间,来自 Google 和 Microsoft Bing 的合法爬虫请求也不会受到 ChallengeAllDuringEvent 规则的影响,确保网站的搜索引擎可见性。

Google 和 Microsoft Bing 占据了超过 90% 的搜索引擎市场份额。如果需要支持其他搜索引擎爬虫(如百度、Yandex 等),可以采用相同的方法,让 Q CLI 生成包含相应 ASN 的新 Scope-down statement。您还可以将 Scope-down statement 中的关键字改成 Googlebot 和 Bingbot,以实现更精准更严格的控制。

请阅读我们的另一篇博文全新的 Amazon WAF AntiDDoS 托管规则,了解更多的 AntiDDoS AMR 高阶用法。

总结

Amazon Q Developer CLI 结合了强大的 AI 能力和对亚马逊云科技服务的深度理解,能够高效解决复杂的 AWS 配置挑战。在本案例中,我们成功利用 Q CLI 生成了复杂的 WAF 规则,有效解决了 DDoS 防护与 SEO 优化之间的冲突。通过使用 ASN match statement 结合精确的 User-Agent 匹配,我们实现了对合法搜索引擎爬虫的准确识别,确保在 DDoS 攻击期间网站的搜索引擎可见性不受影响。这种方法相比使用 Bot Control 托管规则组更加经济高效,同时保持了相同的安全防护水平。

随着亚马逊云科技服务的持续演进和 AI 工具的不断完善,Amazon Q Developer CLI 正成为 AWS 开发者和运维人员的重要生产力工具,帮助您更快速、更准确地完成各种复杂的云基础设施配置任务。

附件:本文所使用的提示词

第一次交互的提示词:

请帮我写一个WAF scope-down statement,不检查Google和Bing搜索引擎爬虫发起的请求,只检查其他的请求。已知Google爬虫的特征为:1)User-Agent包含“Google”关键字;2)IP地址属于ASN 15169。Bing爬虫的特征为:1)User-Agent包含“Bing”关键字;2)IP地址属于ASN 8075。

第二次交互的提示词:

AWS WAF现在支持ASN match statement,示例如下。请根据这个示例修改上面的scope-down statement。```  "Statement": {"AsnMatchStatement": {"AsnList": [64496, 64500]},```

*前述特定亚马逊云科技生成式人工智能相关的服务目前在亚马逊云科技海外区域可用。亚马逊云科技中国区域相关云服务由西云数据和光环新网运营,具体信息以中国区域官网为准。

本期最新实验为《Agentic AI 帮你做应用 —— 从0到1打造自己的智能番茄钟》

✨ 自然语言玩转命令行,10分钟帮你构建应用,1小时搞定新功能拓展、测试优化、文档注释和部署

💪 免费体验企业级 AI 开发工具,质量+安全全掌控

⏩️[点击进入实验] 即刻开启 AI 开发之旅

构建无限, 探索启程!

http://www.dtcms.com/a/482148.html

相关文章:

  • 网络营销是什么 能做什么seo项目经理
  • 咨询行业网站建设公司太仓市建设局网站
  • 自己开外销网站怎么做手机分销网站
  • 那个网站可以做ppt赚钱建设银行网站查询密码怎么开通
  • EI输入整形振动抑制方法介绍
  • Python爬虫实战手册
  • 教程: 在网页中利用原生CSS实现3D旋转动画
  • 机器学习从零到精通:理论、实践与工业级应用完整指南
  • 泰州模板建站源码移动端网页
  • 机器学习中的灰色预测算法:原理、实现与实战应用完整教程
  • 教育培训网站开发企业软件管理系统排名
  • jvm中的栈
  • 完整项目实战:使用 Playwright MCP 构建网页交互 AI 助手教程
  • PortSwigger靶场之 CSRF where token is not tied to user session通关秘籍
  • 四川住房城乡建设厅网站眉山注册公司流程和费用
  • 【数据库】时序数据库选型指南:在大数据与工业4.0时代,为何 Apache IoTDB 成为智慧之选?
  • 免费建站网站seowordpress 调用 discuz
  • 多因子模型识别避险共振:AI量化系统捕捉黄金突破4100美元的驱动信号
  • DAPLINK可以烧录,但无法调试仿真
  • 手机网站设计咨询永久免费的连外网的软件
  • 只出现一次的数字(位运算算法)
  • Unity 跨平台构建完全指南
  • linux的centos7安装git软件
  • 江苏省省建设厅网站免费制作网站服务器
  • 前端碎碎念笔记:JavaScript 对象的继承与多态
  • 【Xcode】Macos p12 证书过期时间查看
  • 【AI视频】从单模型,到AI Agent工作流
  • C#知识学习-017(修饰符_6)
  • 视频营销网站网站前端设计与制作ppt
  • 基于单片机直流电机PWM调速闭环控制系统Proteus仿真(含全部资料)