信息安全技术  WEB应用防火墙安全技术要求与测试评价方法

  1. 范围

本标准规定了WEB应用防火墙的安全功能要求、自身安全保护要求、性能要求和安全保证要求,并提供了相应的测试评价方法。

本标准适用于WEB应用防火墙的设计、生产、检测及采购。

  1. 规范性引用文件

下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。

GB/T 25069-2010 信息安全技术 术语

  1. 术语、定义和缩略语

    1. 术语和定义

GB/T 25069-2010界定的以及下列术语和定义适用于本文件。

WEB应用防火墙 WEB Application Firewall

是根据预先定义的过滤规则和安全防护规则,对所有WEB服务器的访问请求和WEB服务器的响应进行协议和内容过滤,对WEB服务器及WEB应用实现安全防护功能的信息安全产品。

WEB服务器 WEB Server

Web服务器是向发出请求的客户端(如浏览器)提供服务的程序。当Web浏览器(客户端)连到服务器上并请求资源时,服务器将处理该请求并将资源发送到该浏览器上。Web服务器使用HTTP与Web浏览器进行信息交流。常用的Web服务器有Apache和Internet信息服务器。

WEB应用WEB Application

基于WEB服务器软件,为用户提供具体业务应用的程序或文件。

  1. 缩略语

下列缩略语适用于本文件:

CSRF     跨站请求伪造        (Cross-site request forgery)

HTTP     超文本传输协议     (Hypertext Transfer Protocol)

HTTPS    安全超文本传输协议  (Hypertext Transfer Protocol over Secure Socket Layer)

SSL      安全套接层协议     (Secure Socket Layer)

SQL      结构化查询语言      (Structured Query Language)

URL      统一资源定位器     (Uniform Resource Locator)

WEB      万维网             (World Wide Web)

XSS      跨站脚本           (Cross Site Scripting)

  1. 安全技术要求

    1. 基本级

      1. 安全功能要求

        1. HTTP过滤功能

          1. 允许/禁止HTTP请求类型

应能根据HTTP的请求类型(至少包括:GET、POST、PUT、HEAD等)设置过滤规则,并根据过滤规则允许或者禁止访问。

  1. HTTP协议头各个字段的长度限制

应能对HTTP协议头(至少包括:general-header、request-header、response-header)的各部分长度设置过滤规则,并根据过滤规则允许或者禁止访问,以防止缓冲区溢出攻击。

  1. 后缀名过滤

应能对所请求的WEB资源文件后缀名设置过滤规则,并根据过滤规则允许或者禁止访问。

  1. 支持多种HTTP请求参数编码方式

应能支持对UNICODE、BASE64、二进制、十六进制等不同编码方式的HTTP请求参数进行识别和转换。

  1. 识别和限制HTTP响应码

应能对HTTP服务器返回的响应码设置过滤规则,并根据过滤规则允许或者禁止访问。

  1. URL内容关键字过滤

应能对所请求的URL中的内容设置关键字过滤规则,并根据过滤规则允许或者禁止访问。

  1. WEB服务器返回内容过滤

应能对WEB服务器返回的内容设置关键字过滤规则,并根据过滤规则允许或者禁止访问。

  1. 安全防护功能

    1. WEB应用防护功能

应具备以下WEB应用防护功能:

  1. 对利用WEB服务器漏洞进行攻击的行为,能识别攻击行为并拒绝访问;
  1. 对利用主流脚本语言(如:PHP、JSP、ASP、JavaScript等)的漏洞进行攻击的行为,能识别攻击行为并拒绝访问。

    1. WEB攻击防护功能

应具备以下WEB攻击防护功能:

  1. SQL注入攻击防护;
  2. XSS攻击防护;
  3. 盗链防护;
  4. WEB应用扫描防护;
  5. 爬虫防护;
  6. CSRF防护;
  7. 命令注入防护攻击;
  8. 非法上传防护;
  9. 非法下载防护;
  10. HTTP Flood防护。
    1. 其他功能

      1. 自定义错误页面功能

应能对WEB服务器返回的错误页面进行自定义。

  1. 规则库管理

应具备以下规则库管理功能:

  1. 应能根据用户的WEB应用环境,提供相匹配的安全防护规则库,并能进行自动或手动升级;
  2. 应能添加、删除、修改自定义过滤规则。
    1. 报警功能

应能对违规事件进行告警,并满足以下要求:

  1. 至少支持屏幕报警、邮件告警、SNMP trap告警、短信告警等方式中的一种;
  2. 记录告警事件,内容包括:事件发生的日期和时间、匹配规则、告警事件描述等。
    1. 自身安全保护

      1. 标识与鉴别

        1. 唯一性标识

应为授权管理员提供唯一的身份标识,同时将授权管理员的身份标识与该授权管理员的所有可审计事件相关联。

  1. 身份鉴别

应在执行任何与安全功能相关的操作之前,鉴别任何声称要履行授权管理员职责的管理员身份。

  1. 鉴别数据保护

应保证鉴别数据不被未授权查阅和修改。

  1. 鉴别失败处理

当管理员鉴别尝试不成功达到指定次数后,应终止当前会话。

  1. 安全审计

    1. 审计数据生成

应生成以下审计日志:

  1. 对于所有成功和失败的WEB访问事件,都应生成审计记录。审计日志内容应包括:每个事件发生的日期、时间、IP地址、所请求的URL、成功或失败标识、匹配规则;
  2. 管理员成功和失败鉴别日志;审计日志内容应包括:每个事件发生的日期、时间、IP地址、用户名、成功或失败标识。
    1. 审计日志管理功能

应提供对审计数据的备份、查询等管理功能。

  1. 可理解的格式

所有审计记录能被理解。

  1. 防止审计数据丢失

日志信息应存储在永久性存储介质中,当存储空间被耗尽时,应采取相应措施,保证审计数据不丢失。

  1. 统计功能

应能对WEB资源的访问总次数以及单个IP访问的总次数按照不同的时间段(如:天、小时等)进行统计。

  1. 远程管理加密

当需要通过远程进行管理时,应能对远程管理通信进行加密保护。

  1. 状态监测

在启动和正常工作时,应周期性地、或者按照授权管理员的要求执行自检,包括硬件工作状态监测、软件模块状态监测等;当检测到工作状态异常时,应向管理员进行报警。

  1. 双机热备

应具备双机热备功能,当主WEB应用防火墙出现故障时,备WEB应用防火墙应及时发现并接管主WEB应用防火墙进行工作。

  1. 安全保证要求

    1. 配置管理

      1. 版本号

开发者应为产品的不同版本提供唯一的标识。

  1. 配置项

开发者应使用配置管理系统并提供配置管理文档。

配置管理文档包括一个唯一标识组成产品的所有配置项的配置清单,描述配置项及其唯一标识的方法,并提供所有的配置项得到有效维护的证据。

  1. 交付与运行

    1. 交付程序

开发者应使用一定的交付程序交付产品,并将交付过程文档化。

交付文档描述在给用户方交付产品的各版本时,为维护安全所必需的所有程序。

  1. 安装、生成和启动程序

开发者应提供文档说明产品的安装、生成和启动的过程。

  1. 开发

    1. 非形式化功能规格说明

开发者应提供一个满足以下要求的功能规格说明:

  1. 使用非形式化风格来描述产品安全功能及其外部接口;
  2. 是内在一致的;
  3. 描述所有外部接口的用途与使用方法,适当时提供效果、例外情况和错误消息的细节;
  4. 完备地表示产品安全功能。
    1. 描述性高层设计

开发者应提供满足以下要求的产品安全功能高层设计:

  1. 表示是非形式化的;
  2. 是内在一致的;
  3. 按子系统描述安全功能的结构;
  4. 描述每个安全功能子系统所提供的安全功能性;
  5. 标识安全功能所要求的任何基础性的硬件、固件或软件,以及在这些硬件、固件或软件中实现的支持性保护机制所提供功能的一个表示;
  6. 标识安全功能子系统的所有接口;
  7. 标识安全功能子系统的哪些接口是外部可见的。
    1. 非形式化对应性证实

开发者应提供产品安全功能表示的所有相邻对之间的对应性分析。

对于产品安全功能所表示的每个相邻对,分析阐明较为抽象的安全功能表示的所有相关安全功能,应在较具体的安全功能表示中得到正确且完备地细化。

  1. 指导性文档

    1. 管理员指南

开发者应提供说明以下内容的管理员指南,并与为评估而提供的其他所有文档保持一致:

  1. 管理员可使用的管理功能和接口
  1. 怎样安全地管理产品;
  2. 在安全处理环境中应被控制的功能和权限;
  3. 所有对与产品的安全操作有关的用户行为的假设;
  4. 所有受管理员控制的安全参数,如果可能,应指明安全值;
  5. 每一种与管理功能有关的安全相关事件,包括对安全功能所控制实体的安全特性进行的改变;
  6. 所有与管理员有关的IT环境安全要求。
    1. 用户指南

开发者应提供说明以下内容的用户指南,并与为评估而提供的其他所有文档保持一致:

  1. 产品的非管理员用户可使用的安全功能和接口;
  2. 产品提供给用户的安全功能和接口的使用方法;
  3. 用户可获取但应受安全处理环境所控制的所有功能和权限;
  4. 产品安全操作中用户所应承担的职责;
  5. 与用户有关的IT环境的所有安全要求。
    1. 测试

      1. 覆盖证据

开发者应提供测试覆盖的证据,表明测试文档中所标识的测试与功能规格说明中所描述的产品的安全功能是对应的。

  1. 功能测试

