什么是 DevOps 安全?
- IAM 词汇表
- 什么是 DevOps 安全?
DevOps 安全,亦称为 DevSecOps,是开发、运营和安全这三个词的合称。DevOps 安全和 DevSecOps 的理念都是尽早将安全性集成至软件开发生命周期 (SDLC) 中,最好是在还没开始编写代码之前。
DevOps 和 DevSecOps 之间有什么区别?
DevSecOps 是 DevOps 理念的扩展或增强。因此,在讨论 DevOps 和 DevSecOps 的区别之前,了解它们的共同点非常重要。
DevOps 和 DevSecOps 都是指软件开发的理念或方法,而不是特定的工具或工具集。正如安装问题跟踪系统并不意味着您正在“执行 DevOps”一样,安装静态或动态应用安全工具也不意味着您正在“执行 DevSecOps”。
DevOps 和 DevSecOps 都强调软件应用的协作、自动化和主动监视。实时捕获应用数据的能力均为这两种理念的关键,因为“执行”DevOps 和 DevSecOps 要求持续捕获和分析此数据,以发现提高生产力和推动改进的方法。
这两种理念亦均依赖于协作,特别是消除组织孤岛。DevOps 试图打破软件开发和 IT 运营之间的孤岛,其观点是,当开发人员和 IT 人员协同工作时,软件的发布速度更快,错误更少。DevSecOps 则更进一步,力求让安全运营部门占有一席之地。DevSecOps 背后的观点是,当开发人员、IT 人员和安全人员协同工作时,软件的发布速度更快、质量更高、更安全。
正确“执行” DevSecOps 意味着应用在交付生产之前得到适当的风险保护。这种做法通常被称为“左移”,因为它是指在项目时间表开始时(还没编写代码之前)集成安全性,而不是在后面阶段解决这个问题。在 DevSecOps 环境中,开发人员在编写代码时需考虑安全性,这是 DevOps 本身无法解决的问题。
通过在 SDLC 中引入代码分析、威胁调查和漏洞评估等做法,并进行持续的测试和评价,DevSecOps 可确保代码库从一开始就安全。除了提高应用安全性外,DevSecOps 还增强了生产力。与在软件生命周期的后期重构代码相比,及早发现和修复安全问题的时间和成本要少得多。
DevOps 安全挑战
尽管 DevSecOps 有种种好处,但组织可能难以妥当地实施它。让我们来看一下 DevOps 安全面临的一些最常见挑战。
过于重视工具,过于轻视流程。 正如前文所述,DevOps 和 DevSecOps 都属于理念,而不是使用特定软件的强制要求。
来自开发人员的文化阻力,或者“但是我们一直都是这样做的”。 开发人员可能不习惯安全编程实践。传统上,开发人员根据可行性进行编程,安全漏洞是在后来被发现并修补。开发人员可能会担心,必须“担心”安全性将拖慢生产速度。
来自安全团队的文化阻力。 开发人员并不是唯一可能会坚持“一直以来的做法” 的人。 DevOps 团队专注于速度,在数小时或数天内即可修改和推出代码,如此之快的速度可能会让安全团队产生疑虑。不同之处在于,DevOps 团队会自动执行尽可能多的流程,而安全团队通常则是手动完成大量工作。
机密管理不完善。 DevOps 环境高度复杂,而且相互之间紧密关联。对于 DevOps 商店来说,拥有数百个安全组和数千个服务器实例并不罕见,所有这些都使用了特权帐户凭据、SSH 密钥、API 令牌、数据库密码等机密,并都分散在整个组织的数据环境中,此情况被称为“机密扩散”。 一个简单的错误配置可能会导致其中一个机密被泄露,从而使组织遭受灾难性的网络攻击。
特权访问管理不完善。 为了加快生产速度,许多 DevOps 团队允许其成员几乎无限制地访问 root 和 admin 等特权帐户。更糟糕的是,多人可能共享同一组证书,这是一个很大的安全禁忌,也是合规审核期间的一个主要问题,因为组织需在其中提供清晰的审核轨迹。此外,编排、配置管理和其他 DevOps 工具也可能具有非常高的访问级别,远超工具运行所需。
DevOps 安全最佳实践
以下是在您的组织中实施 DevOps 安全的一些最佳实践。
- 请记住,像 DevOps 一样,DevSecOps 是一个观念模式,而不是一套工具。与其购买“DevSecOps 工具”并搞清楚要在哪里使用它们,不如专注于您的最终目标,制定实现目标的流程,然后购买支持这些流程和目标的工具。
- 使用适当的变更管理方法来解决开发人员和安全人员的文化阻力。向这两个团队展示 DevSecOps 将为他们节省时间,并可提高生产力,而不是降低。为开发人员建立清晰的代码编写标准,并尽可能实现安全流程和工具的自动化。
- 使用 Keeper Secrets Manager 之类的工具对抗机密扩散。
- 通过基于角色的访问控制 (RBAC)、最低特权访问和即时预配等措施,控制过多的特权和访问级别。
- 通过会话记录和审核防范滥用特权访问。