CISO助手
完成度
0%(0/48)
评估报告
OWAS

OWASP 软件保证成熟度模型 2.0

成熟度模式

SAMM 是一个规范性模型,是一个开放的框架,易于理解、定义明确且可衡量。它帮助组织制定和实施软件安全策略。

版本: 2.0覆盖状态: 完整覆盖 (96/96)控制项/量表/总计: 48/48/96当前展示: 3 / 485 个分类

需求驱动测试

3
V-RT-A-1您是否测试应用程序以确保标准安全控制的正确功能?成熟度实践
Verification / 需求驱动测试

益处 验证标准安全控制的有效性 活动 进行安全测试,以验证标准软件安全控制是否按预期运行。总体而言,这意味着测试数据以及服务的机密性、完整性和可用性控制的正确功能。安全测试至少包括对身份验证、访问控制、输入验证、数据编码与转义以及加密控制的测试。测试目标是验证安全控制是否正确实施。安全测试验证相关的软件安全控制。每次应用程序更改其对控制的使用时,都应手动或使用工具执行控制验证安全测试。可以使用功能开关和A/B测试等技术,在功能经过充分验证后,逐步向更广泛的用户群体开放。对所有属于SAMM计划的软件,软件控制验证是强制性的。将安全需求整合到测试场景中的益处 活动 根据安全需求,识别并实施一组安全测试用例,以检查软件的正确功能。要有一个成功的测试计划,您必须了解由安全需求指定的测试目标。根据作为“安全需求”SAMM安全实践一部分创建的安全需求,为范围内的应用程序推导安全测试用例。为了通过安全测试验证安全需求,安全需求是以功能为导向的,并突出了预期的功能(即‘是什么’)以及隐含的实现方式(即‘如何实现’)。这些需求也被称为“正向需求”,因为它们说明了可以通过安全测试进行验证的预期功能。正向需求的示例包括“应用程序在六次登录失败后会锁定用户”或“密码至少需要六个字母数字字符”。对正向需求的验证包括确认预期功能。你可以通过重现测试条件并根据预定义输入运行测试来进行验证。将结果显示为失败或通过状态。通常,最有效的方法是利用项目团队的时间来构建特定于应用程序的测试用例,并使用公开的资源或购买的知识库来选择适用于安全性的通用测试用例。相关的开发、安全和质量保证人员会评审候选测试用例的适用性、有效性和可行性。在功能的需求和/或设计阶段推导测试用例。测试安全需求是软件功能测试的一部分。好处 及时且可靠地检测安全要求的违规行为 活动 为所有已识别(并修复)的漏洞编写和自动化回归测试,以确保它们成为测试工具,防止在后续发布中引入类似问题。安全单元测试应动态验证(即在运行时) 确保组件按预期工作,并应验证代码更改是否正确实施。开发人员的一个好做法是将安全测试用例构建为通用安全测试套件,并将其作为现有单元测试框架的一部分。通用的安全测试套件可能包括安全测试用例,以验证安全控制的正面和负面需求,例如身份、认证和访问控制、输入验证和编码、用户和会话管理、错误和异常处理、加密以及审计和日志记录。尽早验证安全测试的正确执行。如果可行,例如,可以将通过安全测试作为合并要求的一部分,在允许新代码进入主代码库之前进行考虑。或者,可以将其通过作为验证构建的一个要求。对于安全功能测试,应在软件组件级别使用单元测试来测试安全控制的功能,例如函数、方法或类。例如,一个测试用例可以通过断言组件的预期功能来检查输入和输出的验证(例如,变量清理)以及变量的边界检查。标准:安全测试至少应验证身份验证、访问控制、输入验证、数据编码与转义以及加密控制的实现情况 | 每当应用程序更改其控制使用方式时,都应执行安全测试

评估
评估状态:
评估备注:
V-RT-A-2你是否会持续编写和执行测试脚本以验证安全需求的功能性?成熟度实践
Verification / 需求驱动测试

