写点什么

使用基于速率的 AWS WAF 规则保护网站和服务

  • 2019-11-13
  • 本文字数:1258 字

    阅读完需:约 4 分钟

使用基于速率的 AWS WAF 规则保护网站和服务

AWS WAF (Web 应用程序防火墙) 可帮助您的应用程序防御涉及恶意或错误格式请求的很多种应用程序层攻击。我在介绍此服务的第一篇文章 (New – AWS WAF) 中讲过,您可以定义与跨站点脚本、IP 地址、SQL 注入、大小或内容限制匹配的规则:



当传入请求符合规则时,将调用操作。操作可以是允许、阻止或只是对匹配项计数。现有规则模型非常强大,让您能够检测许多不同类型的攻击并予以响应。但是,对于只是包含大量来自某特定 IP 地址的有效请求的攻击,该规则模型无法作出响应。这些请求可能是 Web 层的 DDoS 攻击、暴力登录尝试,甚至是合作伙伴集成出错。


基于速率的新规则


现在我们将在 WAF 中增加基于速率的规则,这样您就能控制何时对黑名单添加或删除 IP 地址,并可以灵活处理异常和特殊情形:


将 IP 地址加入黑名单 – 您可以将发出请求的、速率超出所配置的速率阈值的 IP 地址加入黑名单。


IP 地址跟踪 – 您可以看到哪些 IP 地址当前被加入了黑名单。


删除 IP 地址 – 已加入黑名单的 IP 地址如果不再以高出所配置阈值的速率发出请求,则将自动从黑名单中删除。


IP 地址免审核 – 您可以在基于速率的规则中使用 IP 地址白名单免于将特定 IP 地址加入黑名单。例如,您可能希望允许可信赖的合作伙伴以较高的速率访问您的站点。


监控和报警 – 您可以通过针对每条规则发布的 CloudWatch 指标进行监控和发出警报。您可以结合基于速率的新规则和 WAF 条件实施精细的速率限制策略。例如,您可以使用基于速率的规则和与您的登录页面匹配的 WAF 条件。这样,您可以对登录页面设置较为严格的阈值 (以避免暴力密码攻击),而对于市场推广或系统状态页面设置较为宽松的阈值。阈值按照 5 分钟内来自单个 IP 地址的传入请求数定义。一旦超出此阈值,来自该 IP 地址的额外请求就会被阻止,直至请求速率降至阈值之下。


使用基于速率的规则 下面演示如何定义基于速率的规则来保护您网站的 /login 部分。首先在网页 URI 中定义一个与期望的字符串匹配的 WAF 条件:



然后,使用此条件来定义基于速率的规则 (该速率限制以 5 分钟时间段内的请求数表示,但一旦突破此限制,黑名单机制立即启动):



在定义好条件和规则之后,创建一个 Web ACL (ProtectLoginACL) 将这些都整合起来并与 AWS 资源 (在本例中为 CloudFront 分配) 关联:



然后将规则 (ProtectLogin) 与该 Web ACL 连接:



现在,将根据该规则和 Web ACL 保护该资源。您可以监控相关联的 CloudWatch 指标 (在本例中为 ProtectLoginProtectLoginACL)。您甚至可以创建 CloudWatch 警报,并使用这些警报在突破保护阈值时触发 Lambda 函数。此代码可以检查违反规则的 IP 地址,并作出业务驱动的复杂决策,比如添加一条白名单规则,对可信赖的合作伙伴或具有特殊付款计划的用户提供格外宽松的政策。


现已推出 基于速率的新规则现已提供,您可以立即开始使用!基于速率的规则与常规的规则同样定价;请参阅 WAF 定价页面了解更多信息。


本文转载自 AWS 技术博客。


原文链接:


https://amazonaws-china.com/cn/blogs/china/protect-web-sites-services-using-rate-based-rules-for-aws-waf/


2019-11-13 08:00985

评论

发布
暂无评论
发现更多内容

linux命令使用消费kafka的生产者、消费者

刘大猫

人工智能 kafka Linux 生产者 消费者

iVX DevOps 集成:从代码生成到 CI/CD 流水线的自动化协作实践

代码制造者

7 款最佳数据集成平台推荐

NocoBase

开源 低代码 ETL 数据集成平台 数据模型驱动

阅读源码的思路

Nick

开源 软件工程 经验之谈

「DeepSeek 技术解析」:LLM 训练中的强化学习算法

Baihai IDP

AI 强化学习 DeepSeek

java的jar后台启动

刘大猫

Java 人工智能 jar 数据分析 后台启动

BOE(京东方)第6代新型半导体显示器件生产线全面量产 打造全球显示产业新引擎

爱极客侠

鸿蒙仓颉开发语言实战教程:自定义组件

幽蓝计划

MBT 是什么?带你轻松理解基于模型的测试

巫山老妖

MBT

基于YOLOv8的人脸表情识别项目【完整源码数据集+PyQt5界面+完整训练流程+开箱即用】

申公豹

yolov8

昇腾910-PyTorch实现传统CTR模型WideDeep网络

永荣带你玩转昇腾

PyTorch 实现 Alexnet图像分类

永荣带你玩转昇腾

NPU适配推荐系统GR模型流程

永荣带你玩转昇腾

VR游戏开发的主要流程

北京木奇移动技术有限公司

软件外包公司 VR技术 VR游戏

Unity 斩获金帆奖“2025 H1 优秀出海营销增长服务”

极客天地

【拥抱鸿蒙】HarmonyOS实现扫码安装

郑知鱼

华为 鸿蒙 自动化 HarmonyOS NEXT HarmonyOS5.0

PyTorch 实现MobileNetV1用于图像分类

永荣带你玩转昇腾

最新版java面试题(八股文+场景题)

Geek_Yin

程序员 Java 面试 Java面试八股文 Java 面试题

Wireshark插件开发实战-Lua解析自定义二进制协议

歆晨技术笔记

Kyutai 推出模块化语音 AI 工具 Unmute,赋予大模型语音能力;开源语音硬件「小智 AI 」演示视觉理解能力丨日报

声网

层层剥开开鸿Bot,我们看到的是“开发者优先”

脑极体

AI

跨端生态重构×AI智能驱动:移动研发模式新纪元

xuyinyin

昇腾910-PyTorch 实现 ResNet50图像分类

永荣带你玩转昇腾

通义灵码 Agent+MCP 打造吃瓜神器

阿里云云效

阿里云 云原生 通义灵码

BOE(京东方)第6代新型半导体显示器件生产线全面量产 打造全球显示产业新引擎

科技热闻

鸿蒙仓颉开发语言实战教程:自定义tabbar

幽蓝计划

最牛的Java面试八股文1000集,不接受反驳

Geek_Yin

程序员 java面试 Java面试题 Java面试八股文

PyTorch 实现GoogleNet用于图像分类

永荣带你玩转昇腾

基于昇腾用PyTorch实现CTR模型DIN(Deep interest Netwok)网络

永荣带你玩转昇腾

DevEcoStudio 中使用模拟器时如何过滤日志

飞龙AI

鸿蒙核心技术 鸿蒙开发者工具 DevEcoStudio

VR游戏的开发框架

北京木奇移动技术有限公司

VR开发 软件外包公司 VR技术

使用基于速率的 AWS WAF 规则保护网站和服务_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章