《信息安全技术Web应用安全检测系统安全技术要求和测试评价方法》_第1页
《信息安全技术Web应用安全检测系统安全技术要求和测试评价方法》_第2页
《信息安全技术Web应用安全检测系统安全技术要求和测试评价方法》_第3页
《信息安全技术Web应用安全检测系统安全技术要求和测试评价方法》_第4页
《信息安全技术Web应用安全检测系统安全技术要求和测试评价方法》_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

GB/TXXXXX—XXXX

信息安全技术Web应用安全检测系统安全技术要求和测试评价方法

1范围

本标准规定了Web应用安全检测系统的安全技术要求、测试评价方法及等级划分要求。

本标准适用于Web应用安全检测系统的开发及检测。

2规范性引用文件

下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅注日期的版本适用于本文件。

凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。

GB/T18336.3-2015信息技术安全技术信息技术安全性评估准则第3部分:安全保障组件

GB/T25069-2010信息安全技术术语

3术语和定义

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

3.1

Web应用安全检测系统webapplicationsecurityscanningsystem

一种扫描发现Web系统应用层安全漏洞的产品,能够依据策略对Web应用系统进行URL发现并扫描,

对发现的安全漏洞提出相应的改进意见。

3.2

Web应用Webapplication

由动态脚本、编译过的代码等组合而成的应用,通常架设在Web服务器上,用户在Web浏览器上发送

请求,这些请求使用HTTP协议,经过网络和Web应用交互,由Web应用和后台的数据库及其他动态内容通

信。

3.3

URL发现URLdetection

通过访问一个URL,发现通过该URL能够链接到的其他URL的过程,能够发现的URL包括在网页中出现

的完整的URL、通过各种计算得出的URL、各种跳转的URL等。

3.4

Web服务WebService

一个基于WSDL文件的应用程序,向外界提供一个能够通过Web进行调用的API。WebService描述

语言(WSDL)是一个基于XML的语言,用于描述WebService及其函数、参数和返回值。

3.5

SQL注入SQLinjection

通过构造特定的输入字符串实现对Web应用系统后台数据库的非法操作。

3.6

Cookie注入cookieinjection

通过构造特定的Cookie值实现对Web应用系统后台数据库的非法操作。

3.7

跨站攻击crosssitescripting

1

GB/TXXXXX—XXXX

指将恶意脚本隐藏在用户提交的数据中,实现篡改服务器正常的响应页面。

3.8

跨站请求伪造crosssiterequestforgery

通过伪装来自受信任用户的请求来利用受信任的Web系统来完成一定的操作。

3.9

文件包含fileinclusion

一种通过Web应用脚本特性(函数)去包含任意文件时,由于要包含的这个文件来源过滤不严,从

而可以去包含一个恶意文件来达到非法操作。

3.10

命令执行commandexecution

由于服务器端没有针对执行函数做过滤,导致客户端可以提交恶意构造语句提交来执行系统命令的

非法操作。

3.11

LDAP注入LDAPInjection

通过用户提供的输入来构造轻量级目录访问控制语句,从而攻击Web应用。

3.12

XPath注入XPathInjection

由用户提供的输入构造XPath查询,从而攻击Web应用。

3.13

变形检测deformationdetection

一种通过编码、请求包变化等方法,实现绕过防护过滤的机制。

3.14

误报率falsepositiverate

产品判断错误的漏洞数量占所有发现到的同类型漏洞总数的比例。例如被产品错误判断为存在SQL

注入漏洞的网页占发现的全部存在SQL注入漏洞的网页的比例。

3.15

漏报率falsenegativerate

产品未发现的漏洞数量占扫描范围内实际同类型漏洞总数的比例。例如产品未发现的SQL注入点占

扫描范围内实际注入点总数的比例。

4缩略语

CSRF:跨站请求伪造(CrossSiteRequestForgery)

HTTP:超文本传输协议(HyperTextTransferProtocol)

HTTPS:安全超文本传输协议(HypertextTransferProtocoloverSecureSocketLayer)

LDAP:轻量目录访问协议(LightweightDirectoryAccessProtocol)

OWASP:开放式网页应用程序安全项目(OpenWebApplicationSecurityProject)

SQL:结构化查询语言(StructuredQueryLanguage)

SSL:安全套接层(SecureSocketsLayer)

URL:统一资源定位符,也称网页地址(UniversalResourceLocator)

WSDL:web服务描述语言(WebServicesDescriptionLanguage)

XSS:跨站脚本(CrossSiteScripting)

5安全技术要求

2

GB/TXXXXX—XXXX

5.1总体说明

5.1.1Web应用安全检测系统描述

Web应用安全检测系统的目的就是帮助用户充分了解Web应用存在的安全隐患,建立安全可靠的Web

应用服务,改善并提升应用系统抗各类Web应用攻击的能力(如:注入攻击、跨站脚本、文件包含和信

息泄漏等)。Web应用安全检测系统架构如图1所示:

图1Web应用安全检测系统架构图

1)检测模块

系统核心模块。扫描开始后,向扫描引擎发送指令,扫描选中对象目标,收集正确的扫描信息,同

