字
字节笔记本
2026年2月18日
使用 CloudFlare 免费 WAF 防止恶意注册攻击
API中转
¥120
本文介绍如何使用 CloudFlare 免费 WAF(Web Application Firewall)来防止程序/机器人恶意注册账号,通过交互式质询验证有效拦截自动注册攻击。
问题背景
作者运营的 ChemSitesHub.com 网站提供邮箱、Google、Microsoft 三种注册方式。其中邮箱注册需要邮件验证,使用的是 Resend 免费服务(每日限额 100 封邮件)。
某日,作者突然收到 Resend 的超额通知:
- 短时间内被注册 100 多个账号
- 超出 200% 的日限额
显然是遭遇了恶意注册机器人攻击,需要紧急采取防护措施。
解决方案
使用 CloudFlare 免费 WAF 添加自定义规则,对特定 URL 启用"交互式质询"(Interactive Challenge)验证,要求访问者证明自己是人类。
为什么选择 CloudFlare WAF
| 优势 | 说明 |
|---|---|
| 免费使用 | CloudFlare 免费套餐包含 WAF 功能 |
| 易于配置 | 无需修改代码,通过界面配置即可生效 |
| 即时生效 | 规则部署后立即生效 |
| 精准控制 | 可针对特定 URL 或路径设置规则 |
配置步骤
步骤 1:进入 WAF 设置
- 登录 CloudFlare 控制台
- 选择需要保护的域名
- 点击左侧菜单 安全性 → WAF → 自定义规则
步骤 2:创建自定义规则
点击 创建规则,填写以下信息:
规则名称:Block Bot Registration(或其他易识别的名称)
匹配条件:
- 字段:
URL 路径 - 运算符:
包含 - 值:
/register(根据实际注册路径调整)
操作选择:
- 选择 交互式质询(Interactive Challenge)
- 这将要求用户完成人机验证(如点击"我是人类")
步骤 3:部署规则
点击 部署 按钮,规则立即生效。
规则配置示例
基础规则(单一路径)
text
当 URL 路径包含 "/register" 时
执行:交互式质询高级规则(多个路径)
text
当 URL 路径包含 "/register" 或 "/resend-verification" 时
执行:交互式质询复合条件规则
text
当 URL 路径包含 "/register" 且 请求方法为 POST 时
执行:交互式质询效果验证
测试方法
- 清除 Cookie 后访问受保护的注册页面
- 或使用 无痕模式/新浏览器 访问
预期结果
- 首次访问会出现 人机认证界面
- 完成验证后,后续访问无需重复验证(基于 Cookie)
正常用户体验
- 真实用户只需完成一次验证
- 验证通过后,Cookie 会记住该设备
- 下次访问时自动通过,无感知
规则应用位置建议
| 页面 | 建议操作 | 原因 |
|---|---|---|
| 账号注册页面 | 必须保护 | 恶意注册的主要目标 |
| 邮件重发验证页面 | 建议保护 | 防止滥用邮件服务 |
| 登录页面 | 可选保护 | 防止暴力破解 |
| 密码重置页面 | 建议保护 | 防止滥用邮件服务 |
其他防护措施
1. 速率限制(Rate Limiting)
在 CloudFlare 中配置速率限制规则:
text
当同一 IP 在 1 分钟内请求超过 5 次注册接口时
执行:阻止 10 分钟2. 验证码(CAPTCHA)
在注册表单中添加验证码:
- Google reCAPTCHA
- hCaptcha
- CloudFlare Turnstile
3. 邮件验证优化
- 限制每小时/每日发送次数
- 添加发送冷却时间
- 使用邮件队列
4. 账号审核机制
- 新注册账号需要管理员审核
- 限制新账号功能权限
- 自动检测异常行为
监控与调整
查看 WAF 事件
在 CloudFlare 控制台中:
- 安全性 → 事件
- 查看被拦截的请求
- 分析攻击来源和模式
调整规则
根据实际拦截情况调整规则:
- 如果误伤正常用户,放宽条件
- 如果仍有漏网之鱼,收紧条件
- 定期 review 规则效果
常见问题
Q: 免费版 CloudFlare 有哪些限制?
A: 免费版包含:
- 5 条自定义 WAF 规则
- 基础 DDoS 防护
- 全球 CDN 加速
对于小型网站完全够用。
Q: 交互式质询会影响 SEO 吗?
A: 不会。CloudFlare 会自动识别搜索引擎爬虫,不会对其展示质询页面。
Q: 用户完成验证后有效期多久?
A: 基于 Cookie,通常 30 分钟到数小时不等,具体取决于 CloudFlare 的设置。
Q: 可以自定义质询页面吗?
A: 免费版不支持自定义质询页面样式,付费版可以。
总结
通过 CloudFlare 免费 WAF 的交互式质询功能,可以有效阻止恶意注册机器人,保护网站资源不被滥用。配置简单,即时生效,是小型网站防护的性价比之选。
关键要点:
- 针对注册相关 URL 设置规则
- 使用交互式质询验证人类用户
- 结合其他措施(速率限制、验证码)增强防护
- 定期监控和调整规则
参考链接
- 原文:使用 CloudFlare 免费 WAF 来减少程序/机器人恶意注册帐号
- 作者:Felix
- 发布日期:2025-02-22
- CloudFlare WAF 文档:https://developers.cloudflare.com/waf/
分享: