针对 Azure Front Door WAF 的零信任建议

Front Door 上的Azure Web Application Firewall可保护网络边缘的 Web 应用程序免受常见攻击和漏洞的影响。 以下建议可帮助你验证 WAF 是否已正确配置和监视。

有关所有Azure网络安全Zero Trust建议的摘要,请参阅Azure网络安全Zero Trust建议

建议

Azure Front Door WAF 在预防模式下启用

Azure Front Door Web Application Firewall(WAF)保护 Web 应用程序免受 SQL 注入、跨站点脚本和其他开放全球应用程序安全Project(OWASP)网络边缘前 10 个威胁的常见攻击和漏洞的影响。 WAF 以两种模式运行:检测模式评估传入请求和日志匹配项,但不阻止流量,而防护模式评估请求并主动阻止违反 WAF 规则的恶意请求。 在预防模式下运行 WAF 对于主动保护应用程序免受常见 Web 攻击至关重要。 如果 WAF 处于检测模式,则只会记录恶意流量,并且不会阻止这些流量,从而使应用程序暴露在利用状态。

修正操作

Azure Front Door WAF 中启用了请求正文检查

Azure Front Door Web Application Firewall(WAF)为 Web 应用程序提供集中保护,防止常见的攻击和漏洞。 请求正文检查允许 WAF 分析 HTTP POST、PUT 和 PATCH 请求正文中的恶意模式,包括 SQL 注入、跨站点脚本和命令注入有效负载。 禁用请求正文检查后,威胁参与者可以在表单提交、API 调用或文件上传中嵌入恶意内容,绕过所有 WAF 规则评估。 这会创建一个直接途径,供攻击者通过未受保护的端点获得初始访问权限,对后端数据库执行任意命令、泄露敏感数据,并转移到内部系统进行攻击。 WAF 的托管规则集(包括开放全球应用程序安全Project(OWASP)核心规则集和Microsoft基于威胁情报的规则,无法评估它们看不到的威胁,从而使这些保护对基于身体的常见攻击途径无效。

修正操作

Azure Front Door WAF 中分配默认规则集

Azure Front Door Web Application Firewall(WAF)通过托管规则集为全局分布式 Web 应用程序提供基于边缘的保护,这些规则集包含已知攻击模式的预配置的检测签名。 Microsoft默认规则集是一个持续更新的托管规则集,可防范最常见的和危险的 Web 漏洞,而无需安全专业知识进行配置。 如果未启用管理规则集,WAF 策略不会提供对已知攻击模式的保护,从而有效地以透传方式运行。 威胁执行组件定期扫描未受保护的应用程序,并使用自动化工具包执行 SQL 注入、跨站点脚本、本地文件包含和命令注入攻击来利用记录的漏洞。 在恶意流量到达源服务器之前,托管规则集会在边缘检测和阻止这些攻击。

修正操作

机器人保护规则集在 Azure Front Door WAF 中启用和分配

Azure Front Door Web Application Firewall(WAF)通过 Bot Manager 规则集提供机器人保护,该规则集仅在高级 SKU 中提供,用于标识和分类全球边缘网络上的自动流量。 如果没有机器人保护,威胁参与者可以部署自动攻击,包括凭据填充、Web 擦除、库存囤积和应用程序层分布式拒绝服务(DDoS)攻击。 Bot Manager 规则集将机器人分类为已知的好机器人、已知坏机器人和未知机器人,允许安全团队为每个类别配置适当的操作。 使用 CAPTCHA 可以阻止或挑战坏机器人,而搜索引擎爬虫等合法机器人则被允许通过。 如果没有机器人保护,组织就缺乏机器人流量模式的可见性,并且无法区分人工用户和自动化客户端。

修正操作

在 Azure Front Door WAF 中启用速率限制

Azure Front Door Web Application Firewall(WAF)通过自定义规则支持速率限制,这些规则限制客户端可以在全局边缘网络中的指定时间范围内发出的请求数。 如果不限制速率,威胁参与者可以针对身份验证终结点执行暴力攻击、大规模凭据填充、提取数据或使用后端资源的 API 滥用,以及应用程序层拒绝服务攻击,这些攻击会淹没终结点。 速率限制规则允许管理员根据每分钟的请求计数定义阈值,并能够按客户端 IP 地址对请求进行分组。 当客户端超过配置的阈值时,WAF 可以阻止后续请求、日志冲突、发出 CAPTCHA 质询或重定向到自定义页面。 全局边缘的速率限制可确保在到达源服务器之前阻止恶意流量。

修正操作

Azure Front Door WAF 中启用了 JavaScript 挑战

Azure Front Door Web Application Firewall(WAF)支持 JavaScript 质询,作为针对全球边缘网络中自动化机器人和无外设浏览器的防御机制。 当请求触发质询时,WAF 会提供客户端浏览器必须执行的 JavaScript 代码片段来获取有效的质询 Cookie,证明请求源自真实浏览器,而不是简单的 HTTP 客户端或机器人。 成功成功执行质询的客户端将在 Cookie 过期之前继续正常运行,而无法执行 JavaScript 的机器人和自动化工具会在流量到达源服务器之前在边缘被阻止。 此机制对于使用简单 HTTP 库的凭据填充机器人、网络爬虫和分布式拒绝服务(DDoS)机器人有效。 通过JavaScript挑战在无需用户交互(例如CAPTCHA)的情况下验证浏览器的能力,从而在允许所有流量和阻止可疑机器人之间形成一个中间立场。

修正操作

在 Azure Front Door WAF 中启用了 CAPTCHA 验证

Azure Front Door Web Application Firewall(WAF)支持 CAPTCHA 挑战,作为针对全球边缘网络中复杂的机器人和自动化工具的防御机制。 CAPTCHA 向用户呈现一个视觉或音频谜题,需要人类认知能力来解决,证明请求源自真实人类而不是机器人。 完成 CAPTCHA 验证的用户将获得一个挑战 Cookie,可以正常访问直至过期,而无法破解难题的机器人会在接入点被拦截。 CAPTCHA 比 JavaScript 更有效对抗使用完全支持 JavaScript 的无头浏览器的高级机器人,因为它需要人类级别的认知。 通过配置 CAPTCHA 质询操作的自定义规则,组织可以保护高度敏感的终结点,例如登录页、注册表单和付款页,避免自动滥用。

修正操作

Azure Front Door WAF 中启用了诊断日志记录

Azure Front Door Web Application Firewall(WAF)保护 Web 应用程序免受常见攻击,包括 SQL 注入、跨站点脚本和开放网络应用程序安全项目(OWASP)网络边缘十大威胁,在恶意流量到达源服务器之前进行防护。 如果未启用诊断日志记录,安全团队将无法查看边缘的受阻攻击、规则匹配、访问模式和 WAF 事件。 如果不记录,试图利用漏洞的威胁参与者不会发现,事件响应者无法构造攻击时间线。 Azure Front Door WAF 提供访问日志和 WAF 日志,这些日志必须路由到Log Analytics、存储帐户或事件中心进行安全监视和取证分析。

修正操作