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

OWASP 软件保证成熟度模型 2.0

成熟度模式

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

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

安全部署

3
I-SD-A-1你们使用可重复的部署流程吗?成熟度实践
Implementation / 安全部署

效益 部署过程中有限的人为错误风险 最大限度减少安全问题 活动 定义所有阶段的部署流程,将其拆分为一组清晰的指令,供人员或自动化工具执行。部署过程定义应从头到端描述整个流程,以便每次都能一致遵循,从而产生相同的结果。定义集中存储,所有相关人员均可访问。不要存储或分发多个副本,其中一些可能会过时。将应用程序部署到生产环境时,可使用自动化流程,或由非开发人员手动执行。确保开发人员在应用程序部署时无需直接访问生产环境。审核所有部署工具,确保它们由供应商积极维护并及时更新安全补丁。加强每个工具的配置,使其符合供应商的指南和行业最佳实践。鉴于这些工具大多数需要访问生产环境,因此它们的安全性至关重要。确保工具本身及其遵循的工作流程的完整性,并根据最小权限原则配置对这些工具的访问规则。让有权访问生产环境的人员至少经过最低级别的培训或认证,以确保他们在这一方面的能力。优势 通过集成的安全工具实现高效的部署流程 活动 自动化部署流程,覆盖各个阶段,无需手动配置步骤,从而消除孤立的人为错误风险。确保并验证部署在各个阶段的一致性。在部署流程中集成自动化安全检查,例如:使用动态应用安全测试(DAST)和漏洞扫描工具。同时,在适当的情况下,验证已部署工件的完整性。将这些测试的结果集中记录,并采取必要的措施。确保在检测到任何缺陷时,相关人员能够自动收到通知。如果发现任何超过预定义关键程度的问题,应自动停止或回滚部署,或引入单独的人工审批流程,以便记录此决策,并包含例外的解释。对所有阶段的所有部署进行记录和审计。建立一个系统来记录每次部署,包括执行部署的人、部署的软件版本以及与部署相关的任何相关变量。确保部署到生产环境的工件完整性 采取措施 利用在构建时签名的二进制文件,并通过将其签名与受信任的证书进行核对,自动验证正在部署的软件的完整性。这可能包括内部开发和构建的二进制文件,以及第三方工件。如果无法验证工件的签名,包括签名无效或证书过期的工件,请不要部署。如果受信任的证书列表中包含第三方开发者,请定期检查,并使其符合组织对受信第三方供应商的整体治理要求。在自动化部署过程中,至少手动批准一次部署。只要在部署过程中人工检查明显比自动检查更准确,就选择人工检查。标准:您拥有足够的信息来执行部署流程 | 您的部署文档是最新的 | 您的部署文档可供相关利益相关者访问 | 您确保只有定义好的合格人员可以触发部署 | 您强化了部署过程中使用的工具

评估
评估状态:
评估备注:
I-SD-A-2部署流程是否已经自动化并采用安全检查?成熟度实践
Implementation / 安全部署

好处 在部署过程中将人为错误的风险降至最低,从而减少安全问题。 活动 在各个阶段定义部署流程,将其分解为一系列清晰的指令,由人工或自动化工具执行。部署流程的定义应描述整个端到端的过程,以便每次都能一致地遵循,产生相同的结果。定义集中存储,所有相关人员均可访问。不要存储或分发多个副本,其中一些可能会过时。将应用程序部署到生产环境时,可使用自动化流程,或由非开发人员手动执行。确保开发人员不需要直接访问生产环境来进行应用部署。审核所有部署工具,确保它们由供应商积极维护并且已更新安全补丁。强化每个工具的配置,使其符合供应商指南和行业最佳实践。鉴于这些工具大多数需要访问生产环境,因此它们的安全性至关重要。确保工具本身及其遵循的工作流程的完整性,并根据最小权限原则配置对这些工具的访问规则。让有权访问生产环境的人员至少经过最低级别的培训或认证,以确保他们在此方面的能力。优势 通过集成安全工具实现高效的部署流程 活动 自动化部署流程以覆盖各个阶段,从而无需手动配置步骤,并消除孤立的人为错误风险。确保并验证部署在所有阶段的一致性。在您的部署流程中集成自动化安全检查,例如。使用动态应用安全测试(DAST)和漏洞扫描工具。同时,在适当的情况下,验证已部署工件的完整性。将这些测试的结果集中记录,并采取必要的措施。确保在检测到任何缺陷时,相关人员能够自动收到通知。如果发现任何超过预定义关键程度的问题,应自动停止或回滚部署,或引入单独的人工审批流程,以便记录此决策,并包含例外的解释。对所有阶段的所有部署进行记录和审计。建立一个系统来记录每次部署,包括执行部署的人、部署的软件版本以及与部署相关的任何重要变量。确保部署到生产环境的工件完整性 采取措施 利用在构建时签名的二进制文件,并通过将其签名与受信任的证书进行核对,自动验证正在部署的软件的完整性。这可能包括内部开发和构建的二进制文件,以及第三方工件。如果无法验证工件的签名,包括签名无效或已过期的证书,请不要部署工件。如果受信任证书列表中包含第三方开发者,请定期检查,并使其符合组织对受信第三方供应商的整体治理要求。在自动化部署过程中,至少手动批准一次部署。每当人工检查在部署过程中显著比自动化检查更准确时,请选择此选项。标准:部署流程在所有阶段都是自动化的 | 部署包括自动化安全测试程序 | 你会将发现的漏洞通知相关人员 | 你有过去部署的日志,并且这些日志保存了一定时间

评估
评估状态:
评估备注:
I-SD-A-3您是否持续验证已部署工件的完整性?成熟度实践
Implementation / 安全部署

好处 在部署过程中将人为错误的风险降至最低,从而减少安全问题。 活动 在各个阶段定义部署流程,将其分解为一系列清晰的指令,由人工或自动化工具执行。部署流程的定义应描述整个端到端的过程,以便每次都能一致地遵循,产生相同的结果。定义集中存储,所有相关人员均可访问。不要存储或分发多个副本,其中一些可能会过时。将应用程序部署到生产环境时,可使用自动化流程,或由非开发人员手动执行。确保开发人员在应用程序部署时无需直接访问生产环境。审核所有部署工具,确保它们由供应商积极维护并且已更新安全补丁。强化每个工具的配置,使其符合供应商指南和行业最佳实践。鉴于这些工具大多数需要访问生产环境,因此它们的安全性至关重要。确保工具本身及其遵循的工作流程的完整性,并根据最小权限原则配置对这些工具的访问规则。让有权访问生产环境的人员至少经过最低级别的培训或认证,以确保他们在这一方面的能力。优势 通过集成安全工具实现高效的部署流程 活动 自动化部署流程以覆盖各个阶段,从而无需手动配置步骤,并消除孤立的人为错误风险。确保并验证部署在所有阶段的一致性。在您的部署流程中集成自动化安全检查,例如。使用动态应用安全测试(DAST)和漏洞扫描工具。同时,在适当的情况下,验证已部署工件的完整性。将这些测试的结果集中记录,并采取必要的措施。确保在检测到任何缺陷时,相关人员能够自动收到通知。如果发现任何超过预定义关键程度的问题,应自动停止或回滚部署,或引入单独的人工审批流程,以便记录此决策,并包含例外的解释。对所有阶段的所有部署进行记录和审计。建立一个系统来记录每次部署,包括执行部署的人、部署的软件版本以及与部署相关的任何相关变量。确保部署到生产环境的工件完整性 采取措施 利用在构建时签名的二进制文件,并通过将其签名与受信任的证书进行核对,自动验证正在部署的软件的完整性。这可能包括内部开发和构建的二进制文件,以及第三方工件。如果无法验证工件的签名,包括签名无效或证书过期的工件,请不要部署。如果受信任的证书列表中包含第三方开发者,请定期检查,并使其符合组织对受信第三方供应商的整体治理要求。在自动化部署过程中,至少手动批准一次部署。每当在部署过程中人工检查的准确性明显高于自动化检查时,选择人工检查。标准:如果检测到完整性漏洞,你会阻止或回滚部署 | 验证是针对构建时生成的签名进行的 | 如果无法检查签名(例如外部构建的软件),你需引入补偿措施

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