Windows Web 层的 WAF:边缘、CRS 与现实边界
在 CDN/边缘 WAF、IIS 请求过滤、ModSecurity/CRS 之间选择,先 log-only 上线,并处理误杀。
测试环境Standard / Datacenter · 版本号 26100.33650 · x64
E1- 版本号
- 26100.33650
- 版本
- Standard / Datacenter
- 架构
- x64
- 支持
- 文档(E1)
- 证据
- E1官方文档
- 核验日期
- 2026-10-29
- 页面类型
- 方法
WAF 是一层,不是注入问题的修复。Windows 上:
- 边缘/CDN WAF(Cloudflare/Akamai/Azure WAF)通常最省事,流量到 IIS 前就挡。
- IIS 请求过滤 + URL Rewrite 能做粗规则(方法、路径、大小、IP),不是完整 CRS。
- ModSecurity + OWASP CRS 在 Linux/Nginx 成熟;Windows/IIS 有构建,但不是开箱默认。没实际跑过就不要声称“IIS ModSecurity 已验证”。
WAF 能做什么
Section titled “WAF 能做什么”- 挡已知坏模式(SQLi/XSS/RCE 签名);
- 限速/防爆破;
- 地理/IP 黑白名单;
- 应用修复前的虚拟补丁。
不能:
- 修坏掉的授权;
- 挡看起来合法的业务逻辑攻击;
- 替代输入校验、参数化查询、打补丁。
- Log-only 一到两周,收集 top 触发规则。
- 用定向例外修误杀,不要关整套规则。
- staging 强制;测登录、上传、搜索、支付、API。
- 生产强制;保留紧急 bypass runbook。
- 定期看规则更新和日志。
IIS 粗控制
Section titled “IIS 粗控制”<system.webServer> <security> <requestFiltering> <requestLimits maxAllowedContentLength="52428800" maxUrl="4096" maxQueryString="2048" /> <verbs allowUnlisted="false"> <add verb="GET" allowed="true" /> <add verb="POST" allowed="true" /> </verbs> </requestFiltering> </security></system.webServer>这不是 WAF,只是减少攻击面。CORS 预检需要 OPTIONS 就不要挡。
- Nginx
limit_req放边缘。 - CDN/WAF 按 IP/session/path 限速。
- 登录/OTP/搜索在应用层限。
- 返回
429+Retry-After,不要静默丢。
- WAF 日志有被挡请求和 rule id。
- 正常请求仍成功。
- 源站不可直连(绕过检查)。
- bypass/管理路径受限且审计。
E1。实验室没有部署 WAF;本页讲选择和上线,避免把 Windows-only 部署说大。