用途:Azure WAF 是符合 OWASP 的应用层防火墙,用于保护公网 Web 应用与 API 免受 SQLi、XSS、RCE、自动化扫描、撞库、爬取和机器人滥用等第 7 层攻击。本技能用于承载方式选择、策略编写、排除项调优与运营归属。不适用于第 3/4 层 DDoS(azure-ddos-protection)、东西向/非 HTTP 流量(azure-firewall)或非 HTTP 协议。
承载方式:Azure Front Door(Premium/Standard)为全球 anycast 边缘层,适合需要边缘存在与缓存的公网应用和 API;Azure Application Gateway(WAF v2)为区域级、与后端池集成,适合已终止于 App Gateway 的应用内部或 VNet 内工作负载。经验法则:新建公网项目选 Front Door Premium;已有 App Gateway 的存量项目选 App Gateway WAF。
主要能力与做法:始终先以检测(审计)模式运行,至少积累两周生产流量后再切换为阻止模式;应用 Microsoft 默认规则集(DRS),新部署优先于旧版 OWASP CRS,Front Door Premium 可启用 Bot Manager;先做认证感知规则,对匿名端点(登录、搜索、注册)限速,例如登录 100/分钟/IP;对不服务的国家做地理封锁,但放行 VPN 集中器或合作区域;对可疑机器人评分使用 JS/JSON 挑战。排除项需迭代调优:从 AzureDiagnostics/AGCWAFLogs 拉取检测模式命中,按规则 ID+URI+参数分组,确认合法流量后添加限定范围的排除项,绝不全局禁用整条规则,每周重新基线。逐条而非一次性提升为阻止模式,先上高置信低误报规则(RCE、命令注入),暂缓 XSS、协议违规等噪声规则。自定义规则可处理业务逻辑,如封禁特定 UA、放行合作方 CIDR、要求内部 API 特定请求头、管理路径地理封锁。日志发送至 Log Analytics 与 Sentinel,构建被阻止规则、误报候选、地理分布、限速命中、机器人分类趋势等视图。运营需指定应用团队负责人,每月审查规则集更新、重新基线排除项、验证阻止覆盖。高价值公网负载应同时配合 DDoS 防护。
限制与护栏:不要在第一天就部署为阻止模式;不要为单个误报全局禁用规则;地理封锁较粗放,优先限速+机器人管理+认证姿态;机器人评分非二元,按低→JS 挑战、中→CAPTCHA、高→阻止的分段处理;共享 NAT 后的按 IP 限速会误伤真实用户,需配合 Cookie/会话;WAF 不替代 API 认证授权;避免多个 WAF 串联;默认规则集更新可能引入新规则,需季度审查。常见反模式包括首日阻止、全局禁用规则、全局统一限速、到处地理封锁、阻止所有中等机器人评分、日志不入 Sentinel、所有应用共用同一策略、跳过规则集更新。
参考文档:https://learn.microsoft.com/azure/web-application-firewall/overview 等 Microsoft Learn 页面。