本节介绍了有关 WAF 的一些常见问题。

NSX Advanced Load Balancer 解决了哪些传统的 WAF 挑战?

以下是 WAF 提供的用于保护客户应用程序的解决方案。

  • 安全性:结合使用不同的验证方法以提供全面的安全层(特征码、主动规则、客户端信誉、机器学习、异常值分析等)。

  • 自动化:WAF 解决方案可以由任何当前自动化框架(Ansible、Terraform 等)驱动,并且可以集成到 SDLC(安全开发生命周期)中。

  • 可观察性:WAF 解决方案提供对流量、应用程序行为和客户端的深入详细信息。

  • 易用性和简单性:WAF 解决方案收集数据,从数据中学习并自动调整策略或帮助管理员快速调整策略。

  • 可扩展性:WAF 解决方案以类似的方式满足小型和大型应用程序要求。

  • 性能:WAF 解决方案尽可能使用资源,并提供测量以进行验证。

哪些功能是作为 WAF 的一部分提供的?

WAF 功能如下所示。

  • OWASP 十大攻击防护。

  • 输入验证 - XSS、SQLi 等

  • 通过应用程序学习的主动安全模型。

  • 针对应用程序逻辑缺陷的脚本 - 使用数据脚本。

  • JSON、XML 的 API 保护。

  • 简化的策略定义。

  • 实时详细信息。

  • 弹性和自动化。

NSX Advanced Load Balancer 提供的其他安全功能如下所示。

  • 应用程序速率限制。

  • DDoS 防护。

  • L3/L4 ACL。

  • L7 规则/策略等。

有关所有 WAF 功能的完整信息,请参阅 WAF 功能

NSX Advanced Load Balancer 是否将 WAF 作为服务提供?

截至今日,WAF(或 LB)不作为云服务提供,而是部署到客户环境中。不过,计划在以后将 WAF 作为服务提供。WAF(或 LB)在本地部署方面类似于物理 WAF,并具有更好的运行性、扩展、性能和可见性。NSX Advanced Load Balancer 还提供控制器即服务,其中将 WAF 作为提供的 LB 的一部分包含在内。

WAF 的大小调整建议是什么?

要在 NSX Advanced Load Balancer 平台上运行 WAF 和其他应用程序安全功能,建议具备 2 个 vCPU 和至少 4 GB RAM。如果虚拟服务保护需要更高性能,则可能需要更多服务内核。有关对应用程序要求的详细分析,请联系 VMware 专家,他们将很乐意为您提供帮助。

我们需要使用单独的 WAF 许可证吗?

由于 WAF 解决方案是大型 LB/ADC 产品的一部分,因此,不需要使用单独的 WAF 许可证。不过,请确保根据 WAF 要求来调整服务引擎大小。

什么是主动安全模型?

主动安全模型(也称为应用程序特定的策略)描述应用程序行为,并设置可接受的字符范围(和长度)以提供输入验证。如果输入验证规范不符合预期要求,则报告为违反策略。

示例:product_id=[0-9]{0..63}

有关主动安全的更多信息,请参阅主动安全和学习

特征码有什么作用?

特征码通过分析所有入站和出站流量来执行输入和输出验证。特征码包含对 OWASP 十大攻击向量的检测,除此之外,还具有许多其他用途。

什么是允许列表?

请参阅 WAF 允许列表

什么是应用程序学习?

在系统中,应用程序学习是一种方法,通过该方法,可收集应用程序正常使用情况的统计信息,以便生成主动安全模型。有关更多信息,请参阅 WAF 的应用程序学习

什么是 WAF 处理流程?

WAF 处理流程如下所示:

  1. 对于入站请求,检查允许列表策略。如果与任何条件匹配,则将请求添加到允许列表,即,为该请求禁用 WAF 处理。

  2. 如果与任何条件均不匹配,则主动安全引擎检查请求是否与学习的数据一致。

  3. 如果主动安全引擎将请求标记为非法,则会立即标记或阻止该请求。

  4. 如果主动安全将请求标记为合法,则会将请求发送到特征码引擎以根据特征码对其进行检查,从而识别任何攻击。

  5. 如果 WAF 找到攻击向量,则会阻止请求。

  6. 如果 WAF 策略处于“实施”模式,则会阻止请求。

  7. 如果 WAF 策略处于“检测”模式,则尽管将标记请求,但不会阻止请求。

有关 WAF 架构的详细视图,请参阅架构

使用 CLI 和 API 创建 WAF 策略时,系统将如何操作?

使用 CLI 和 API 创建 WAF 策略时,将弃用以下两个字段:

  • crs_groups

  • application_signatures.rules

上述组和规则现在可以直接从引用的 wafcrs 和相应的 wafapplicationsignatureprovider 对象中获取。

可以使用以下新字段代替弃用的字段。

  • crs_overrides.

  • application_signatures.rule_overrides.

这些字段用于执行配置更改,例如设置 mode 属性,或者为规则或组添加 exclude_list 设置。

请参阅下面的代码段以查看替代项。

{
    "name": "Example Policy 1",
    "waf_mode": "WAF_MODE_ENFORCEMENT",
    "waf_profile_ref": "/api/wafprofile?name=System-WAF-Profile",
    "waf_crs_ref": "/api/wafcrs?name=CRS-2020-3",
    "crs_overrides": [
        {
            "name": "CRS_903.9002_Wordpress_Exclusion_Rules",
            "enable": true
        },
        {
            "name": "CRS_920_Protocol_Validation",
            "rule_overrides": [
                {
                    "rule_id": "920310",
                    "enable": false                             
                },
                {
                    "rule_id": "920311",
                    "enable": false                             
                }
            ]
        },
        {
            "name": "CRS_930_Application_Attack_LFI",
            "rule_overrides": [
                {
                    "rule_id": "930120",                       
                    "exclude_list": [
                        {
                            "match_element": "ARGS:path",
                            "match_element_criteria": {
                                "match_case": "INSENSITIVE"
                            }
                        }
                    ]
                }
            ]
        } 
    ]
}

什么是误报?

误报是指某个合法请求被标记为攻击。

WAF 中有哪些可用的 Paranoia 模式?选择模式时需要考虑哪些注意事项?

可用的 Paranoia 模式包括:

  • 1 - 低(默认模式,建议使用该模式)。

  • 2 - 中。

  • 3 - 高。

  • 4 - 极高。

以下是设置 Paranoia 模式时必须考虑的两个方面。

  • 应用程序的风险级别。

  • 可用于策略调整的资源。

有关 Paranoia 模式的更多信息,请参阅 OWASP CRS Paranoia 模式

什么是漏报?

某个攻击未被检测到,即称为漏报。

什么是误报缓解例外?

例外在特征码规则或规则组前面添加 <IP, URL, parameter> 匹配条件。有关例外的更多信息,请参阅例外

什么是 CVE?

CVE 的全称为“Common Vulnerabilities and Exposures”(通用漏洞披露),是公开披露的计算机安全缺陷的列表。提及 CVE 时,它指的是为其分配了 CVE ID 号的安全缺陷。