开发者应测试安全功能,将结果文档化并提供包括以下内容的测试文档:

  1. 测试计划,标识要测试的安全功能,并描述测试的目标;
  2. 测试过程,标识要执行的测试,并描述每个安全功能的测试概况,这些概况应包括对于其他测试结果的顺序依赖性;
  3. 预期的测试结果,表明测试成功后的预期输出;
  4. 实际测试结果,表明每个被测试的安全功能能按照规定进行运作。
    1. 独立测试

      1. 一致性

开发者应提供适合测试的产品,提供的测试集合与其自测产品功能时使用的测试集合相一致。

  1. 抽样

开发者应提供一组相当的资源,用于安全功能的抽样测试。

  1. 脆弱性评定

    1. 产品安全功能强度评估

开发者应对指导性文档中所标识的每个具有安全功能强度声明的安全机制进行安全功能强度分析,并说明安全机制达到或超过定义的最低强度级别或特定功能强度度量。

  1. 开发者脆弱性分析

开发者应执行脆弱性分析,并提供脆弱性分析文档,从用户可能破坏安全策略的明显途径出发,对产品的各种功能进行分析并提供文档,并对被确定的脆弱性明确记录采取的措施。

对每一条脆弱性,提供证据显示在使用产品的环境中,该脆弱性不能被利用。

  1. 增强级

    1. 安全功能要求

      1. HTTP过滤功能

        1. 允许/禁止HTTP请求类型

应能根据HTTP的请求类型(至少包括:GET、POST、PUT、HEAD、OPTIONS等)设置过滤规则,并根据过滤规则允许或者禁止访问。

  1. HTTP协议头各个字段的长度限制

应能对HTTP协议头(至少包括:general-header、request-header、response-header)的各部分长度设置过滤规则,并根据过滤规则允许或者禁止访问,以防止缓冲区溢出攻击。

  1. 后缀名过滤

应能对所请求的WEB资源文件后缀名设置过滤规则,并根据过滤规则允许或者禁止访问。

  1. 支持多种编码格式

应能支持UNICODE、BASE64、二进制、十六进制等编码方式,对不同编码格式的HTTP内容能进行识别和转换。

  1. 识别和限制HTTP响应码

应能对HTTP服务器返回的响应码设置过滤规则,并根据过滤规则允许或者禁止访问。

  1. URL内容关键字过滤

应能对所请求的URL中的内容设置关键字过滤规则,并根据过滤规则允许或者禁止访问。

  1. WEB服务器返回内容过滤

应能对WEB服务器返回的内容设置关键字过滤规则,并根据过滤规则允许或者禁止访问。

  1. 安全防护功能

    1. WEB应用防护功能

应具备以下WEB应用防护功能:

  1. 对利用WEB服务器漏洞进行攻击的行为,能识别攻击行为并拒绝访问;
  2. 对利用主流脚本语言(如:PHP、JSP、ASP、JavaScript等)的漏洞进行攻击的行为,能识别攻击行为并拒绝访问。
    1. WEB攻击防护功能

应具备以下WEB攻击防护功能:

  1. SQL注入攻击防护;
  2. XSS攻击防护;
  3. 盗链防护;
  4. WEB应用扫描防护;
  5. 爬虫防护;
  6. CSRF防护;
  7. 命令注入防护攻击;
  8. 非法上传防护;
  9. 非法下载防护;
  10. HTTP Flood防护;
  11. Cookie注入攻击防护;
  12. Webshell识别和拦截;
  13. 其他WEB攻击的防护。
    1. 其他功能

      1. 自定义错误页面功能

应能对WEB服务器返回的错误页面进行自定义。

  1. 白名单功能

应支持白名单功能,只允许特定对象访问指定的WEB资源。

  1. 支持HTTPS

应能对基于HTTPS的WEB服务器访问请求进行解码,并对解码后的内容提供以下功能:4.2.1.1 HTTP过滤功能、4.2.1.2安全防护功能、4.2.1.3.1自定义错误页面功能和4.2.1.3.2白名单功能。

  1. 规则库管理

应具备以下规则库管理功能:

  1. 根据用户的WEB应用环境,提供相匹配的安全防护规则库,并能进行自动或手动升级;
  2. 添加、删除、修改自定义过滤规则。
    1. 报警功能

应能对违规事件进行告警,并满足以下要求:

  1. 至少支持屏幕报警、邮件告警、SNMP trap告警、短信告警等方式中的一种;
  2. 对高频发生的相同告警事件进行合并告警,避免出现告警风暴;
  3. 记录告警事件,内容包括:事件发生的日期和时间、匹配规则、告警事件描述等。
    1. 自身安全保护

      1. 标识与鉴别

        1. 唯一性标识

系统应为授权管理员提供唯一的身份标识,同时将授权管理员的身份标识与该授权管理员的所有可审计事件相关联。

  1. 身份鉴别

应在执行任何与安全功能相关的操作之前,鉴别任何声称要履行授权管理员职责的管理员身份。

  1. 鉴别数据保护

应保证鉴别数据不被未授权查阅和修改。

  1. 鉴别失败处理

当管理员鉴别尝试不成功达到指定次数后,应能:

  1. 终止会话;
  2. 锁定用户帐户或远程登录主机的地址。
    1. 安全管理角色

应能对管理员角色进行划分:

  1. 具有至少两种不同权限的管理员角色(如:管理员、审计员等);
  2. 根据不同的功能模块,定义各种不同权限角色。
    1. 安全审计

      1. 审计数据生成

应生成以下审计日志和审计内容:

  1. 对于所有成功和失败的WEB访问事件,都应生成审计记录。审计日志中应包括:每个事件发生的日期、时间、IP地址、所请求的URL、成功或失败标识、匹配规则;
  2. 管理员成功和失败鉴别日志,审计日志中应包括:每个事件发生的日期、时间、IP地址、用户名、成功或失败标识;
  3. 管理员操作日志,包括:过滤规则和防护策略的增加、删除和修改;管理员的增加、删除和修改。
    1. 审计日志管理功能

应提供对审计数据的备份、查询等管理功能。

  1. 可理解的格式

所有审计记录能被理解。

  1. 防止审计数据丢失

日志信息应存储在永久性存储介质中,当存储空间被耗尽时,采取相应措施,保证审计数据不丢失。

  1. 统计功能

应具有以下统计功能:

  1. 对WEB资源的访问总次数以及单个IP访问的总次数按照不同的时间段(如:天、小时等)进行统计;
  2. 能生成统计分析报表,并以图形化方式展现,能以常见格式导出。
    1. 远程管理加密

当需要通过远程进行管理时,应能对远程管理通信进行加密保护。

  1. 状态监测

在启动和正常工作时,应周期性地、或者按照授权管理员的要求执行自检,包括硬件工作状态监测、软件模块状态监测等,以产品工作状态正常。当检测到工作状态异常时,向管理员进行报警。

  1. 双机热备

应具备双机热备功能,当主WEB应用防火墙出现故障时,备WEB应用防火墙应及时发现并接管主WEB应用防火墙进行工作。

  1. 负载均衡

应支持负载均衡功能,能够将WEB访问请求均衡到多台WEB服务器上。

  1. 安全保证要求

    1. 配置管理

      1. 部分配置管理自动化

配置管理系统应提供一种自动方式来支持产品的生成,通过该方式确保只能对产品的实现表示进行已授权的改变

配置管理计划应描述在配置管理系统中所使用的自动工具,并描述在配置管理系统中如何使用自动工具

  1. 配置管理能力

    1. 版本号

开发者应为产品的不同版本提供唯一的标识。

  1. 配置项

开发者应使用配置管理系统并提供配置管理文档。

配置管理文档包括一个唯一标识组成产品的所有配置项的配置清单,描述配置项及其进行唯一标识的方法,并提供所有的配置项得到有效维护的证据。

  1. 授权控制

开发者提供的配置管理文档应包括一个配置管理计划,描述如何使用配置管理系统。实施的配置管理与配置管理计划相一致。

开发者提供所有的配置项得到有效地维护的证据,并保证只有经过授权才能修改配置项。

  1. 产生支持和接受程序

开发者提供的配置管理文档应包括一个接受计划,描述用来接受修改过的或新建的作为产品组成部分的配置项的程序。

配置管理系统应支持产品的生成。

  1. 配置管理范围

    1. 配置管理覆盖

配置管理范围至少应包括产品实现表示、设计文档、测试文档、指导性文档、配置管理文档,从而确保它们的修改是在一个正确授权的可控方式下进行的。

配置管理文档至少能跟踪上述内容,并描述配置管理系统是如何跟踪这些配置项的。

  1. 问题跟踪配置管理覆盖

配置管理范围应包括安全缺陷,确保安全缺陷置于配置管理系统之下。

  1. 交付与运行

    1. 交付程序

开发者应使用一定的交付程序交付产品,并将交付过程文档化,并描述在给用户方交付产品的各版本时,为维护安全所必需的所有程序。

  1. 修改检测

交付文档应描述如何提供多种程序和技术上的措施来检测修改,或检测开发者的主拷贝和用户方所收到版本之间的任何差异。并描述如何使用多种程序来发现试图伪装成开发者,甚至是在开发者没有向用户方发送任何东西的情况下,向用户方交付产品。

  1. 安装、生成和启动程序

开发者应提供文档说明产品的安装、生成和启动的过程。

  1. 开发

    1. 功能规格说明

      1. 非形式化功能规格说明

开发者应提供一个满足以下要求的功能规格说明:

  1. 使用非形式化风格来描述产品安全功能及其外部接口;
  2. 是内在一致的;
  3. 描述所有外部接口的用途与使用方法,适当时提供效果、例外情况和错误消息的细节;
  4. 完备地表示产品安全功能。
    1. 充分定义的外部接口

功能规格说明应包括安全功能是完备地表示的合理性。

  1. 高层设计

    1. 描述性高层设计