时可以把扫描引擎返回的扫描结果展示给用户。

2)报表管理

对扫描结果进行分析处理,提供详细的检测扫描报告,对所有漏洞进行详尽描述,以及相应的修复

和改进建议。

3)策略管理

提供Web应用安全检测系统的策略库,能够按照漏洞类型、类别和危害程度等进行分类。同时,可

支持漏洞策略的自定义扩展。

4)用户管理

对系统的用户角色和权限进行分配管理。

5)任务设置

用以创建和定制扫描任务,能够按照计划任务启动扫描,可进行扫描暂停、重新扫描和移除扫描任

务等操作。

6)系统设置

对系统进行设置,包括系统安全设置、更新管理和络链接设置等。

5.1.2要求分类

本标准将Web应用安全检测系统安全技术要求分为安全功能、安全保障和性能要求三个大类。其中,

安全功能要求是对Web应用安全检测系统应具备的安全功能提出具体要求,主要包括扫描能力、扫描配

置管理和扫描结果分析处理等;安全保障要求针对Web应用安全检测系统的开发过程和文档内容提出具

体的要求,例如开发、指导性文档、生命周期支持和测试等;性能要求则是对Web应用安全检测系统应

达到的性能指标作出规定,包括误报率、漏报率和URL发现率。

5.1.3安全等级

3

GB/TXXXXX—XXXX

本标准按照Web应用安全检测系统安全功能的强度划分安全功能要求的级别,参照GB/T18336.3-

2015划分安全保障要求的级别。安全等级分为基本级和增强级,如表1、表2所示。安全功能强弱和安全

保障要求高低是等级划分的具体依据。安全等级突出安全特性,性能要求不作为等级划分依据。与基本

级内容相比,增强级中要求有所增加或变更的内容在正文中通过“宋体加粗”表示。

表1安全功能要求等级划分表

安全功能基本级增强级

资源发现***

漏洞检测***

变形检测——*

状态监测——**

扫描能力内容检测——*

升级能力***

支持SSL应用**

WebService支持——*

对目标系统的影响**

向导功能**

扫描范围***

登录扫描**

策略选择***

扫描配置管理扫描策略

策略扩展——*

扫描速度***

任务定制***

稳定性和容错性***

结果验证***

结果保存**

结果分析处理统计分析**

报告生成***

报告输出**

互动性要求——*

属性定义**

用户标识属性初始化**

标识与鉴别唯一性标识**

用户鉴别**

身份鉴别

鉴别数据保护**

4

GB/TXXXXX—XXXX

表1(续)

安全功能基本级增强级

鉴别失败处理——*

标识与鉴别身份鉴别

超时锁定或注销——*

安全管理功能**

安全角色管理***

安全管理

远程安全传输**

可信管理主机——*

审计日志生成***

审计日志审计日志保存**

审计日志管理**

注:“*”表示具有该要求,“**”表示要求有所增强,“——”表示不适用。

表2安全保障要求等级划分表

安全保障要求基本级增强级

安全架构**

功能规范***

开发

实现表示——*

产品设计***

操作用户指南**

指导性文档

准备程序**

配置管理能力***

配置管理范围***

交付程序**

生命周期支持

开发安全——*

生命周期定义——*

工具和技术——*

测试覆盖***

测试深度——*

测试

功能测试**

独立测试**

脆弱性评定***

5.2基本级安全要求

5.2.1安全功能要求

扫描能力

5

GB/TXXXXX—XXXX

.1资源发现

产品应能够发现Web应用中的以下各种URL,并以树型结构呈现。

a)解析和执行JavaScript等脚本而获得的URL;

b)页面文件包括的URL;

c)Flash中内嵌的URL。

.2漏洞检测

产品应能够检测出Web应用漏洞,包括但不限于以下内容:

a)SQL注入漏洞,支持基于GET、POST方式提交的应包括字符、数字和搜索等的注入漏洞;

b)Cookie注入漏洞,支持基于Cookie方式提交的应包括字符、数字和搜索等的注入漏洞;

c)XSS漏洞,支持基于GET、POST方式的跨站攻击漏洞;

d)CSRF漏洞;

e)目录遍历漏洞;

f)信息泄漏漏洞,支持路径泄漏、文件备份、源代码泄漏、目录浏览和phpinfo等信息泄漏;

g)认证方式脆弱,包括但不限于常见的帐号、弱口令等;

h)文件包含漏洞,支持远程、本地方式的文件包含漏洞。

.3升级能力

产品应支持漏洞特征库的更新能力。

.4支持SSL应用

产品应能对基于HTTPS协议的Web应用系统进行扫描。

.5对目标系统的影响

产品在扫描过程中应避免影响目标Web应用系统的正常工作,不对其产生较大的性能影响。

扫描配置管理

.1向导功能

产品应提供向导功能,方便用户进行配置。

.2扫描范围

产品应能够按照下列条件配置扫描的范围:

a)指定域名和URL;

b)扫描的深度;

c)不扫描的URL,例如登出、删除等相关页面。

.3登录扫描

产品应能够基于用户的登录信息对Web应用进行扫描。如基于录制信息、Cookie、Session和Token

