什么是DevSecOps?

2023-08-0711:44:14软件工程与架构Comments2,783 views字数 2348阅读模式
DevOps 和敏捷方法论改变了软件的开发、构建和迭代方式。从本质上讲,DevOps 使开发人员和 IT 运维团队能够以创纪录的速度开发、修复错误、发布功能并交付构建。因此,软件开发团队变得更加高效,团队从每周几次的构建到现在可以在相同时间内达到了上百次。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

然而,交付速度的提高也会遇到不少关键挑战,包括每个构建都需要进行测试、检查漏洞,然后进行修复。在大多数情况下,当 QA 和安全专家完成构建检查时,已经有几个存在漏洞以及安全问题的新构建在排队等待。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

这一挑战导致了 DevSecOps 管道的开发,因为需要消除应用程序在投入生产之前进行安全和 QA 检查所产生的瓶颈。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

01文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

什么是 DevSecOps文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html
DevSecOps 的简化定义将其描述为一种实践,包括软件开发过程中每个步骤的安全决策和操作,以确保及早发现错误、缺陷和漏洞。由于 DevSecOps 的处理时间较少、易于修复且实施成本相当低,因此其重要性一直在稳步增长。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

DevSecOps 的另一个关键方面是它可以培训更好的专业人员,因为安全责任不再由小型安全团队和 QA 部门承担。相反,现在 IT运维专业人员和开发人员不仅直接参与,而且还负责最佳安全实践。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

这意味着安全团队致力于教育开发人员并充当顾问,而不是成为软件开发过程中的瓶颈。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

‍DevSecOps 与 DevOps的区别:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

DevOps 是一种实践,允许最初孤立的角色(例如开发、运维、质量工程和安全)进行协调和协作,以生成更好、更可靠的应用程序和软件解决方案。相比之下,DevSecOps 指的是 DevOps 协作框架中安全基础的端到端集成。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

02文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

DevSecOps的工具文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

自动化是 DevSecOps 开发、源代码控制、规划、代码审查、构建、测试和审计方法的核心。首先,在产品到达消费者手中之前,所有这些阶段都必须有一层自动安全检查。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

考虑到这一点,以下是应用此方法的工程师每天使用的一些顶级 DevSecOps 工具,用以简化 CI 管道的安全性和合规性。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

一. Trivy - 容器漏洞扫描文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

什么是DevSecOps?文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

使用云计算时,您必然会使用容器、应用程序映像和 Kubernetes。Trivy 是一个开源项目,旨在简化应用程序镜像扫描,使用可信数据库来验证任何已知漏洞。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

作为 DevSecOps 工具,Trivy快速、灵活,并且可以在几秒钟内与漏洞数据库进行交叉引用(快速扫描)。此外,它支持许多操作系统包,可以扫描存储库、文件系统,并且很容易在 CI 中实现。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

例如:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

  • GitLabCI
  • Jenkins
  • GitHub Actions
  • CircleCI

二. Gerrit -代码审查文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

什么是DevSecOps?文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

Gerrit 是另一个直接在团队工作流程中工作的 DevSecOps 工具,允许对每次合并和提交进行审查或测试是否存在漏洞。Gerrit通过突出显示问题并允许对特定代码部分进行注释和评论,从而帮助团队更好地沟通。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

您还可以构建自己的插件或享受社区为增强 Gerrit 代码审计而制作的许多插件。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

社区每天不断更新和创建的一些插件包括:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

  • 用于管理代码中的注释的插件。
  • 网络钩子。
  • Gerrit 分析数据。
  • 批准后自动提交更改。
三. OWASP Dependency-Check-构建组合分析文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

什么是DevSecOps?文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

开发人员通常会使用其他人发布的依赖包来构建他们的应用程序,但有时它们可能包含来自危险源的错误代码。通常,使用上述依赖项的开发人员不会意识到这些问题,这会使你的应用程序在使用时遭受潜在的攻击。OWASP 扫描有关此类依赖项的所有报告,指出缺陷和漏洞,并建议可能的修复方案。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html
四. Arachni - 测试文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

什么是DevSecOps?文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

DevSecOps 工具在开发过程的测试阶段旨在将应用程序置于实时工作流程中,测试身份验证、API 端点、SQL 注入和用户相关的应用程序流程。Arachni是一个功能强大的开源项目,可以多次扫描 Web 测试的脚本化审核(使用 Ruby),同时可以轻松集成到 CI/CD 中。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

Arachni 支持 Mac OS X、Microsoft Windows 和 Linux,可以轻松在云服务器上使用。由于其 Ruby 库允许执行复杂的脚本扫描,因此使用 Arachni 进行部署非常容易。它还能够使用命令行界面执行快速扫描。安装它就像下载并解压一个包一样简单,然后就可以运行测试了。
五. Falco-  部署运行时验证什么是DevSecOps?文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

应用程序经过整个开发和安全验证过程后,必须在上生产环境前通过最后一系列测试。这些测试旨在检查仅在实时生产环境中才会发生的稳定性、漏洞和错误。本质上, Falco测试不一致的一些点包括:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

  • 实时云应用程序的问题。
  • 实时生产和测试环境之间的配置差异。
  • 硬件交互。

由于此 DevSecOps 工具位于开发的最后一步,因此它具有对策略违规的即时警报和高度可配置的规则引擎,可满足任何团队或应用程序的需求。因此,创作者为交付可立即运行的产品而感到自豪。它具有强大的默认配置,即使很少交互,也将为您提供一个坚实的起点。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

03文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

DevSecOps 的好处文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

DevSecOps通过在开发周期开始时引入安全性、添加自动检查、查找易受攻击的依赖项并指出错误代码,将安全性提升到一个新的水平。公司可以创建一个安全的环境,在其中实现 DevOps 的快速交付,同时维护安全标准和最佳实践。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

以前是瓶颈的安全团队现在对开发人员进行教育,使每个开发人员能够在推送代码之前检查自己的代码。完成此检查后,代码仍会由较小的安全团队进行审查,扫描漏洞,并使用安全团队配置的最新安全即代码定义进行测试。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

这意味着在开发过程中,在多层代码和依赖项被引入到代码中之前,问题就被发现了。因此,修复错误的速度实际上更快,这也意味着流程成本极其低廉。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html

采用 DevSecOps 的团队可以更快地从灾难性故障中恢复。这对于处理高价值、高风险数据的企业(例如银行和电子商务商店)尤其重要,在这些企业中,捕获并修补漏洞不仅可以节省大量资金,还可以保护客户数据。
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/arc/52869.html
  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/arc/52869.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定