开发者应提供满足以下要求的产品安全功能高层设计:

  1. 表示是非形式化的;
  2. 是内在一致的;
  3. 按子系统描述安全功能的结构;
  4. 描述每个安全功能子系统所提供的安全功能性;
  5. 标识安全功能所要求的任何基础性的硬件、固件或软件,以及在这些硬件、固件或软件中实现的支持性保护机制所提供功能的一个表示;
  6. 标识安全功能子系统的所有接口;
  7. 标识安全功能子系统的哪些接口是外部可见的。
    1. 安全加强的高层设计

开发者提供的安全加强的高层设计应满足以下要求:

  1. 描述产品的功能子系统所有接口的用途与使用方法适当时提供效果、例外情况和错误消息的细节;
  2. 产品分成安全策略实施和其他子系统来描述。
    1. 安全功能实现的子集

开发者应为选定的安全功能子集提供实现表示,无歧义而且详细地定义安全功能,使得无须进一步设计就能生成安全功能。实现表示是内在一致的。

  1. 描述性低层设计

开发者应提供满足以下要求的产品安全功能低层设计:

  1. 表示是非形式化的;
  2. 是内在一致的;
  3. 按模块描述安全功能;
  4. 描述每个模块的用途;
  5. 根据所提供的安全功能性和对其他模块的依赖关系两方面来定义模块间的相互关系;
  6. 描述每个安全策略实施功能是如何被提供的;
  7. 标识安全功能模块的所有接口;
  8. 标识安全功能模块的哪些接口是外部可见的;
  9. 描述安全功能模块所有接口的用途和用法适当时提供效果、例外情况和错误消息的细节;
  10. 把产品分为安全策略实施模块和其他模块来描述。
    1. 非形式化对应性证实

开发者应提供产品安全功能表示的所有相邻对之间的对应性分析。

对于产品安全功能所表示的每个相邻对,分析阐明较为抽象的安全功能表示的所有相关安全功能,并在较具体的安全功能表示中得到正确且完备地细化。

  1. 非形式化产品安全策略模型

开发者应提供满足以下要求的安全策略模型:

  1. 表示是非形式化的;
  2. 描述所有能被模型化的安全策略的规则与特征;
  3. 包含合理性,即论证该模型相对所有能被模型化的安全策略来说是一致的,而且是完备的;
  4. 阐明安全策略模型和功能规格说明之间的对应性,即论证所有功能规格说明中的安全功能对于安全策略模型来说是一致的,而且是完备的。
    1. 指导性文档

      1. 管理员指南

开发者应提供说明以下内容的管理员指南,与为评估而提供的其他所有文档保持一致:

  1. 管理员可使用的管理功能和接口;
  2. 怎样安全地管理产品;
  3. 在安全处理环境中应被控制的功能和权限;
  4. 所有对与产品的安全操作有关的用户行为的假设;
  5. 所有受管理员控制的安全参数,如果可能,指明安全值;
  6. 每一种与管理功能有关的安全相关事件,包括对安全功能所控制实体的安全特性进行的改变;
  7. 所有与管理员有关的IT环境安全要求。
    1. 用户指南

开发者应提供说明以下内容的用户指南,并与为评估而提供的其他所有文档保持一致:

  1. 产品的非管理员用户可使用的安全功能和接口;
  2. 产品提供给用户的安全功能和接口的使用方法;
  3. 用户可获取但应受安全处理环境所控制的所有功能和权限;
  4. 产品安全操作中用户所应承担的职责;
  5. 与用户有关的IT环境的所有安全要求。
    1. 生命周期支持

      1. 安全措施标识

开发者应提供开发安全文档,描述在产品的开发环境中,为保护产品设计和实现的保密性和完整性所必需的所有物理的、程序的、人员的和其他方面的安全措施,并提供在产品的开发和维护过程中执行安全措施的证据。

  1. 开发者定义的生命周期模型

开发者应建立一个生命周期模型对产品的开发和维护进行的必要控制,并提供生命周期定义文档描述用于开发和维护产品的模型。

  1. 明确定义的开发工具

开发者应明确定义用于开发产品的工具,并提供开发工具文档无歧义地定义实现中每个语句的含义和所有依赖于实现的选项的含义。

  1. 测试

    1. 测试覆盖

      1. 覆盖证据

开发者应提供测试覆盖的证据,表明测试文档中所标识的测试与功能规格说明中所描述的产品的安全功能是对应的。

  1. 覆盖分析

开发者应提供测试覆盖的分析结果,表明测试文档中所标识的测试与功能规格说明中所描述的产品的安全功能之间的对应性是完备的。

  1. 测试:高层设计

开发者应提供测试深度的分析,证实测试文档中所标识的测试足以证实该产品的功能是依照其高层设计运行的。

  1. 功能测试

开发者应测试安全功能,将结果文档化并提供包括以下内容的测试文档:

  1. 测试计划,标识要测试的安全功能,并描述测试的目标;
  2. 测试过程,标识要执行的测试,并描述每个安全功能的测试概况,这些概况应包括对于其他测试结果的顺序依赖性;
  3. 预期的测试结果,表明测试成功后的预期输出;
  4. 实际测试结果,表明每个被测试的安全功能能按照规定进行运作。
    1. 独立测试

      1. 一致性

开发者应提供适合测试的产品,且提供的测试集合与其自测产品功能时使用的测试集合相一致。

  1. 抽样

开发者应提供一组相当的资源,用于安全功能的抽样测试。

  1. 脆弱性评定

    1. 误用

      1. 指南审查

开发者应提供满足以下要求的指导性文档:

  1. 标识所有可能的产品运行模式(包括失败或操作失误后的运行)、它们的后果以及对于保持安全运行的意义;
  2. 是完备的、清晰的、一致的、合理的;
  3. 列出关于预期使用环境的所有假设;
  4. 列出对外部安全措施(包括外部程序的、物理的或人员的控制)的所有要求。
    1. 分析确认

开发者应提供分析文档论证指导性文档是完备的。

  1. 产品安全功能强度评估

开发者应对指导性文档中所标识的每个具有安全功能强度声明的安全机制进行安全功能强度分析,并说明安全机制达到或超过定义的最低强度级别或特定功能强度度量。

  1. 脆弱性分析

    1. 开发者脆弱性分析

开发者应执行脆弱性分析,并提供脆弱性分析文档,从用户可能破坏安全策略的明显途径出发,对产品的各种功能进行分析,并对被确定的脆弱性明确记录采取的措施。

对每一条脆弱性,提供证据显示在使用产品的环境中,该脆弱性不能被利用。

  1. 独立的脆弱性分析

开发者应提供文档证明经过标识脆弱性的产品可以抵御明显的穿透性攻击。

  1. 中级抵抗力

开发者应提供文档证明产品可以抵御具有中等攻击潜力的攻击者的攻击,并提供证据说明对脆弱性的搜索是系统化的。

注: 中级抵抗力需要综合考虑根据以下5个具体因素:攻击时间、攻击者能力、对产品的了解程度、访问产品时间或攻击样品数量、使用的攻击设备,详见参考文献8中的附录B。

  1. 性能要求

    1. HTTP吞吐量

WEB应用防火墙的HTTP吞吐量应不小于线速的90%。

  1. HTTP最大请求速率

WEB应用防火墙每秒能够处理的HTTP请求数,视不同速率的WEB防火墙有所不同,具体指标如下:

百兆WEB应用防火墙的HTTP最大请求速率应不小于800个/s;

千兆WEB应用防火墙的HTTP最大请求速率应不小于3,000个/s;

千兆以上WEB应用防火墙的HTTP最大请求速率应不小于5,000个/s。

  1. HTTP最大并发连接数

WEB应用防火墙的最大并发连接数,视不同速率的WEB防火墙有所不同,具体指标如下:

百兆WEB应用防火墙的HTTP最大并发连接数应不小于50,000个;

千兆WEB应用防火墙的HTTP最大并发连接数应不小于200,000个;

千兆以上WEB应用防火墙的HTTP最大并发连接数应不小于500,000个。

  1. 测试评价方法

    1. 测试环境

图1为WEB应用防火墙的功能测试环境示意图:

图1 WEB应用防火墙功能测试环境示意图

在功能测试环境示意图中,包含:2台被测的WEB应用防火墙分别设置为主、被工作模式;2台WEB服务器用作负载均衡;1台数据库服务器;1台管理主机;2台HTTP客户端;1台攻击机能够对WEB应用防火墙发起各类攻击;1台网络协议分析仪能够对WEB应用防火墙的网络数据进行分析。基本级只需要测试HTTP协议,增强级还需要测试HTTPS协议。

WEB应用防火墙的性能测试环境如图2所示:

图2 WEB应用防火墙性能测试环境示意图

在性能测试环境示意图中,包含:1台被测的WEB应用防火墙;1台WEB应用层性能测试仪;2台管理主机。WEB应用层性能测试仪能够同时模拟HTTP客户端和WEB服务器,模拟客户端发送大量的HTTP请求通过WEB应用防火墙给模拟WEB服务器,然后模拟WEB服务器返回HTTP内容给模拟客户端,并计算各项性能测试结果。

  1. 基本级

    1. 安全功能要求测试评价方法

      1. HTTP过滤功能

        1. 允许/禁止HTTP请求类型

允许/禁止HTTP请求类型的测试评价方法与结果如下:

  1. 测试评价方法:

通过管理主机配置基于不同类型HTTP请求(至少包括: GET、POST 、PUT、HEAD)的过滤规则,并从测试终端上发起相应HTTP请求,检测其是否能够依据过滤规则允许或阻断该访问请求。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. HTTP协议头各个字段的长度限制

HTTP协议头各个字段的长度限制的测试评价方法与结果如下:

  1. 测试评价方法:

通过管理主机配置基于HTTP协议头中不同字段(至少包括:general-header、request-header、response-header)长度的过滤规则,并从测试终端上发起超出所设字段长度的HTTP请求,检测其是否能够依据过滤规则阻断该访问请求。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 后缀名过滤

后缀名过滤的测试评价方法与结果如下:

  1. 测试评价方法:

通过管理主机配置基于WEB资源文件后缀名(如zip、rar、doc、exe、asp、html等)的过滤规则,并从测试终端上发起相应HTTP请求,尝试访问或下载上述各后缀名的WEB资源文件,检测其是否能够依据过滤规则阻断该访问请求。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 支持多种编码格式

支持多种编码格式的测试评价方法与结果如下:

  1. 测试评价方法:

通过测试终端发起不同编码格式(UNICODE、BASE64、二进制、十六进制等)的HTTP请求,检测其是否能够自动将客户端请求转换成ASCII明文。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 识别和限制HTTP响应码

识别和限制HTTP响应码的测试评价方法与结果如下:

  1. 测试评价方法:

通过管理主机配置基于HTTP响应码的过滤规则,并从测试终端上发起HTTP请求,检测其是否能够识别HTTP服务器返回的响应码,并依据过滤规则允许或阻断该响应页面。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. URL内容关键字过滤

URL内容关键字过滤的测试评价方法与结果如下:

  1. 测试评价方法:

通过管理主机配置基于URL内容关键字的过滤规则,并从测试终端上发起包含该关键字的HTTP请求,检测其是否能够依据过滤规则阻断该HTTP请求。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. WEB服务器返回内容过滤

WEB服务器返回内容过滤的测试评价方法与结果如下:

  1. 测试评价方法:

通过管理主机配置基于WEB服务器返回内容关键字的过滤规则,并从测试终端上发起相应HTTP请求,检测其是否能够依据过滤规则阻断包含该关键字的WEB服务器返回页面。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 安全防护功能

    1. WEB应用防护功能

WEB应用防护功能的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 通过管理主机开启WEB应用防火墙的WEB应用防护功能,并配置相应的应用防护规则;
  2. 从测试终端上发起针对主流WEB服务器软件(如:Apache、IIS等)流行漏洞的攻击利用,检测其是否能够进行防护;
  3. 从测试终端上发起针对主流WEB应用开发脚本(如:PHP、ASP、JavaScript等)流行漏洞的攻击利用,检测其是否能够进行防护。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. WEB攻击防护功能

WEB攻击防护功能的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 通过管理主机开启WEB应用防火墙的WEB攻击防护功能,并配置相应的攻击防护规则;
  2. 从测试终端上用POST和GET方式进行SQL注入攻击,检测其是否能够进行防护;
  3. 从测试终端上用构建的各种XSS跨站脚本攻击WEB服务器,检测其是否能够进行防护;
  4. 从测试终端上访问构建的资源盗链,检测其是否能够进行防护,使被盗链WEB页面显示不正常,盗用服务器的图片和其他资源不能正常显示;
  5. 从测试终端上用扫描工具对WEB服务器进行WEB应用扫描,检测其是否能够进行防护,使扫描工具不能扫描到任何结果;
  6. 从测试终端上用爬虫工具对WEB服务器进行攻击,检测其是否能够进行防护,使爬虫工具不能获取到服务器的信息;
  7. 从测试终端上对WEB服务器进行CSRF攻击,检测其是否能够进行防护;
  8. 从测试终端上用POST和GET方式进行命令注入攻击,检测其是否能够进行防护;
  9. 从测试终端上用POST方式进行非法上传文件,检测其是否能够进行防护;
  10. 从测试终端上用GET方式进行非法下载文件,检测其是否能够进行防护;
  11. 从测试终端上用攻击工具发起HTTP Flood攻击,检测其是否能够进行防护;
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 其他功能

    1. 自定义错误页面功能

自定义错误页面功能的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 通过管理主机设置WEB服务器返回的错误页面,并在过滤规则中的响应措施中启用该自定义错误页面;
  2. 从测试终端上发起相应的HTTP请求,检测其是否能够依据过滤规则阻断该访问请求,并返回该自定义错误页面。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 规则库管理

规则库管理的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 检查并启用产品所提供的默认安全防护规则库,从测试终端上发起相应的攻击,检测其是否能够依据默认的安全防护规则库进行防护;
  2. 按产品文档说明尝试对安全防护规则库进行升级,检测其是否与文档描述一致;
  3. 尝试添加、删除、修改自定义过滤规则,并进行保存和启用,从测试终端上发起相应的请求,检测其是否能够依据该自定义过滤规则允许或阻断该访问请求。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 报警功能

报警功能的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 审查产品的文档说明,产品是否支持告警功能,且告警方式是否支持屏幕报警、邮件告警、SNMP trap告警、短信告警等方式中的一种;
  2. 依据产品文档说明设置告警策略,并分别在告警策略中设置不同的告警方式,从测试终端上发起相应HTTP请求,触发告警,检测其是否能够按照告警策略及指定的告警方式进行告警;
  3. 检查产品的告警日志内容是否包含日期、时间、匹配规则、告警事件描述等信息项。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合上述测试评价方法要求作出判断

  1. 自身安全保护测试评价方法

    1. 标识与鉴别

      1. 唯一性标识

唯一性标识的测试评价方法与结果如下:

  1. 测评评价方法:
  1. 创建用户,查看该用户的唯一性标识,以创建用户身份登录待测产品,进行一系列操作,查看相关日志;
  2. 尝试再次创建一个相同标识的用户。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 身份鉴别

身份鉴别的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 检测员尝试登录待测产品进行管理,是否提示需进行身份鉴别;
  2. 输入正确的用户名和对应的口令,进行登录尝试;
  3. 输入正确的用户名和错误的口令,进行登录尝试;
  4. 输入错误的用户名,进行登录尝试。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 鉴别数据保护

鉴别数据保护的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 分别以授权管理员和非授权管理员身份登录待测产品修改其他管理员的口令;
  2. 根据开发商提供的文档,打开鉴别数据存储的文件或数据库表,验证查看鉴别数据是否需要授权,查看鉴别数据是否加密存储;
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 鉴别失败处理

鉴别失败处理的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 设置登录失败最大尝试次数(次数固定也可);
  2. 模拟多次管理员登录失败事件,直至测试达到设定的最大尝试次数,查看会话是否被终止。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 安全审计

    1. 审计数据生成

审计数据生成的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 开启审计功能子系统;
  2. 制定并下发允许和禁止的WEB访问策略;
  3. 模拟成功和失败的WEB访问事件,查看审计日志记录是否记录完整,审计日志内容是否包括每个事件发生的日期、时间、IP地址、所请求的URL、访问成功或失败的标识以及匹配规则;
  4. 管理员尝试成功和失败的登录操作,成功登录后查看审计日志是否记录了管理员所有的登录尝试,审计日志的内容是否包括:管理员登录的日期、时间、IP地址、用户名以及登录成功或失败的标识。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 审计日志管理功能

审计日志管理功能的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 检测是否可以对日志进行查询,备份等操作;
  2. 验证备份的审计日志是否与源日志内容相同,备份过程中审计日志无丢失、错误。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 可理解的格式

可理解的格式的测试评价方法与结果如下:

  1. 测试评价方法:

由检验员查看产品存储于永久性审计记录中审计数据,查看审计数据是否可理解是否存在歧义。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 防止审计数据丢失

防止审计数据丢失的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查产品说明手册具有何种保证审计记录可用性的机制;
  2. 模拟非正常关机、磁盘空间满等情况,检测该产品是否能采取有效的措施防止审计数据丢失。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 统计功能

统计功能的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 使用不同的IP地址对受保护的资源进行访问操作;
  2. 进入统计功能界面,验证该产品是否可根据不同的时间段统计出访问WEB资源的总数,以及单个IP地址的访问总数。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 远程管理加密

远程管理加密的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 查看待测系统是否支持远程管理;
  2. 对系统进行远程管理,使用数据包分析工具验证远程管理通讯是否为非明文。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 状态监测

状态监测的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 查看待测产品是否具备设备状态监测功能;
  2. 根据开发商提供的文档,进行相关参数设置,在运行过程中模拟各种异常状态,查看产品是否发现、记录状态异常情况,并向管理员进行报警。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 双机热备

双机热备的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 查看待测产品是否具备双机热备功能;
  2. 根据开发商提供的文档,将2台WEB应用防火墙分别设置为主、备工作模式;
  3. 使主WEB应用防火墙无法正常工作(如:断电、断网等),检测备WEB应用防火墙能否及时发现主WEB应用防火墙的异常工作状态,并接管主WEB应用防火墙进行工作。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 安全保证要求测试评价方法

    1. 配置管理

      1. 版本号

版本号的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者提供的配置管理支持文件是否包含以下内容:版本号,要求开发者所使用的版本号与所应表示的产品样本应完全对应,没有歧义;
  2. 评价者应现场检查在配置管理活动中产品样本是否具备唯一版本号,该版本号是否与产品样本以及配置管理支持文件的描述完全对应。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 配置项

配置项的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者提供的配置管理文档,是否包括配置清单、配置管理计划。配置清单是否描述了组成系统的全部配置项;
  2. 评价者应现场检查配置管理系统中的配置项是否与配置清单的描述一致,配置管理系统是否对所有的配置项作出唯一的标识,配置管理系统是否对配置项进行了维护;
  3. 评价者应审查开发者提供的配置管理文档,是否描述了对配置项进行唯一标识的方法。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 交付与运行

    1. 交付程序

交付程序的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应现场检查开发者是否使用一定的交付程序交付产品;
  2. 评价者应审查开发者是否使用文档描述交付过程,文档中是否包含以下内容:在给用户方交付系统的各版本时,为维护安全所必需的所有程序。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 安装、生成和启动程序

安装、生成和启动程序的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者是否提供了文档说明系统的安装、生成、启动和使用的过程;
  2. 评价者按照文档描述的方式确认是否能够正确安装、生成和启动程序。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 开发

    1. 非形式化功能规格说明

非形式化功能规格说明的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查非形式化功能规格说明的如下内容,并确认功能设计是否是安全功能要求的精确和完整的示例:

—— 使用非形式化风格来描述产品安全功能与其外部接口;

——是内在一致的;

——描述使用所有外部产品安全功能接口的目的与方法,适当的时候,要提供结果影响例外情况和出错信息的细节;

——功能设计应当完整地表示产品安全功能。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 描述性高层设计

描述性高层设计的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查描述性高层设计的如下内容:

——使用非形式化风格来表示;

——是内在一致的;

——按子系统描述安全功能的结构;

——描述每个安全功能子系统所提供的安全功能性;

——标识安全功能所要求的任何基础性的硬件、固件或软件,以及在这些硬件、固件或软件中实现的支持性保护机制所提供功能的一个表示;

——标识安全功能子系统的所有接口;

——标识安全功能子系统的哪些接口是外部可见的。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 非形式化对应性证实

非形式化对应性证实的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者是否在产品安全功能表示的所有相邻对之间提供对应性分析;
  2. 其中,系统各种安全功能表示(如系统功能设计、高层设计、低层设计、实现表示)之间的对应性是所提供的抽象产品安全功能表示要求的精确而完整的示例;
  3. 产品安全功能在功能设计中进行细化,并且较为抽象的产品安全功能表示的所有相关安全功能部分,在较具体的产品安全功能表示中进行细化。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 指导性文档

    1. 管理员指南

管理员指南的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查开发者是否提供了供授权管理员使用的管理员指南,并且此管理员指南是否包括如下内容:

——产品可以使用的管理功能和接口;

——产品提供给管理员的安全功能和接口的使用方法;

——在安全处理环境中应进行控制的功能和权限;

——所有对与产品的安全操作有关的用户行为的假设;

——所有受管理员控制的安全参数,如果可能,应指明安全值;

——每一种与管理功能有关的安全相关事件,包括对安全功能所控制的实体的安全特性进行的改变;

——所有与授权管理员有关的IT环境的安全要求。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 用户指南

用户指南的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查开发者是否提供了供用户使用的用户指南,并且此用户指南是否包括如下内容:

——产品的非管理用户可使用的安全功能和接口;

——产品提供给用户的安全功能和接口的使用方法;

——用户可获取但应受安全处理环境控制的所有功能和权限;

——产品安全操作中用户所应承担的职责;

——与用户有关的IT环境的所有安全要求。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 测试

    1. 覆盖证据

覆盖证据的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查开发者提供的测试覆盖证据,在测试覆盖证据中,是否表明测试文档中所标识的测试与功能规格说明中所描述的产品的安全功能是对应的。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 功能测试

功能测试的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者提供的测试文档,是否包括测试计划、测试规程、预期的测试结果和实际测试结果;
  2. 评价者应审查测试计划是否标识了要测试的安全功能,是否描述了测试的目标;
  3. 评价者应审查测试规程是否标识了要执行的测试,是否描述了每个安全功能的测试概况(这些概况包括对其它测试结果的顺序依赖性);
  4. 评价者应审查期望的测试结果是否表明测试成功后的预期输出;
  5. 评价者应审查实际测试结果是否表明每个被测试的安全功能能按照规定进行运作。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 独立测试

    1. 一致性

一致性的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者提供的测试产品;
  2. 评价者应审查开发者提供的测试集合是否与其自测系统功能时使用的测试集合相一致。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 抽样

抽样的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查开发者是否提供一组相当的资源,用于安全功能的抽样测试。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 脆弱性评定

    1. 产品安全功能强度评估

产品安全功能强度评估的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查开发者提供的指导性文档,是否对所标识的每个具有安全功能强度声明的安全机制进行了安全功能强度分析,是否说明了安全机制达到或超过定义的最低强度级别或特定功能强度度量。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 开发者脆弱性分析

开发者脆弱性分析的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者提供的脆弱性分析文档,是否从用户可能破坏安全策略的明显途径出发,对产品的各种功能进行了分析;
  2. 评价者应审查开发者是否对被确定的脆弱性明确记录了采取的措施;
  3. 对每一条脆弱性,评价者应审查是否有足够证据证明在使用产品的环境中该脆弱性不能被利用。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 增强级

    1. 安全功能要求测试评价方法

      1. HTTP过滤功能

        1. 允许/禁止HTTP请求类型

允许/禁止HTTP请求类型的测试评价方法与结果如下:

  1. 测试评价方法:

通过管理主机配置基于不同类型HTTP请求(至少包括:GET、POST、PUT、HEAD、OPTIONS)的过滤规则,并从测试终端上发起相应HTTP请求,检测其是否能够依据过滤规则允许或阻断该访问请求。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. HTTP协议头各个字段的长度限制

HTTP协议头各个字段的长度限制的测试评价方法与结果如下:

  1. 测试评价方法:

通过管理主机配置基于HTTP协议头中不同字段(至少包括:general-header、request-header、response-header)长度的过滤规则,并从测试终端上发起超出所设字段长度的HTTP请求,检测其是否能够依据过滤规则阻断该访问请求。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 后缀名过滤

后缀名过滤的测试评价方法与结果如下:

  1. 测试评价方法:

通过管理主机配置基于WEB资源文件后缀名(如zip、rar、doc、exe、asp、html等)的过滤规则,并从测试终端上发起相应HTTP请求,尝试访问或下载上述各后缀名的WEB资源文件,检测其是否能够依据过滤规则阻断该访问请求。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 支持多种编码格式

支持多种编码格式的测试评价方法与结果如下:

  1. 测试评价方法:

通过测试终端发起不同编码格式(UNICODE、BASE64、二进制、十六进制等)的HTTP请求,检测其是否能够自动将客户端请求转换成ASCII明文。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 识别和限制HTTP响应码

识别和限制HTTP响应码的测试评价方法与结果如下:

  1. 测试评价方法:

通过管理主机配置基于HTTP响应码的过滤规则,并从测试终端上发起HTTP请求,检测其是否能够识别HTTP服务器返回的响应码,并依据过滤规则允许或阻断该响应页面。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. URL内容关键字过滤

URL内容关键字过滤的测试评价方法与结果如下:

  1. 测试评价方法:

通过管理主机配置基于URL关键字的过滤规则,并从测试终端上发起包含该关键字的HTTP请求,检测其是否能够依据过滤规则阻断该HTTP请求。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. WEB服务器返回内容过滤

WEB服务器返回内容过滤的测试评价方法与结果如下:

  1. 测试评价方法:

通过管理主机配置基于WEB服务器返回内容关键字的过滤规则,并从测试终端上发起相应HTTP请求,检测其是否能够依据过滤规则阻断包含该关键字的WEB服务器返回页面。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 安全防护功能

    1. WEB应用防护功能

WEB应用防护功能的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 通过管理主机开启WEB应用防火墙的WEB应用防护功能,并配置相应的应用防护规则;
  2. 从测试终端上发起针对主流WEB服务器软件(如:Apache、IIS等)流行漏洞的攻击利用,检测其是否能够进行防护;
  3. 从测试终端上发起针对主流WEB应用开发脚本(如:PHP、JSP、ASP、JavaScript等)流行漏洞的攻击利用,检测其是否能够进行防护。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. WEB攻击防护功能

WEB攻击防护功能的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 通过管理主机开启WEB应用防火墙的WEB攻击防护功能,并配置相应的攻击防护规则;
  2. 从测试终端上用POST和GET方式进行SQL注入攻击,检测其是否能够进行防护;
  3. 从测试终端上用构建的各种XSS跨站脚本攻击WEB服务器,检测其是否能够进行防护;
  4. 从测试终端上访问构建的资源盗链,检测其是否能够进行防护,使被盗链WEB页面显示不正常,盗用服务器的图片和其他资源不能正常显示;
  5. 从测试终端上用扫描工具对WEB服务器进行WEB应用扫描,检测其是否能够进行防护,使扫描工具不能扫描到任何结果;
  6. 从测试终端上用爬虫工具对WEB服务器进行攻击,检测其是否能够进行防护,使爬虫工具不能获取到服务器的信息;
  7. 从测试终端上对WEB服务器进行CSRF攻击,检测其是否能够进行防护;
  8. 从测试终端上用POST和GET方式进行命令注入攻击,检测其是否能够进行防护;
  9. 从测试终端上用POST方式进行非法上传文件,检测其是否能够进行防护;
  10. 从测试终端上用GET方式进行非法下载文件,检测其是否能够进行防护;
  11. 从测试终端上用攻击工具发起HTTP Flood攻击,检测其是否能够进行防护;
  12. 从测试终端上对WEB服务器进行Cookie注入攻击,检测其是否能够进行防护;
  13. 从测试终端上模拟入侵者上传Webshell文件,或利用Webshell对WEB服务器进行攻击,检测其是否能够进行识别和拦截;
  14. 按照产品说明文档中关于产品具备的其它WEB攻击防护功能的描述,从测试终端上对WEB服务器进行相应的WEB攻击,检测其是否能够进行防护。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 其他功能

    1. 自定义错误页面功能

自定义错误页面功能的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 通过管理主机设置WEB服务器返回的错误页面,并在过滤规则中的响应措施中启用该自定义错误页面;
  2. 从测试终端上发起相应的HTTP请求,检测其是否能够依据过滤规则阻断该访问请求,并返回该自定义错误页面。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 白名单功能

白名单功能的测试评价方法与结果如下:

  1. 测试评价方法:

通过管理主机配置白名单规则,并从测试终端上发起相应HTTP请求,检测其是否能够依据过滤规则允许该访问请求,并阻断其它访问请求。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 支持HTTPS

支持HTTPS的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 将WEB服务器配置成要求HTTPS访问模式;
  2. 通过管理主机在配置HTTPS证书及相关参数;
  3. 通过管理主机配置过滤规则,并从测试终端上发起相应HTTP请求,检测其是否能够对HTTPS协议进行解码,并依据过滤规则允许或阻断该访问请求;
  4. 通过管理主机配置安全防护规则,并从测试终端上模拟入侵者利用漏洞发起相应攻击,检测其是否能够对HTTPS协议进行解码,并依据安全防护规则进行防护;
  5. 通过管理主机设置并启用自定义错误页面,从测试终端上发起相应HTTP请求,检测其是否能够对HTTPS协议进行解码,并依据依据过滤规则阻断该访问请求,返回该自定义错误页面;
  6. 通过管理主机配置白名单规则,并从测试终端上发起相应HTTP请求,检测其是否能够对HTTPS协议进行解码,并依据过滤规则允许该访问请求,同时阻断其它访问请求。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 规则库管理

规则库管理的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 检查并启用产品所提供的默认安全防护规则库,从测试终端上发起相应的攻击,检测其是否能够依据默认的安全防护规则库进行防护;
  2. 按产品文档说明尝试对安全防护规则库进行升级,检测其是否与文档描述一致;
  3. 尝试添加、删除、修改自定义过滤规则,并进行保存和启用,从测试终端上发起相应的请求,检测其是否能够依据该自定义过滤规则允许或阻断该访问请求。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合上述测试评价方法要求作出判断

  1. 报警功能

报警功能的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 审查产品的文档说明,产品是否支持告警功能,且告警方式是否支持屏幕报警、邮件告警、SNMP trap告警、短信告警等方式中的一种;
  2. 依据产品文档说明设置告警策略,并分别在告警策略中设置不同的告警方式,从测试终端上发起相应HTTP请求,触发告警,检测其是否能够按照告警策略及指定的告警方式进行告警;
  3. 从测试终端上发起相同的HTTP请求,触发告警,检测产品是否能够对高频发生的相同告警事件进行合并告警;
  4. 检查产品的告警日志内容,是否包含日期、时间、匹配规则、告警事件描述等信息项。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合上述测试评价方法要求作出判断

  1. 自身安全保护测试评价方法

    1. 标识与鉴别

      1. 唯一性标识

唯一性标识的测试评价方法与结果如下:

  1. 测评评价方法:
  1. 创建用户,查看该用户的唯一性标识,以创建用户身份登录待测产品,进行一系列操作,查看相关日志;
  2. 尝试再次创建一个相同标识的用户。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 身份鉴别

身份鉴别的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 检测员尝试登录待测产品进行管理,是否提示需进行身份鉴别;
  2. 输入正确的用户名和对应的口令,进行登录尝试;
  3. 输入正确的用户名和错误的口令,进行登录尝试;
  4. 输入错误的用户名,进行登录尝试。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 鉴别数据保护

鉴别数据保护的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 分别以授权管理员和非授权管理员身份登录待测产品修改其他管理员的口令;
  2. 根据开发商提供的文档,打开鉴别数据存储的文件或数据库表,验证查看鉴别数据是否需要授权,查看鉴别数据是否加密存储;
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 鉴别失败处理

鉴别失败处理的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 设置登录失败最大尝试次数(次数固定也可),设置失败处理措施为锁定用户或锁定远程主机地址;
  2. 模拟多次用户登录失败事件,直至测试达到设定的最大尝试次数,查看会话是否被终止,之后使用正确的用户名和对应的口令进行登录尝试,验证该用户是否被锁定,或远程登录的地址是否被锁定
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 安全管理角色

安全管理角色的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 查看文档说明,管理员是否有默认角色;
  2. 尝试根据角色各新增一个管理员,查看并验证各个角色的初始化属性;
  3. 尝试根据功能模块定义新角色;
  4. 查看并验证根据功能模块新定义的用户角色的初始化属性。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 安全审计

    1. 审计数据生成

审计数据生成的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 开启审计功能子系统;
  2. 制定并下发允许和禁止的WEB访问策略;
  3. 模拟成功和失败的WEB访问事件,查看审计日志记录是否记录完整,审计日志内容是否包括每个事件发生的日期、时间、IP地址、所请求的URL、访问成功或失败的标识以及匹配规则;
  4. 管理员尝试成功和失败的登录操作,成功登录后查看审计日志是否记录了管理员所有的登录尝试,审计日志的内容是否包括:管理员登录的日期、时间、IP地址、用户名以及登录成功或失败的标识;
  5. 管理员尝试进行其他操作,如增加、修改和删除过滤规则和防护策略,查看审计记录是否记录了相关日志;
  6. 进行管理员的增加、删除和修改操作,查看审计记录是否记录了相关日志。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 审计日志管理功能

审计日志管理功能的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 检测是否可以对日志进行查询,备份等操作;
  2. 验证备份的审计日志是否与源日志内容相同,备份过程中审计日志无丢失、错误。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 可理解的格式

可理解的格式的测试评价方法与结果如下:

  1. 测试评价方法:

由检验员查看产品存储于永久性审计记录中审计数据,查看审计数据是否可理解是否存在歧义。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 防止审计数据丢失

防止审计数据丢失的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查产品说明手册具有何种保证审计记录可用性的机制;
  2. 模拟非正常关机、磁盘空间满等情况,检测该产品是否能采取有效的措施防止审计数据丢失。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 统计功能

统计功能的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 使用不同的IP地址对受保护的资源进行访问操作;
  2. 进入统计功能界面,验证该产品是否可根据不同的时间段统计出访问WEB资源的总数,以及单个IP地址的访问总数;
  3. 尝试根据访问次数生成统计分析报表,查看是否支持以图形化方式进行展示(如饼状图、条状图等),并能以常见方式导出(如HTML格式、DOC格式等)。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 远程管理加密

远程管理加密的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 查看待测系统是否需要支持远程管理;
  2. 对系统进行远程管理,使用数据包分析工具验证远程管理通讯是否为非明文。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 状态监测

状态监测的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 查看待测产品是否具备设备状态监测功能;
  2. 根据开发商提供的文档,进行相关参数设置,在运行过程中模拟各种异常状态,查看产品是否发现、记录状态异常情况,并向管理员进行报警。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 双机热备

双机热备的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 查看待测产品是否具备双机热备功能;
  2. 根据开发商提供的文档,将2台WEB应用防火墙分别设置为主、备工作模式;
  3. 使主WEB应用防火墙无法正常工作(如:断电、断网等),检测备WEB应用防火墙能否及时发现主WEB应用防火墙的异常状态,并接管主WEB应用防火墙进行工作。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 负载均衡

负载均衡的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 审查产品的文档说明,产品是否支持负载均衡功能;
  2. 在WEB应用防火墙上配置负载均衡策略,将WEB访问请求均衡到多台WEB服务器上;
  3. 使用性能检测仪,模拟多个HTTP客户端通过WEB应用防火墙进行HTTP访问,检测WEB应用防火墙能否将WEB访问请求均衡到多台WEB服务器上;
  4. 分别在每台WEB服务器上统计WEB访问的总数,测试WEB应用防火墙是否达到负载均衡效果。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合上述测试评价方法要求作出判断

  1. 安全保证要求测试评价方法

    1. 配置管理

      1. 部分配置管理自动化

部分配置管理自动化的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查配置管理系统是否提供一种自动方式来支持产品的生成,通过该方式是否能够确保只能对产品的实现表示进行已授权的改变; 
  2. 评价者应审查配置管理计划是否描述配置管理系统中所使用的自动工具以及该工具的使用方法。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 配置管理能力

    1. 版本号

版本号的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者提供的配置管理支持文件是否包含以下内容:版本号,要求开发者所使用的版本号与所应表示的产品样本应完全对应,没有歧义;
  2. 评价者应现场检查在配置管理活动中产品样本是否具备唯一版本号,该版本号是否与产品样本以及配置管理支持文件的描述完全对应。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 配置项

配置项的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者提供的配置管理文档,是否包括配置清单、配置管理计划。配置清单是否描述了组成系统的全部配置项;
  2. 评价者应现场检查配置管理系统中的配置项是否与配置清单的描述一致,配置管理系统是否对所有的配置项作出唯一的标识,配置管理系统是否对配置项进行了维护;
  3. 评价者应审查开发者提供的配置管理文档,是否描述了对配置项进行唯一标识的方法。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 授权控制

授权控制的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者提供的配置管理计划文档,该文档是否描述配置管理系统的使用方法;
  2. 评价者应现场检查实施的配置管理活动是否与配置管理计划文档的描述相一致;
  3. 评价者应审查开发者提供的证据,这些证据应表明配置项得到了有效地维护。评价者应现场检查是否只有经过授权才能修改配置项。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 产生支持和接受程序

产生支持和接受程序的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者提供的配置管理文档是否包括一个接受计划,接受计划是否描述用来接受修改过的或新建的作为产品组成部分的配置项的程序;
  2. 评价者应审查配置管理系统是否支持产品的生成。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 配置管理范围

    1. 配置管理覆盖

配置管理覆盖的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者提供的配置管理支持文档是否说明了产品配置管理范围,配置管理范围至少包括产品实现表示、设计文档、测试文档、指导性文档、配置管理文档等配置项,从而确保这些配置项的修改是在一个正确授权的可控方式下进行的;
  2. 评价者应现场检查开发者所使用的配置管理系统至少能跟踪上述配置管理之下的内容;
  3. 评价者应审查开发者提供的配置管理支持文档是否说明了配置管理系统跟踪配置项的方法。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 问题跟踪配置管理覆盖

