查看原文
其他

DevOps + Security = DevSecOps?

DevOps是在应用程序开发中不断被应用的典型范例,但它无法解决困扰当今市场的安全问题。然而,DevOps的集成能力使之可以在DevOps流程中轻松融入更有效的安全能力,这为DevOps成为DevSecOps铺平了道路

1

简要定义DevOps和DevSecOps

DevOps是一种能够整合开发和运营的开发方式。通常情况下,“开发”是负责构思、设计和编码产品的部门,而“运营”则是负责监督生产、分销和维护产品的部门。在大多数情况下,这些部门是独立的,运营也仅仅只是依赖于开发人员提供的文档,来为产品的使用和运行提供指导建议。与此同时,在开发新功能之前,开发因为需要等待代码测试或功能测试才能进入生产阶段,因此也会受到一定限制。

有了面向DevOps团队,开发和运营两个部门都能更直接地参与产品部署的每个阶段。DevOps的关键点是“自动化”和“持续监控”。通常情况下,DevOps会在产品生产周期中找到尽可能自动化的方法,同时创建新的基础架构来监视和记录对产品以及工作流的任何更改。

DevSecOps通过将安全融入到工作流中来增加不同部门协作。DevSecOps从DevOps中继承了对“自动化”和“连续监控”的重视,并且针对代码的功能和安全性进行自动化测试。在产品全生命周期中,每个阶段都对代码存在错误或潜在的风险行为进行分析和检测,并且确保对产品的任何更改都是在安全情况下进行的。DevSecOps将强大的自适应安全能力集成到此流程中。

2

实施DevSecOps

上文DevSecOps的概念在一定程度上解释了其含义。但是截至目前,尚未有公认的标准来定义DevSecOps的确切含义。整体地将开发、运营和安全集成在一起是一个好方法,但是如何将一个想法变成实践呢?Gartner建议通过下面步骤来建立一个全面的DevSecOps意识,以更好促进安全设计和产品实施:

重组设计和开发流程以融入安全能力

DevOps聚焦以自动化方式,高效、可扩展地部署任何新的代码或新功能。这些相同的原则同样适用于安全特性。通过执行这些原则,使安全从概念上成为产品设计的核心部分。

根据产品部署和运营实践,将安全融入到流程中

正如DevOps自动化在代码创建和开发阶段作用一样,它也适用于服务维护和代码的实际应用阶段。应该将安全意识融入到这个过程中,以便在发现任何缺陷时及时推出安全补丁。

将内部和外部访问控制集成到所有产品中

应该制定适当的策略,以确保团队成员只能访问他们需要的系统功能。此外,还应该有安全措施来监控异常登录行为,例如不熟悉的IP地址或不寻常的用户行为。可以将MFA、CASBs或行为生物识别等技术整合到产品及其开发环境中。

采取主动防御策略

随着越来越多业务开始上云,安全不再是简单被动响应。强大的安全策略应该从零信任开始,并检查所有应用系统以应对攻击。在设计应用程序时,尽量减少局部风险带来损失。

在政策层面将强大的数据保护融入产品设计

组织应该保持对所有用户数据的可见性。静态或传输中的数据需要进行适当的加密。团队应该持续监控应用程序存储或使用了哪些数据,并且有一个用于安全存储和销毁未使用数据的整体框架。

以同样标准处理安全事件和普通服务性事件

通常情况下,组织会在数小时内对产品的服务中断做出响应,而未知的安全漏洞可能会持续数周无法解决。DevSecOps团队对代码引发事件和安全相关的事件应该一视同仁,两者都应该被视为产品完整性的关键部分。

为什么需要DevSecOps

任何规模的组织都需要意识到安全领域的变化,特别是随着基于云的产品的增长和对服务提供商的日益重视。据有关报告称100%的Web应用程序在某种程度上是脆弱的。大部分情况下,开发和运营是第一位的,安全是在事后添加的。在最坏的情况下,功能和生产首先被考虑,实施和发布只在完成时才被考虑,安全性则是事后考虑的问题。

如今,许多公司应用程序面临最大的安全问题,就是应用程序缺乏整体安全策略。DevSecOps还处于萌芽阶段,大多数公司甚至连应用程序清单都没有,更不用说评估风险以及合规要求。通常情况下,很多企业只是尝试通过漏洞扫描器、RASP、IAST、NG WAFs和漏洞奖励,但是几乎全部失败了。

然而,根据Forrester的数据,在2017年第一季度,90%的组织要么已经实现了DevOps,要么计划在12个月内实现。这意味着实现DevSecOps的障碍比以往任何时候都要低,在大多数情况下,集成的自动化工作流已经就位。

3

安全设计

DevSecOps的概念与“安全设计(Security by Design – SBD)”的原则有交集。作为软件开发的一个原则,简单来说SBD指的是将安全作为设计的一个组成部分而创建的产品。SBD涵盖了安全的数据管理、访问控制和损害最小化。

考虑到越来越严格的安全规范,DevSecOps的任何有效实施,都必须在设计上优先满足安全性前提下才能创建其产品和服务。GDPR的第25条规定,任何数据管理人员都必须实施技术和组织措施来保护用户数据,并确保只处理或存储必要的、相关的个人数据。

可以集成青藤的服务

实施DevSecOps的一个潜在障碍是其可行性。DevSecOps需要在产品整个生命周期中每个阶段投入时间和资源用于保护其安全性。虽然这个过程是昂贵的,但绝不能因此而忽略对安全的重视——否则将失去DevSecOps的作用,并危及整个过程。

青藤基于自适应安全理念的产品与服务可以为此提供一个解决方案,可以将安全能力集成到DevSecOps工作流中。青藤Agent通过一条命令即可实现一键部署,建立由内而外的扫描方式,极大降低误报率和提升扫描覆盖度。通过持续监控分析,全方位检测系统存在的脆弱性,为企业提供无死角的风险状况视图,帮助安全管理人员先于攻击者发现安全问题,并通过精确到命令行的处理建议协助用户进行及时修补。


-The End-

相关阅读:

将安全融入DevSecOps工具链中

DevOps和DevSecOps是朝着相反的方向前进吗?

青藤云安全以服务器安全为核心,采用自适应安全架构,将预测、防御、监控和响应能力融为一体,构建基于主机端的安全态势感知平台,为用户提供持续的安全监控、分析和快速响应能力,帮助用户在公有云、私有云、混合云、物理机、虚拟机等多样化的业务环境下,实现安全的统一策略管理,有效预测风险,精准感知威胁,提升响应效率,全方位保护企业数字资产的安全与业务的高效开展。


    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存