等一种或多种方式授权登录并进行扫描。

.4策略选择

产品应能够按照下列方式来选择扫描策略:

a)漏洞类型、类别;

b)漏洞危害程度。

.5扫描速度

产品应能够采用配置HTTP请求速度、扫描线程或进程数目等方式调节扫描速度。

.6任务定制

产品应能按照计划任务实现批量启动扫描,并根据设置自动生成相应的报告。

.7稳定性和容错性

产品应能够稳定的运行:

6

GB/TXXXXX—XXXX

a)主界面不应失去响应或非正常退出;

b)扫描进度不应停滞不前;

c)扫描任务应可随时停止;

d)应支持断点续扫。

扫描结果分析处理

.1结果验证

产品应具备Web应用漏洞验证的功能,提供参数验证XSS漏洞、SQL注入点、目录遍历、信息泄漏和

命令执行等安全漏洞。

.2结果保存

扫描结果应非明文存储于掉电非易失性介质中。

.3统计分析

产品应能对扫描获取的原始数据进行整理,并对结果进行统计分析。

.4报告生成

产品应能对扫描结果进行分析并形成报告,报告可分为下列类别:

a)对扫描信息的结果生成相应报告,漏洞信息应包括URL、漏洞名称、漏洞描述等详细信息;

b)产品应对漏洞提出相应的安全性建议。

.5报告输出

产品的扫描报告应能按下列要求输出:

a)导出为常用文档格式(支持Html、Doc、Pdf其中的一种或几种);

b)通过文字、图表等形式将统计结果展现。

标识与鉴别

.1用户标识

.1.1属性定义

产品应为每个管理角色规定与之相关的安全属性,例如管理角色标识、鉴别信息、隶属组、权限等。

.1.2属性初始化

产品应提供使用默认值对创建的每个管理角色的属性进行初始化的能力。

.1.3唯一性标识

产品应为用户提供唯一标识。同时将用户的身份标识与该用户的所有可审计能力相关联。

.2身份鉴别

.2.1用户鉴别

产品应在执行任何与管理员相关功能之前鉴别用户的身份。

.2.2鉴别数据保护

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

安全管理

7

GB/TXXXXX—XXXX

.1安全功能管理

应允许授权管理员对产品进行以下管理:

a)查看安全属性;

b)修改安全属性;

c)启动、关闭全部或部分安全功能;

d)制定和修改各种安全策略。

.2安全角色管理

产品应具有至少两种不同权限的管理员角色,例如操作员、安全员、审计员等。

.3远程安全传输

若产品组件间通过网络进行通讯,应采取措施保障传输数据的安全性。

审计日志

.1审计日志生成

应对与自身安全相关的以下事件生成审计日志:

a)管理员的登录成功和失败;

b)对安全策略进行配置的操作;

c)对安全角色进行增加、删除和属性修改的操作。

产品应在每一个审计日志记录中记录事件发生的日期、时间、用户标识、事件描述和结果。若采用

远程登录方式对产品进行管理还应记录管理主机的地址。

.2审计日志保存

审计日志应能存储于永久性存储介质中。

.3审计日志管理

应提供下列审计日志管理功能:

a)只允许授权管理员访问审计日志;

b)提供针对操作用户、日期时间和操作类型等条件的查询和检索功能;

c)授权管理员应能存档和导出审计日志。

5.2.2安全保障要求

开发

.1安全架构

开发者应提供产品安全功能的安全架构描述,安全架构描述应满足以下要求:

a)与产品设计文档中对安全功能实施抽象描述的级别一致;

b)描述与安全功能要求一致的产品安全功能的安全域;

c)描述产品安全功能初始化过程为何是安全的;

d)证实产品安全功能能够防止被破坏;

e)证实产品安全功能能够防止安全特性被旁路。

.2功能规范

8

GB/TXXXXX—XXXX

开发者应提供完备的功能规范说明,功能规范说明应满足以下要求:

a)完全描述产品的安全功能;

b)描述所有安全功能接口的目的与使用方法;

c)标识和描述每个安全功能接口相关的所有参数;

d)描述安全功能接口相关的安全功能实施行为;

e)描述由安全功能实施行为处理而引起的直接错误消息;

f)证实安全功能要求到安全功能接口的追溯。

.3产品设计

开发者应提供产品设计文档,产品设计文档应满足以下要求:

a)根据子系统描述产品结构;

b)标识和描述产品安全功能的所有子系统;

c)描述安全功能所有子系统间的相互作用;

d)提供的映射关系能够证实设计中描述的所有行为能够映射到调用它的安全功能接口。

指导性文档

.1操作用户指南

开发者应提供明确和合理的操作用户指南,操作用户指南与为评估而提供的其他所有文档保持一

致,对每一种用户角色的描述应满足以下要求:

a)描述在安全处理环境中被控制的用户可访问的功能和特权,包含适当的警示信息;

b)描述如何以安全的方式使用产品提供的可用接口;

c)描述可用功能和接口,尤其是受用户控制的所有安全参数,适当时指明安全值;

d)明确说明与需要执行的用户可访问功能有关的每一种安全相关事件,包括改变安全功能所控制