问题跟踪配置管理覆盖的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查开发者是否将安全缺陷纳入配置管理范围,是否对安全缺陷进行跟踪。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 交付与运行

    1. 交付程序

交付程序的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应现场检查开发者是否使用一定的交付程序交付产品;
  2. 评价者应审查开发者是否使用文档描述交付过程,文档中是否包含以下内容:在给用户方交付系统的各版本时,为维护安全所必需的所有程序。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 修改检测

修改检测的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者提供的文档是否描述了程序或技术措施,这些程序或技术措施可实现以下目的:

——检测修改;

——检测开发者的主拷贝和用户方所收到版本之间的任何差异;

——发现试图伪装成开发者,甚至是在开发者没有向用户方发送任何东西的情况下,向用户方交付产品。

  1. 评价者应现场检查开发者使用的程序是否与文档描述一致。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 安装、生成和启动程序

安装、生成和启动程序的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者是否提供了文档说明系统的安装、生成、启动和使用的过程;
  2. 评价者按照文档描述的方式确认是否能够正确安装、生成和启动程序。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 开发

    1. 功能规格说明

      1. 非形式化功能规格说明

非形式化功能规格说明的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查非形式化功能规格说明的如下内容,并确认功能设计是否是安全功能要求的精确和完整的示例:

——使用非形式化风格来描述产品安全功能与其外部接口;

——是内在一致的;

——描述使用所有外部产品安全功能接口的目的与方法,适当的时候,要提供结果影响例外情况和出错信息的细节;

——功能设计应当完整地表示产品安全功能。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 充分定义的外部接口

充分定义的外部接口的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查开发者所提供的功能规格说明和安全功能的对应性能够完备合理的表示安全功能。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 高层设计

    1. 描述性高层设计

描述性高层设计的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查描述性高层设计的如下内容:

——使用非形式化风格来表示;

——是内在一致的;

——按子系统描述安全功能的结构;

——描述每个安全功能子系统所提供的安全功能性;

——标识安全功能所要求的任何基础性的硬件、固件或软件,以及在这些硬件、固件或软件中实现的支持性保护机制所提供功能的一个表示;

——标识安全功能子系统的所有接口;

——标识安全功能子系统的哪些接口是外部可见的。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 安全加强的高层设计

安全加强的高层设计的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查高层设计是否描述系统的功能子系统所有接口的用途与使用方法,是否适当描述效果、例外情况和错误消息的细节;
  2. 评价者应审查高层设计是否把系统分成安全策略实施和其它子系统来描述。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 安全功能实现的子集

安全功能实现的子集的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查开发者提供的实现表示是否无歧义而且详细地定义安全功能,使得无须进一步设计就能生成安全功能。实现表示应是内在一致的。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 描述性低层设计

描述性低层设计的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查描述性低层设计的如下内容:

——使用非形式化风格来表示;

——是内在一致的;

——按模块描述安全功能;

——描述每个模块的用途;

——根据所提供的安全功能性和对其他模块的依赖关系两方面来定义模块间的相互关系;

——描述每个安全策略实施功能是如何被提供的;

——标识安全功能模块的所有接口;

——标识安全功能模块的哪些接口是外部可见的;

——描述安全功能模块所有接口的用途和用法,适当时应提供效果、例外情况和错误消息的细节;

——把产品分为安全策略实施模块和其他模块来描述。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 非形式化对应性证实

非形式化对应性证实的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者是否在产品安全功能表示的所有相邻对之间提供对应性分析;
  2. 其中,系统各种安全功能表示(如系统功能设计、高层设计、低层设计、实现表示)之间的对应性是所提供的抽象产品安全功能表示要求的精确而完整的示例;
  3. 产品安全功能在功能设计中进行细化,并且较为抽象的产品安全功能表示的所有相关安全功能部分,在较具体的产品安全功能表示中进行细化。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 非形式化产品安全策略模型

非形式化产品安全策略模型的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查安全策略模型的如下内容:

——使用非形式化风格来表示;

——描述所有能被模型化的安全策略的规则与特征;

——应包含合理性,即论证该模型相对所有能被模型化的安全策略来说是一致的,而且是完备的;

——阐明安全策略模型和功能规格说明之间的对应性,即论证所有功能规格说明中的安全功能对于安全策略模型来说是一致的,而且是完备的。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 指导性文档

    1. 管理员指南

管理员指南的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查开发者是否提供了供授权管理员使用的管理员指南,并且此管理员指南是否包括如下内容:

——产品可以使用的管理功能和接口;

——产品提供给管理员的安全功能和接口的使用方法;

——在安全处理环境中应进行控制的功能和权限;

——所有对与产品的安全操作有关的用户行为的假设;

——所有受管理员控制的安全参数,如果可能,应指明安全值;

——每一种与管理功能有关的安全相关事件,包括对安全功能所控制的实体的安全特性进行的改变;

——所有与授权管理员有关的IT环境的安全要求。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 用户指南

用户指南的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查开发者是否提供了供用户使用的用户指南,并且此用户指南是否包括如下内容:

——产品的非管理用户可使用的安全功能和接口;

——产品提供给用户的安全功能和接口的使用方法;

——用户可获取但应受安全处理环境控制的所有功能和权限;

——产品安全操作中用户所应承担的职责;

——与用户有关的IT环境的所有安全要求。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 生命周期支持

    1. 安全措施标识

安全措施标识的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者提供的开发安全文档,该文档是否描述了在系统的开发环境中,为保护系统设计和实现的保密性和完整性所必需的所有物理的、程序的、人员的和其它方面的安全措施;
  2. 评价或则应现场检查产品的开发环境,开发者是否使用了物理的、程序的、人员的和其它方面的安全措施保证产品设计和实现的保密性和完整性,这些安全措施是否得到了有效的执行。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 开发者定义的生命周期模型

开发者定义的生命周期模型的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 开发者应提供证据证明使用了生命周期模型对产品的开发和维护进行的必要控制,评价者应对证据的内容进行审查;
  2. 评价者应审查开发者提供生命周期定义文档是否描述了用于开发和维护产品的模型。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 明确定义的开发工具

明确定义的开发工具的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查开发者所提供的开发安全文档是否明确定义了用于开发产品的工具,并提供了开发工具文档无歧义地定义实现中每个语句的含义和所有依赖于实现的选项的含义。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 测试

    1. 测试覆盖

      1. 覆盖证据

覆盖证据的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查开发者提供的测试覆盖证据,在测试覆盖证据中,是否表明测试文档中所标识的测试与功能规格说明中所描述的产品的安全功能是对应的。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 覆盖分析

覆盖分析的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者提供的测试覆盖分析结果,是否表明了测试文档中所标识的测试与安全功能设计中所描述的安全功能是对应的;
  2. 评价测试文档中所标识的测试,是否完整。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 测试:高层设计

测试深度的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查开发者提供的测试深度分析,是否说明了测试文档中所标识的对安全功能的测试,足以表明该安全功能和高层设计是一致的。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 功能测试

功能测试的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者提供的测试文档是否包括测试计划、测试规程、预期的测试结果和实际测试结果;
  2. 评价者应审查开发者提供的测试计划是否标识了被测试的安全功能,是否描述了测试的目标;
  3. 评价者应审查开发者提供的测试规程是否标识了要执行的测试,是否描述了每个安全功能的测试概况(这些概况包括对其它测试结果的顺序依赖性);
  4. 评价者应审查开发者提供的测试文档中期望的测试结果是否表明测试成功后的预期输出;
  5. 评价者应审查开发者提供的测试文档中实际测试结果是否表明每个被测试的安全功能能按照规定进行运作。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 独立测试

    1. 一致性

一致性的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者提供的测试产品;
  2. 评价者应审查开发者提供的测试集合是否与其自测系统功能时使用的测试集合相一致。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 抽样

抽样的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查开发者是否提供一组相当的资源,用于安全功能的抽样测试。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 脆弱性评定

    1. 误用

      1. 指南审查

指南审查的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者提供的指导性文档和分析文档,是否对产品的所有可能的操作方式(包括失败和操作失误后的操作)进行了说明,是否确定了它们的后果,以及是否确定了对于保持安全操作的意义;
  2. 评价者应审查开发者提供的指导性文档和分析文档,是否列出了所有目标环境的假设以及所有外部安全措施(包括外部程序的、物理的或人员的控制)的要求;
  3. 评价者应审查开发者提供的文档是否完整、清晰、一致、合理;
  4. 评价开发者提供的分析文档,是否阐明文档是完整的。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 分析确认

分析确认的测试评价方法与结果如下:

  1. 测试评价方法:

评价开发者提供的分析文档论证指导性文档是否是完备的。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 产品安全功能强度评估

产品安全功能强度评估的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应审查开发者提供的指导性文档,是否对所标识的每个具有安全功能强度声明的安全机制进行了安全功能强度分析,是否说明了安全机制达到或超过定义的最低强度级别或特定功能强度度量。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 脆弱性分析

    1. 开发者脆弱性分析

开发者脆弱性分析的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 评价者应审查开发者提供的脆弱性分析文档,是否从用户可能破坏安全策略的明显途径出发,对产品的各种功能进行了分析;
  2. 评价者应审查开发者是否对被确定的脆弱性明确记录了采取的措施;
  3. 对每一条脆弱性,评价者应审查是否有足够证据证明在使用产品的环境中该脆弱性不能被利用。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 独立的脆弱性分析

独立的脆弱性分析的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应在开发者提供的脆弱性分析说明文档的基础上,执行穿透性测试,检验已标识的产品脆弱性是否能够抵御明显的穿透性攻击。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 中级抵抗力