益处 验证标准安全控制的有效性 活动 进行安全测试,以验证标准软件安全控制是否按预期运行。总体而言,这意味着测试数据以及服务的机密性、完整性和可用性控制的正确功能。安全测试至少包括对身份验证、访问控制、输入验证、数据编码与转义以及加密控制的测试。测试目标是验证安全控制是否正确实施。安全测试验证相关的软件安全控制。每次应用程序更改其对控制的使用时,都应手动或使用工具执行控制验证安全测试。可以使用功能开关和A/B测试等技术,在功能经过充分验证后,逐步向更广泛的用户群体开放。对所有属于SAMM计划的软件,软件控制验证是强制性的。将安全需求整合到测试场景中的益处 活动 根据安全需求,识别并实施一组安全测试用例,以检查软件的正确功能。要有一个成功的测试计划,您必须了解由安全需求指定的测试目标。根据作为“安全需求”SAMM安全实践一部分创建的安全需求,为范围内的应用程序推导安全测试用例。为了通过安全测试验证安全需求,安全需求是以功能为导向的,并突出了预期的功能(即‘是什么’)以及隐含的实现方式(即‘如何实现’)。这些需求也被称为“正向需求”,因为它们说明了可以通过安全测试进行验证的预期功能。正向需求的示例包括“应用程序在六次登录失败后会锁定用户”或“密码至少需要六个字母数字字符”。对正向需求的验证包括确认预期功能。你可以通过重现测试条件并根据预定义输入运行测试来进行验证。将结果显示为失败或通过状态。通常,最有效的方法是利用项目团队的时间来构建特定于应用程序的测试用例,并使用公开的资源或购买的知识库来选择适用于安全性的通用测试用例。相关的开发、安全和质量保证人员会评审候选测试用例的适用性、有效性和可行性。在功能的需求和/或设计阶段推导测试用例。测试安全需求是软件功能测试的一部分。好处 及时且可靠地检测安全要求的违规行为 活动 为所有已识别(并修复)的漏洞编写和自动化回归测试,以确保它们成为测试工具,防止在后续发布中引入类似问题。安全单元测试应动态验证(即在运行时) 确保组件按预期工作,并应验证代码更改是否正确实施。开发人员的一个好做法是将安全测试用例构建为通用安全测试套件,并将其作为现有单元测试框架的一部分。通用的安全测试套件可能包括安全测试用例,以验证安全控制的正面和负面需求,例如身份、认证和访问控制、输入验证和编码、用户和会话管理、错误和异常处理、加密以及审计和日志记录。尽早验证安全测试的正确执行。如果可行,例如,可以将通过安全测试作为合并要求的一部分,在允许新代码进入主代码库之前进行考虑。或者,可以将其通过作为验证构建的一个要求。对于安全功能测试,应在软件组件级别使用单元测试来测试安全控制的功能,例如函数、方法或类。例如,一个测试用例可以通过断言组件的预期功能来检查输入和输出的验证(例如,变量的清理)以及变量的边界检查。标准:您根据每个应用程序定制测试并断言预期的安全功能 | 您将测试结果记录为通过或失败 | 测试使用标准化的框架或领域特定语言(DSL)

评估
评估状态:
评估备注:
V-RT-A-3您会自动测试应用程序是否存在安全回归吗?成熟度实践
Verification / 需求驱动测试

益处 验证标准安全控制的有效性 活动 进行安全测试,以验证标准软件安全控制是否按预期运行。总体而言,这意味着测试数据以及服务的机密性、完整性和可用性控制的正确功能。安全测试至少包括对身份验证、访问控制、输入验证、数据编码与转义以及加密控制的测试。测试目标是验证安全控制是否正确实施。安全测试验证相关的软件安全控制。每次应用程序更改其对控制的使用时,都应手动或使用工具执行控制验证安全测试。可以使用功能开关和A/B测试等技术,在功能经过充分验证后,逐步向更广泛的用户群体开放。对所有属于SAMM计划的软件,软件控制验证是强制性的。将安全需求整合到测试场景中的益处 活动 根据安全需求,识别并实施一组安全测试用例,以检查软件的正确功能。要有一个成功的测试计划,您必须了解由安全需求指定的测试目标。根据作为“安全需求”SAMM安全实践一部分创建的安全需求,为范围内的应用程序推导安全测试用例。为了通过安全测试验证安全需求,安全需求是以功能为导向的,并突出了预期的功能(即‘是什么’)以及隐含的实现方式(即‘如何实现’)。这些需求也被称为“正向需求”,因为它们说明了可以通过安全测试进行验证的预期功能。正向需求的示例包括“应用在连续六次登录失败后会锁定用户”或“密码至少需要六个字母数字字符”。对正向需求的验证包括确认预期功能。你可以通过重现测试条件并根据预定义的输入执行测试来进行。将结果显示为失败或通过状态。通常,最有效的方法是利用项目团队的时间来构建特定于应用程序的测试用例,并使用公开的资源或购买的知识库来选择适用的一般安全测试用例。相关的开发、安全和质量保证人员会评审候选测试用例的适用性、有效性和可行性。在功能的需求和/或设计阶段推导测试用例。测试安全需求是软件功能测试的一部分。好处 及时且可靠地检测安全要求的违规行为 活动 为所有已识别(并修复)的漏洞编写和自动化回归测试,以确保它们成为测试工具,防止在后续发布中引入类似问题。安全单元测试应动态验证(即在运行时) 确保组件按预期工作,并应验证代码更改是否正确实施。开发人员的一个好做法是将安全测试用例构建为通用安全测试套件,并将其作为现有单元测试框架的一部分。通用的安全测试套件可能包括安全测试用例,以验证安全控制的正面和负面需求,例如身份、认证和访问控制、输入验证和编码、用户和会话管理、错误和异常处理、加密以及审计和日志记录。尽早验证安全测试的正确执行。如果可行,例如,可以将通过安全测试作为合并要求的一部分,在允许新代码进入主代码库之前进行考虑。或者,可以将其通过作为验证构建的一个要求。对于安全功能测试,应在软件组件级别使用单元测试来测试安全控制的功能,例如函数、方法或类。例如,一个测试用例可以通过断言组件的预期功能来检查输入和输出验证(例如,变量清理)以及变量的边界检查。标准:你始终为所有已识别的错误编写测试(可能超过预定义的严重性阈值)| 你将安全测试收集到现有单元测试框架的一部分测试套件中

评估
评估状态:
评估备注: