常见的 DevSecOps 错误及其解决方法

核心要点

  • DevSecOps 是一种文化转变,重视每个人对安全的责任。
  • 仅进行结构性变化而不著重文化转变,无法成功实施 DevSecOps。
  • 准确的自动化是整合安全性测试的前提。
  • 建立 DevSecOps 的过程必须持续改进。
  • DevSecOps 的目的是提升软体安全性,而非直接驱动收入。

在众多 DevSecOps 的讨论和实施指南中,实际能够看到明显成效的组织却非常稀少。为了解这一问题,我们询问了 Invicti 的应用安全专家 SuhaAkyuz 和 Dan Murphy,并整理了组织在尝试 DevSecOps 时常犯的五种错误。

错误一:忘记 DevSecOps 是一种工作文化
DevSecOps 首先是关于改变企业文化,将安全纳入开发过程。虽然拥有正确的工具和框架对成功至关重要,但首要目标是使安全成为软体品质的一部分。转向
DevSecOps 意味著每个人的工作方式和协作方式都将发生重大改变,那些未能进行这些改变的公司,很可能会失败。

Suha Akyuz(Invicti 的资深应用安全经理)表示:“在 DevSecOps 中,每个人都对高品质产品负有责任。一些公司将
DevSecOps 视为负担,认为这意味著需要额外增加许多技术、工具和框架,而没有统一的标准或最佳实践可遵循。其实,建立 DevSecOps
的最佳实践对每个组织来说都是独特而不同的。因此,它需要成为一种更广泛文化的一部分,开发、安保、运维,甚至其他部门都需共同合作,达成最高质量的软体,包括安全性。”

错误二:尝试将 DevSecOps 集中化
如果组织未能认识到文化变革的必要性,可能仅通过结构性改变来实施 DevSecOps。Murphy
指出:“通常存在一种误解,即试图通过分配一个团队或部门来‘解决’ DevSecOps 的问题。然而,最成功的 DevSecOps
实施认识到它更像是一种文化和心态。开发、安全和运维被整合成一个一致的角色,最好是在团队层面进行整合。”

简单地通过管理命令实施 DevSecOps,而不改变团队内部的深层次问题,最终只会以失败告终或取得浅尝辄止的结果。例如,Murphy
说,未能建立一个,以培训和赋予每个开发团队的成员审核敏感代码和实施安全最佳实践的能力。“DevSecOps
经常流于形式,开发人员仍然会将编码视为部署、维护和安全是其他人的问题。”

错误三:在没有准确自动化的情况下构建 DevSecOps
即使拥有正确的文化和人才,将安全测试和修正添加到高度自动化的 DevOps
流程中,只有在能够的情况下才能成功。“如果你试图将安全纳入过程而不投资于自动化,团队可能会在发布前手动运行安全扫描,”Murphy
解释道。“这必然会造成修复或发布之间的紧张,导致公司明知会释放 vulnerable 代码却为了追求公开的截止日期而妥协。”

除了短期

Leave a Reply

Your email address will not be published. Required fields are marked *