中级抵抗力的测试评价方法与结果如下:

  1. 测试评价方法:

评价者应根据开发者提供的脆弱性分析说明文档和独立穿透性测试的结果分析产品是否能够抵御中级强度的穿透性攻击,是否说明对脆弱性的搜索是系统化的。

  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. 性能测试评价方法

    1. HTTP吞吐量

HTTP吞吐量的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 使用性能检测仪,模拟多个HTTP客户端通过WEB应用防火墙访问模拟服务器端(HTTP请求产生速率应小于等于产品的HTTP最大请求速率),每个请求访问的HTTP有效载荷为10MB,持续30min;
  2. 计算WEB应用防火墙在测试期间的平均HTTP吞吐量;
  3. 重复3次以上过程,并计算3次结果的算术平均值。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. HTTP最大请求速率

HTTP最大请求速率的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 使用性能检测仪,模拟多个HTTP客户端以固定的HTTP请求速率通过WEB应用防火墙访问模拟服务器(HTTP连接建立的总数应小于等于WEB应用防火墙的最大并发连接数),HTTP协议版本为1.1,并保持连接一直处于打开状态,检测HTTP请求是否全部成功完成;
  2. 如果HTTP请求全部成功完成,提高HTTP请求速率,并重复步骤1);
  3. 如果HTTP请求未能全部成功完成,降低HTTP请求速率,并重复步骤1);
  4. 记录WEB应用防火墙所能支持的最大HTTP请求速率(最小单位100个/s);
  5. 重复3次以上过程,并计算3次结果的算术平均值。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. HTTP最大并发连接数

HTTP最大并发连接数的测试评价方法与结果如下:

  1. 测试评价方法:
  1. 使用性能检测仪,模拟多个HTTP客户端通过WEB应用防火墙访问模拟服务器端(HTTP请求产生速率应小于等于产品的HTTP最大请求速率),每个请求访问的HTTP有效载荷为1KB,HTTP协议版本为1.1,并保持连接一直处于打开状态;
  2. 统计WEB应用防火墙所能支持的最大并发连接数;
  3. 重复3次以上过程,并计算3次结果的算术平均值。
  1. 测试评价结果:

记录测试结果并对该结果是否完全符合相应安全技术要求作出判断。

  1. WEB应用防火墙安全技术要求分级表

表1以表格形式列举了不同等级的WEB应用防火墙的相关要求。

表1 WEB应用防火墙安全技术要求分级表

安全技术要求

基本级

增强级

安全功能要求

HTTP过滤功能

允许/禁止HTTP请求类型

*

*

HTTP协议头各个字段的长度限制

*

*

后缀名过滤

*

*

支持多种编码格式

*

*

识别和限制HTTP响应码

*

*

URL内容关键字过滤

*

*

WEB服务器返回内容过滤

*

*

安全防护功能

WEB应用防护功能

*

*

WEB攻击防护功能

a)~j)

a)~m)

其他功能

自定义错误页面功能

*

*

白名单功能

——

*

支持HTTPS

——

*

规则库管理

*

*

报警功能

a)~b)

a)~c)

双机热备

*

*

负载均衡

——

*

自身安全保护

标识与鉴别

唯一性标识

*

*

身份鉴别

*

*

鉴别数据保护

*

*

鉴别失败处理

a)

a)~b)

安全管理角色

——

*

安全审计

审计数据生成

a)~b)

a)~c)

审计日志管理功能

*

*

可理解的格式

*

*

防止审计数据丢失

*

*

统计功能

a)

a)~b)

远程管理加密

*

*

安全保证要求

配置管理

*

+

交付与运行

*

+

开发

*

+

指导性文档

*

+

生命周期支持

——

*

测试

*

+

脆弱性评定

*

+

表1(续)

安全技术要求

基本级

增强级

性能要求

HTTP吞吐量

*

*

HTTP最大请求速率

*

*

HTTP最大并发连接数

*

*

注:“*”表示具有该项要求,“——”表示不具有该项要求,“+”表示具有更高的要求。

参 考 文 献

  1. GB 17859-1999  计算机信息系统安全保护等级划分准则
  2. GB/T 20271-2006  信息安全技术 信息系统通用安全技术要求
  3. GB/T 22239—2008 信息安全技术 信息系统安全等级保护基本要求
  4. GB/T 21028-2007 信息安全技术 服务器安全技术要求
  5. GB/T 20281—2006 信息安全技术 防火墙技术要求和测试评价方法
  6. GB/T 20275—2006  信息安全技术 入侵检测系统技术要求和测试评价方法
  7. GB/T 18336.1-2008 信息技术 安全技术 信息技术安全性评估准则 第1部分:简介和一般模型
  8. GB/T 18336.2-2008 信息技术 安全技术 信息技术安全性评估准则 第2部分:安全功能要求
  9. GB/T 18336.3-2008 信息技术 安全技术 信息技术安全性评估准则 第3部分:安全保证要求
  10. RFC 2616 Hypertext Transfer Protocol -- HTTP/1.1
  11. Common Methodology for Information Technology Security Evaluation(CCMB-2012-09-004, Version 3.1 Revision 4)

WEB应用防火墙安全技术要求与测试评价方法相关推荐

  1. 移动智能终端安全技术要求及测试评价方法

    声明 本文是学习移动智能终端安全技术要求及测试评价方法. 下载地址 http://github5.com/view/627而整理的学习笔记,分享出来希望更多人受益,如果存在侵权请及时联系我们 移动智能 ...

  2. 反垃圾邮件产品测试评价方法

    声明 本文是学习信息安全技术 反垃圾邮件产品技术要求和测试评价方法. 下载地址 http://github5.com/view/1442而整理的学习笔记,分享出来希望更多人受益,如果存在侵权请及时联系 ...

  3. web渗透测试----31、检测到绕过web应用防火墙

    WAF(web应用防火墙)是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品. 文章目录 一.WAF的工作原理 二.WAF的常见功能 三.WAF种类 四.WAF的判 ...

  4. 开源免费的WEB应用防火墙

    开源免费的WEB应用防火墙 排名不分前后 资源宝分享:www.httple.net 南墙waf测试linux7.6和宝塔不兼容,会用使用docker版waf隔离开来https://waf.uusec. ...

  5. [转]Web应用防火墙WAF详解

    通过nginx配置文件抵御攻击 0x00 前言 大家好,我们是OpenCDN团队的Twwy.这次我们来讲讲如何通过简单的配置文件来实现nginx防御攻击的效果. 其实很多时候,各种防攻击的思路我们都明 ...

  6. _Linux自编译云锁Web网站防火墙,看完小白也能保护网站安全

    图/文:迷神 之前写了一篇云锁防护网站入侵攻击的文章,但是那个是基于宝塔自带的添加模块功能,有的人说,不带那个功能.那接下来,我们就讲讲Linux下通过自编译Nginx添加云锁Web网站防火墙模块,这 ...

  7. 开源框架openresty+nginx 实现web应用防火墙(WAF)

    1.简介 Web应用防火墙(Web Application Firewall, WAF),通过对HTTP(S)请求进行检测,识别并阻断SQL注入.跨站脚本攻击(Cross Site Scripting ...

  8. Web应用防火墙的主要特性

    随着web2.0时代的到来,Web应用也逐渐被人广泛的接受和使用.当然,每个新技术的到来对应着其安全问题也接踵而来.面对Web安全问题,不同于IDS与IPS的新技术,Web应用防火墙也逐渐映入人们的眼 ...

  9. 阿里云安全ACP认证试验之阿里云Web应用防火墙接入体验

    实验概述 越来越多的公司出于对成本和效率的考量,将业务部署在网站上.主机和网络的漏洞,给一些恶意访问提供了可乘之机,盗取网站的信息.比如:发生在2014年的索尼影业黑客入侵事件,黑客组织"和 ...

最新文章

  1. 经典的”服务器最多65536个连接”误解
  2. 2020\Simulation_2\1.12.5MB
  3. 路由重分发中尽然忘记了这件事
  4. 扫雷游戏制作学习过程
  5. 浏览器弹不出java_打开网址跳出弹窗“您的浏览器没有获得Java virtual machine 支持”,怎么办?...
  6. WPF下递归生成树形数据绑定到TreeView上
  7. ndarray是什么_python数据分析用什么软件?
  8. curl post json_curl 模拟 GETPOST 请求,以及 curl post 上传文件
  9. 聚类分析软件操作流程
  10. 后缀树后缀数组LCP
  11. 阿里大数据之路:数据模型篇大总结(收藏)
  12. 云服务器,liunx服务器上的图片通过浏览器访问
  13. Python plotly保存图片
  14. python数据分析:新闻文本聚类
  15. 技术支撑团队技术支持工程师的技能要求
  16. eSIM终于来临,它将如何助力IoT的发展?
  17. 五大主流浏览器的内核,前端在IE浏览器中常见的兼容问题
  18. 混得不好,就别去思考!
  19. 盘点|世界流行的十大机械工程设计软件,你会用几种?
  20. 【C语言|RUNOOB教程】100道经典例题详解(1~5题)

热门文章

  1. Communications link failure解决方案
  2. java split方法注意事项
  3. a large quantity of谓语用单数或复数都可,后接可数名词复数或不可数名词
  4. android固件轻松,安卓轻松改工具-安卓固件修改软件-安卓轻松改工具下载 v1.0.2官方版-完美下载...
  5. 大数据——Impala工具使用
  6. 后羿 01 ‖ 大羿
  7. 忍者必须死3 通关 服务器维护,《忍者必须死3》11月5日停服维护公告
  8. Java方向如何准备BAT技术面试答案(汇总版)
  9. 联想一体机重装win7系统
  10. vue+element Carousel实现幻灯片展示列表并联动时间线