实体的安全特性;

e)标识产品运行的所有可能状态(包括操作导致的失败或者操作性错误),以及它们与维持安全

运行之间的因果关系和联系;

f)充分实现安全目的所必须执行的安全策略。

.2准备程序

开发者应提供产品及其准备程序,准备程序描述应满足以下要求:

a)描述与开发者交付程序相一致的安全接收所交付产品必需的所有步骤;

b)描述安全安装产品及其运行环境必需的所有步骤。

生命周期支持

.1配置管理能力

开发者的配置管理能力应满足以下要求:

a)为产品的不同版本提供唯一的标识;

b)使用配置管理系统对组成产品的所有配置项进行维护,并唯一标识配置项;

c)提供配置管理文档,配置管理文档描述用于唯一标识配置项的方法。

.2配置管理范围

开发者应提供产品配置项列表,并说明配置项的开发者。配置项列表至少包含产品、安全保障要求

的评估证据和产品的组成部分。

.3交付程序

开发者应使用一定的交付程序交付产品,并将交付过程文档化。在给用户方交付产品的各版本时,

交付文档应描述为维护安全所必需的所有程序。

9

GB/TXXXXX—XXXX

测试

.1测试覆盖

开发者应提供测试覆盖文档,测试覆盖描述应表明测试文档中所标识的测试与功能规范中所描述的

产品的安全功能间的对应性。

.2功能测试

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

a)测试计划,标识要执行的测试,并描述执行每个测试的方案,这些方案包括对于其它测试结果

的任何顺序依赖性;

b)预期的测试结果,表明测试成功后的预期输出;

c)实际测试结果和预期的测试结果一致。

.3独立测试

开发者应提供一组与其自测安全功能时使用的同等资源,以用于安全功能的抽样测试。

脆弱性评定

基于已标识的潜在脆弱性,产品能够抵抗具有基本攻击潜力攻击者的攻击。

5.3增强级安全要求

5.3.1安全功能要求

扫描能力

.1资源发现

产品应能够发现Web应用中的以下各种URL,并以树型结构呈现。

a)解析和执行JavaScript等脚本而获得的URL;

b)页面文件包括的URL;

c)Flash、Flex中内嵌的URL。

.2漏洞检测

产品应能够检测出Web应用漏洞,包括但不限于以下内容:

a)SQL注入漏洞,支持基于GET、POST方式提交的应包括字符、数字和搜索等的注入漏洞;

b)Cookie注入漏洞,支持基于Cookie方式提交的应包括字符、数字和搜索等的注入漏洞;

c)XSS漏洞,支持基于GET、POST、Referrer和Cookie方式的跨站攻击漏洞;

d)CSRF漏洞;

e)目录遍历漏洞;

f)信息泄漏漏洞,支持路径泄漏、文件备份、源代码泄漏、目录浏览和phpinfo等信息泄漏;

g)认证方式脆弱,包括但不限于各种登录绕过、常见的帐号、弱口令等。

h)文件包含漏洞,支持远程、本地方式的文件包含漏洞;

i)命令执行漏洞;

j)第三方组件的漏洞,如Struts2、FCKeditor编辑器等;

l)LDAP注入漏洞;

m)XPath注入漏洞。

.3变形检测

产品应支持漏洞的变形检测,以此绕过简单的防护过滤检测机制。支持包括大小写随机转换、多

种绕过空格限制、空格替换和URL编码等机制。

10

GB/TXXXXX—XXXX

.4状态监测

检测目标系统的访问状态,包括但不限于对以下非正常状态进行检测并评估风险:

a)不可访问;

b)访问延迟;

c)域名跳转变化;

d)域名解析IP变化;

e)被搜索引擎标记为危险的站点。

.5内容检测

检测目标系统请求返回的内容,对以下非正常的返回内容进行检测并评估风险:

a)判别内容变更;

b)识别敏感关键字。

.6升级能力

产品应提供以下升级能力:

a)支持漏洞特征库的更新;

b)至少采取一种安全机制,保证升级的时效性,例如自动升级,更新通知等手段。

.7支持SSL应用

产品应能对基于HTTPS协议的Web应用系统进行扫描。

.8WebService支持

产品应能基于WSDL文件,对WebService进行扫描。

.9对目标系统的影响

产品在扫描过程中应避免影响目标Web应用系统的正常工作,不对其产生较大的性能影响。

扫描配置管理

.1向导功能

产品应提供向导功能,方便用户进行配置。

.2扫描范围

产品应能够按照下列条件配置扫描的范围:

a)指定域名和URL;

b)扫描的深度;

c)不扫描的URL,例如登出、删除等相关页面;

d)路径模式排重;

e)路径模式大小写区分。

.3登录扫描

产品应能够基于用户的登录信息对Web应用进行扫描。如基于录制信息、Cookie、Session和Token

等一种或多种方式授权登录并进行扫描。

.4扫描策略

.4.1策略选择

产品应能够按照下列方式来选择扫描策略:

a)漏洞类型、类别;

b)漏洞危害程度;

c)Web系统指纹信息。

.4.2策略扩展

产品应能够提供第三方插件设计,根据需要可自行编写漏洞策略,以完善扫描策略。

11

GB/TXXXXX—XXXX

.5扫描速度

产品应提供合理的扫描速度:

a)配置HTTP请求速度、扫描线程或进程数目等方式进行调节;

b)支持分布式部署扫描引擎方式;

c)支持多引擎负载均衡,提高整体的扫描速度。

.6任务定制

产品应能按照计划任务实现批量、定时和周期性启动扫描,并根据设置自动生成相应的报告。

.7稳定性和容错性

产品应能够稳定的运行:

a)主界面不应失去响应或非正常退出;

b)扫描进度不应停滞不前;

c)扫描任务应可随时停止;

d)应支持断点续扫;

e)在扫描未结束的情况下,可以将已经扫描的部分展示并导出报告。

扫描结果分析处理

.1结果验证

产品应具备Web应用漏洞验证的功能,提供下列验证能力:

a)提供参数验证XSS漏洞、SQL注入点、目录遍历、信息泄漏和命令执行等安全漏洞;

b)通过SQL注入点获取后台数据库的相关信息。

c)提供辅助工具验证漏洞。

.2结果保存

扫描结果应非明文存储于掉电非易失性介质中。

.3统计分析

产品应能对扫描获取的原始数据进行整理,并对结果进行统计分析。

.4报告生成

产品应能对扫描结果进行分析并形成报告,报告可分为下列类别:

a)对扫描信息的结果生成相应报告,漏洞信息应包括URL、漏洞名称、漏洞描述等详细信息;

b)产品应对漏洞提出相应的安全性建议;

c)支持导出行业合规报告,包括但不限于OWASPTOP10等;

d)支持编辑和自定义设计报告,添加自定义注释或详细信息,为技术人员修复安全缺陷提供帮

助;

e)支持批量导出报告;

f)支持根据横向、纵向比较的趋势分析报告。

.5报告输出

产品的扫描报告应能按下列要求输出:

a)导出为常用文档格式(支持Html、Doc、Pdf其中的一种或几种);

b)通过文字、图表等形式将统计结果展现。

互动性要求

产品应提供或采用一个标准的、开放的接口。遵照该接口规范,可为其它类型安全产品编写相应

的程序模块,达到与产品进行互动的目的。

12

GB/TXXXXX—XXXX

标识与鉴别

.1用户标识

.1.1属性定义

产品应为每个管理角色规定与之相关的安全属性,例如管理角色标识、鉴别信息、隶属组、权限等。

.1.2属性初始化

产品应提供使用默认值对创建的每个管理角色的属性进行初始化的能力。

.1.3唯一性标识

产品应为用户提供唯一标识。同时将用户的身份标识与该用户的所有可审计能力相关联。

.2身份鉴别

.2.1用户鉴别

产品应在执行任何与管理员相关功能之前鉴别用户的身份。

.2.2鉴别数据保护

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

.2.3鉴别失败处理

当对用户鉴别失败的次数达到指定次数后,产品应能终止用户的访问。

.2.4超时锁定或注销

应具有登录超时锁定或注销功能。在设定的时间段内没有任何操作的情况下,终止会话,需要再

次进行身份鉴别才能够重新操作。最大超时时间仅由授权管理员设定。

安全管理

.1安全功能管理

产品应允许授权管理员进行以下管理:

a)查看安全属性;

b)修改安全属性;

c)启动、关闭全部或部分安全功能;

d)制定和修改各种安全策略。

.2安全角色管理

产品应能对管理员角色进行区分:

a)具有至少两种不同权限的管理员角色,例如操作员、审计员等;

b)应根据不同的功能模块,自定义各种不同权限角色,并可对管理员分配角色。

.3远程安全传输

若产品组件间通过网络进行通讯,应采取措施保障传输数据的安全性。

13

GB/TXXXXX—XXXX

.4可信管理主机

若控制台提供远程管理功能,应能对可远程管理的主机地址进行限制。

审计日志

.1审计日志生成

应对与自身安全相关的以下事件生成审计日志:

a)管理员的登录成功和失败;

b)对安全策略进行配置的操作;

c)对安全角色进行增加、删除和属性修改的操作;

d)对扫描结果的备份和删除。

产品应在每一个审计日志记录中记录事件发生的日期、时间、用户标识、事件描述和结果。若采用

远程登录方式对产品进行管理还应记录管理主机的地址。

.2审计日志保存

审计日志应能存储于永久性存储介质中。

.3审计日志管理

应提供下列审计日志管理功能:

a)只允许授权管理员访问审计日志;

b)提供针对操作用户、日期时间和操作类型等条件的查询和检索功能;

c)授权管理员应能存档和导出审计日志。

5.3.2安全保障要求

开发

.1安全架构

开发者应提供产品安全功能的安全架构描述,安全架构描述应满足以下要求:

a)与产品设计文档中对安全功能实施抽象描述的级别一致;

b)描述与安全功能要求一致的产品安全功能的安全域;

c)描述产品安全功能初始化过程为何是安全的;

d)证实产品安全功能能够防止被破坏;

