跳转到主要内容

WAF

本文约需 2 分钟阅读

WAF (Web Application Firewall) 是一种专用防火墙,它检查发往 Web 应用程序的 HTTP/HTTPS 流量,并检测和拦截SQL 注入XSS 等攻击。普通防火墙在网络层 (IP 地址、端口号) 控制通信,而 WAF 则解析应用层 (HTTP 请求的内容)。截至 2025 年,针对 API 安全的专用 WAF 功能正在不断增强。

现场使用案例

“我们通过 WAF 检测到针对电商网站登录页面的撞库攻击。同一 IP 在 1 分钟内进行了 200 次以上的登录尝试,WAF 的基于速率的规则自动将其拦截。在不影响正规用户的情况下成功阻断了攻击。”

WAF 过滤概念图

来自互联网的 HTTP 请求
WAF (规则检查与评分)
正常
转发至 Web 服务器
检测到攻击
拦截 (403)

WAF 的检测方式

基于特征 (签名) 的方式通过将已知攻击模式 (例如包含 SQL 语句的请求参数) 定义为规则来进行检测。评分方式对多个可疑特征赋予分数,并拦截超过阈值的请求。基于机器学习的方式通过学习正常流量来自动检测异常请求。 AWS WAF 、 Cloudflare WAF 、 Akamai 等云 WAF 的优势在于能够将全球威胁情报实时反映到规则中。WAF 入门书 (Amazon)可以帮助你系统地学习。

部署场景与运维

在电商网站上,WAF 可防御针对登录页面的撞库攻击、针对搜索表单的 SQL 注入以及针对评论提交的 XSS。部署后立即以监控模式 (仅检测,不拦截) 运行,掌握误报模式后再切换到拦截模式更为安全。处理正规请求被误拦截的误报 (false positive) 是 WAF 运维的最大课题。通过将DNS 安全与 WAF 结合,可以实现多层次的 Web 防御。

WAF 的局限性

WAF 终究只是防御层之一,并不能替代修复应用程序本身的漏洞。由于存在绕过 WAF 的高级攻击手法,因此安全编码与 WAF 二者缺一不可。请用强随机密码保护 WAF 的管理控制台,并将规则的变更历史记录到审计日志中。Web 安全相关书籍 (Amazon)也很有参考价值。

相关术语

这篇文章对您有帮助吗?

XHatena