e)证实产品安全功能能够防止安全特性被旁路。

.2功能规范

开发者应提供完备的功能规范说明,功能规范说明应满足以下要求:

a)完全描述产品的安全功能;

b)描述所有安全功能接口的目的与使用方法;

c)标识和描述每个安全功能接口相关的所有参数;

d)描述安全功能接口相关的安全功能实施行为;

e)描述由安全功能实施行为处理而引起的直接错误消息;

f)证实安全功能要求到安全功能接口的追溯;

g)描述安全功能实施过程中,与安全功能接口相关的所有行为;

h)描述可能由安全功能接口的调用而引起的所有直接错误消息。

14

GB/TXXXXX—XXXX

.3实现表示

开发者应提供全部安全功能的实现表示,实现表示应满足以下要求:

a)提供产品设计描述与实现表示实例之间的映射,并证明其一致性;

b)按详细级别定义产品安全功能,详细程度达到无须进一步设计就能生成安全功能的程度;

c)以开发人员使用的形式提供。

.4产品设计

开发者应提供产品设计文档,产品设计文档应满足以下要求:

a)根据子系统描述产品结构;

b)标识和描述产品安全功能的所有子系统;

c)描述安全功能所有子系统间的相互作用;

d)提供的映射关系能够证实设计中描述的所有行为能够映射到调用它的安全功能接口;

e)根据模块描述安全功能;

f)提供安全功能子系统到模块间的映射关系;

g)描述所有安全功能实现模块,包括其目的及与其它模块间的相互作用;

h)描述所有实现模块的安全功能要求相关接口、其它接口的返回值、与其它模块间的相互作用

及调用的接口;

i)描述所有安全功能的支撑或相关模块,包括其目的及与其它模块间的相互作用。

指导性文档

.1操作用户指南

开发者应提供明确和合理的操作用户指南,操作用户指南与为评估而提供的其他所有文档保持一

致,对每一种用户角色的描述应满足以下要求:

a)描述在安全处理环境中被控制的用户可访问的功能和特权,包含适当的警示信息;

b)描述如何以安全的方式使用产品提供的可用接口;

c)描述可用功能和接口,尤其是受用户控制的所有安全参数,适当时指明安全值;

d)明确说明与需要执行的用户可访问功能有关的每一种安全相关事件,包括改变安全功能所控制

实体的安全特性;

e)标识产品运行的所有可能状态(包括操作导致的失败或者操作性错误),以及它们与维持安全

运行之间的因果关系和联系;

f)充分实现安全目的所必须执行的安全策略。

.2准备程序

开发者应提供产品及其准备程序,准备程序描述应满足以下要求:

a)描述与开发者交付程序相一致的安全接收所交付产品必需的所有步骤;

b)描述安全安装产品及其运行环境必需的所有步骤。

生命周期支持

.1配置管理能力

开发者的配置管理能力应满足以下要求:

a)为产品的不同版本提供唯一的标识;

b)使用配置管理系统对组成产品的所有配置项进行维护,并唯一标识配置项;

c)提供配置管理文档,配置管理文档描述用于唯一标识配置项的方法;

15

GB/TXXXXX—XXXX

d)配置管理系统提供一种自动方式来支持产品的生成,通过该方式确保只能对产品的实现表示

进行已授权的改变;

e)配置管理文档包括一个配置管理计划,配置管理计划描述如何使用配置管理系统开发产品。

实施的配置管理与配置管理计划相一致;

f)配置管理计划描述用来接受修改过的或新建的作为产品组成部分的配置项的程序。

.2配置管理范围

开发者应提供产品配置项列表,并说明配置项的开发者。配置项列表应包含以下内容:

a)产品、安全保障要求的评估证据和产品的组成部分;

b)实现表示、安全缺陷报告及其解决状态。

.3交付程序

开发者应使用一定的交付程序交付产品,并将交付过程文档化。在给用户方交付产品的各版本时,

交付文档应描述为维护安全所必需的所有程序。

.4开发安全

开发者应提供开发安全文档。开发安全文档应描述在产品的开发环境中,为保护产品设计和实现

的保密性和完整性所必需的所有物理的、程序的、人员的和其他方面的安全措施。

.5生命周期定义

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

描述用于开发和维护产品的模型。

.6工具和技术

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

义和所有依赖于实现的选项的含义。

测试

.1测试覆盖

开发者应提供测试覆盖文档,测试覆盖描述应满足以下要求:

a)表明测试文档中所标识的测试与功能规范中所描述的产品的安全功能间的对应性;

b)表明上述对应性是完备的,并证实功能规范中的所有安全功能接口都进行了测试。

.2测试深度

开发者应提供测试深度的分析。测试深度分析描述应满足以下要求:

a)证实测试文档中的测试与产品设计中的安全功能子系统和实现模块之间的一致性;

b)证实产品设计中的所有安全功能子系统、实现模块都已经进行过测试。

.3功能测试

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

a)测试计划,标识要执行的测试,并描述执行每个测试的方案,这些方案包括对于其它测试结果

的任何顺序依赖性;

b)预期的测试结果,表明测试成功后的预期输出;

c)实际测试结果和预期的测试结果一致。

.4独立测试

16

GB/TXXXXX—XXXX

开发者应提供一组与其自测安全功能时使用的同等资源,以用于安全功能的抽样测试。

脆弱性评定

基于已标识的潜在脆弱性,产品能够抵抗具有增强型基本攻击潜力的攻击者的攻击。

5.4性能要求

5.4.1误报率

在已知漏洞的Web应用环境下,对产品的误报情况进行测试。产品判断错误的漏洞数量占所有发现

到的同类型漏洞总数的比例须低于20%。

5.4.2漏报率

在已知漏洞的Web应用环境下,对产品的漏报情况进行测试。产品未发现的漏洞数量占扫描范围内

实际同类型漏洞总数的比例须低于20%。

5.4.3URL发现率

在已知URL的Web应用环境下,对产品在扫描过程中发现的URL数目进行测试,URL发现比例应大于

90%。

6测试评价方法

6.1测试环境

Web应用安全检测系统安全功能及性能测试环境可参见图2所示。需按照.1、.2、

.1和.2的要求部署漏洞测试环境。

漏洞环境部署参考示例:针对网络爬虫设置了Web2.0、flash的解析障碍,提供用户登陆模块来测

试检测系统是否支持cookie录制,漏洞包含SQL错误注入、跨站脚本、CSRF、目录遍历、代码注入、命

令注入、SQL盲注、Cookie注入、表单绕过、弱口令、第三方软件、信息泄漏、Xpath注入、目录浏览、

脚本木马、敏感文件等。针对每种漏洞提供漏洞URL和参数以便统计误报率和漏报率。

图2安全功能与性能测试环境图

6.2基本级安全要求测试

6.2.1安全功能测试

17

GB/TXXXXX—XXXX

扫描能力

.1资源发现

资源发现的测试方法与预期结果如下:

a)测试方法:

1)配置产品扫描Javascript脚本的页面地址,查看扫描结果;

2)配置产品扫描包括页面文件的URL地址,查看扫描结果;

3)配置产品扫描内嵌URL的Flash地址,查看扫描结果。

b)预期结果:

1)产品能够解析和执行Javascript脚本,获取相应URL并以树型结构呈现;

2)产品能够获取页面文件内包括的URL并以树型结构呈现;

3)产品能够获取Flash中内嵌的URL并以树型结构呈现。

.2漏洞检测

漏洞检测的测试方法与预期结果如下:

a)测试方法:

1)配置产品扫描策略,执行对Web应用漏洞平台(部署SQL注入、cookie注入、XSS、CSRF、

目录遍历、信息泄露、认证方式脆弱性和文件包含等漏洞)的扫描任务;

2)查看扫描结果。

b)预期结果:

1)产品能够发现基于Get、Post方式提交的字符、数字、搜索等的SQL注入漏洞;

2)产品能够发现基于Cookie方式提交的字符、数字、搜索等的Cookie注入漏洞;

3)产品能够发现基于Get、Post方式的XSS漏洞;

4)产品能够发现基于CSRF漏洞;

5)产品能够发现目录遍历漏洞;

6)产品能够发现路径泄漏、文件备份、源代码泄漏、目录浏览和phpinfo等信息泄露;

7)产品能够发现常见的帐号、弱口令等认证方式脆弱漏洞;

8)产品能够发现文件包含漏洞。

.3升级能力

升级能力的测试方法与预期结果如下:

a)测试方法:

检查产品是否具备漏洞特征库的更新能力;

b)预期结果:

产品支持漏洞特征库的更新功能。

.4支持SSL应用

支持SSL应用的测试方法与预期结果如下:

a)测试方法:

1)配置产品扫描基于HTTPS协议的Web应用系统;

2)查看扫描结果。

b)预期结果:

产品支持扫描基于HTTPS协议的Web应用系统。

.5对目标系统的影响

对目标系统的影响的测试方法与预期结果如下:

a)测试方法:

18

GB/TXXXXX—XXXX

1)配置产品对Web应用系统进行扫描;

2)检查产品在扫描过程中,是否对Web应用系统和正常访问造成明显的性能影响。

b)预期结果:

产品在扫描过程中未对Web应用系统和正常访问造成明显的性能影响。

扫描配置管理

.1向导功能

向导功能的测试方法与预期结果如下:

a)测试方法:

检查产品在配置过程中是否提供了向导功能。

b)预期结果:

产品在配置过程中提供了向导功能。

.2扫描范围

扫描范围的测试方法与预期结果如下:

a)测试方法:

1)配置扫描策略,分别制定扫描的URL范围,包括指定域名和URL,查看扫描结果;

2)配置扫描的深度,查看扫描结果;

3)配置不扫描的URL(例如登出、删除等页面),查看扫描结果。

b)预期结果:

1)产品能够根据指定域名和URL进行扫描,且扫描结果未超出定义的范围;

2)产品能够配置扫描的深度,且扫描结果未超出定义的深度范围;

3)产品能够配置不扫描的URL,且扫描结果未包括设定的URL地址。

.3登录扫描

登录扫描的测试方法与预期结果如下:

a)测试方法:

配置登录扫描的策略,查看扫描结果。

b)预期结果:

产品支持基于用户的登录信息(如基于Cookie、Session、Token、录制的登录信息等一种或多

种方式)对Web应用进行扫描,并扫描结果包括登录后的页面。

.4策略选择

策略选择的测试方法与预期结果如下:

a)测试方法:

1)根据漏洞类型、类别配置产品的扫描策略,查看扫描结果;

2)根据漏洞危害程度配置产品的扫描策略,查看扫描结果。

b)预期结果:

1)产品能够根据漏洞类型对Web应用系统进行扫描,且扫描结果未超出定义的范围;

2)产品能够根据漏洞危害程度对Web应用系统进行扫描,且扫描结果未超出定义的范围。

.5扫描速度

扫描速度的测试方法与预期结果如下:

a)测试方法:

检查产品是否能够根据HTTP请求速度、扫描线程或进程数目等调节扫描速度。

b)预期结果:

产品能够根据HTTP请求速度、扫描线程或进程数目等调节扫描速度。

19

GB/TXXXXX—XXXX

.6任务定制

任务定制的测试方法与预期结果如下:

a)测试方法:

配置产品的批量扫描计划任务,查看扫描结果。

b)预期结果:

产品能够根据计划进行批量扫描,且能够自动生成扫描结果。

.7稳定性和容错性

稳定性和容错性的测试方法与预期结果如下:

a)测试方法:

1)在扫描过程中,检查产品是否出现失去响应或非正常退出的现象;

2)在扫描过程中,检查产品是否出现扫描进度停滞不前的现象;

3)在扫描过程中,检查是否能够随时停止正在执行的扫描任务;

4)在扫描过程中,检查产品是否支持断点续扫功能。

b)预期结果:

1)产品未出现失去响应或非正常退出的现象;

2)产品未出现扫描进度停滞不前的现象;

3)产品在扫描过程中能够随时停止扫描任务;

4)产品能够支持断点续扫功能。

扫描结果分析处理

.1结果验证

结果验证的测试方法与预期结果如下:

a)测试方法:

根据漏洞扫描结果,检查产品是否提供了参数验证XSS漏洞、SQL注入点、目录遍历、信息泄

漏和命令执行等安全漏洞。

b)预期结果:

产品提供了漏洞的验证参数,能够支持验证XSS漏洞、SQL注入点、目录遍历、信息泄漏和命

令执行等安全漏洞。

.2结果保存

结果保存的测试方法与预期结果如下:

a)测试方法:

检查产品的扫描结果是否非明文存储于掉电非易失性存储介质中。

b)预期结果:

产品的扫描结果非明文保存(如加密或存储于数据库)于掉电非易失性存储介质(如硬盘)

中。

.3统计分析

统计分析的测试方法与预期结果如下:

a)测试方法:

检查产品是否能够对扫描获取的原始数据进行整理并进行统计分析。

b)预期结果:

产品能够对扫描获取的原始数据进行整理、统计和分析。

.4报告生成

报告生成的测试方法与预期结果如下:

20

GB/TXXXXX—XXXX

a)测试方法:

1)生成并查看扫描报告,扫描报告中的漏洞信息是否包括URL、漏洞名称、漏洞描述等详细

信息;

2)扫描报告是否包括了漏洞的安全性建议。

b)预期结果:

1)产品扫描报告中的漏洞信息包括了URL、漏洞名称、漏洞描述等准确信息;

2)产品扫描报告中包括了漏洞的安全性建议(漏洞的修复建议)。

.5报告输出

报告输出的测试方法与预期结果如下:

a)测试方法:

1)查看扫描报告的导出格式;

2)查看扫描报告的内容,是否包括文字、图表等形式的统计结果。

b)预期结果:

3)产品的扫描报告支持常用文档格式(如Doc、Excel或Pdf等);

4)产品的扫描报告包括文字、图表等形式的统计结果。

标识与鉴别

.1用户标识

.1.1属性定义

属性定义的测试方法与预期结果如下:

a)测试方法:

检查产品是否能够创建用户,并为其赋予标识、鉴别信息、隶属组、权限等安全属性。

b)预期结果:

产品能够为创建的用户配置标识、鉴别信息、隶属组、权限等安全属性。

.1.2属性初始化

属性初始化的测试方法与预期结果如下:

a)测试方法:

检查产品是否能够对创建的每个用户的属性进行初始化。

b)预期结果:

产品为创建的每个用户的属性提供初始化的能力。

.1.3唯一性标识

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

a)测试方法:

检查产品是否不允许命名同一标识的用户,且在日志中将关于该用户的事件与标识相关联。

b)预期结果:

产品不允许创建同名用户,且将关于该用户的事件与标识相关联。

.2身份鉴别

.2.1用户鉴别

21

GB/TXXXXX—XXXX

用户鉴别的测试方法与预期结果如下:

a)测试方法:

1)通过所有管理接口尝试登录产品,是否均需进行身份鉴别;

2)检查是否只有通过身份鉴别后,才能访问授权的安全功能模块;

3)当正常或非正常(强行断电)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论