DevSecOps端到端的安全能力构建为什么重要?

这篇具有很好参考价值的文章主要介绍了DevSecOps端到端的安全能力构建为什么重要?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

2012年,Gartner首次提出DevSecOps概念,旨在将安全性嵌入开发过程中的每个部分;十年后,DevSecOps已经成为端到端安全能力构建的事实标准。所以,在了解DevSecOps为什么重要以及如何落地之前,我们先从软件开发的角度弄明白什么是DevOps。

软件开发进入现代化之旅

回望过去,软件开发大概经历了四个重要阶段:

第一阶段,90年代以前,软件开发是瀑布式,像交付硬件一样交付软件,最大的特点是项目庞大、开发周期长、出现原始问题时修复难度比较大。
 

第二阶段,2000年左右,敏捷开发逐渐成型,更关注微小变更,开发团队可以只交付部分功能,或者一个功能的框架。这种开发模式加快了软件交付速度,确保了主线上的代码在任何时间都可以工作。
 

第三阶段,2008 年前后,DevOps成为实现敏捷开发的最佳方法论之一。“敏捷”强调的是速度,要实现快速开发目标,自动化成为重要手段;而DevOps最核心的能力就是自动化。从概念来看,DevOps要打通开发、运维环节,通过更自动化的方式交付软件和架构变更过程,使得构建、测试、发布等整个流程能够更快捷、频繁和可靠,这便是DevOps。
 

第四阶段,2010年以后,容器开始流行,尤其是2015年原生基金会CNCF的诞生,标志着云原生时代到来。所谓“云原生”,是将应用部署在云上,更强调动态环境构建,让软件交付变得更快捷、灵活和高效。可以说,云原生不仅解决了软件交付的“最后一公里难题”,最重要的是推动软件开发流程或者方法进入了现代化之旅。

DevSecOps端到端的安全能力构建为什么重要?,运维,devops,DevSecOps

极狐(GitLab)高级解决方案专家 温小刚

在1月8日由msup主办的第十届TOP100全球软件案例研究峰会上,极狐(GitLab)高级解决方案专家 温小刚带来了精彩的案例分享,其中总结了云原生时代的软件开发十大关键能力!
 

具体如下:

1.通过轻量化容器打包;

2.使用最佳语言和框架开发;

3.设计为松耦合的微服务;

4.微服务都是通过API来连接;

5.无状态和有状态服务区分清晰;

6.从操作系统和服务器层面抽象出来;

7.部署到自服务的云服务环境中;

8.通过敏捷的DevOps过程管理;

9.自动化能力;

10.有明确定义且被策略驱动的资源分配。
 

只是,从应用安全的角度来看,这些新的服务能力,在推动软件开发走向更高阶段的同时,也带来了新的安全风险。

云原生时代面临新的安全挑战

Containers,容器是一个新应用,所以在安全体系构建中,如何把容器的内容纳入进来,是企业拥抱现代化业务架构的第一个挑战。包括如何使用云原生应用的库和进程解决业务问题,如何共享底层操作系统,如何使应用可移植等等,涉及很多新的安全问题。有了容器,我们需要把它编排起来,需要新的编排工具。如果,安排容器运行的方式和位置不合理,也容易被攻击。云原生时代,很多企业希望通过微服务架构改变之前单体式架构,会将应用拆解为较小的服务,通过API进行连接。其实,传统软件开发时代,也有API,只不过不像今天这样,有如此大的体量。并且,很多API都需要单独的管理工具,所以在安全策略上也必须做出相应的调整。
 

所以,从大的开发环境来看,传统安全模式已经不能满足云原生时代的需求。首先,云原生采用的是敏捷开发方式,通过DevOps过程进行发布,在高速开发模式下,传统安全和部署模式显然无法跟上,如果把跟不上安全的云原生应用投向生产环境,会成为重点攻击对象。另外,传统安全工具扫描速度慢,无法适应云原生环境的敏捷需求。最后,还有人为因素。传统安全模式下,人员较少,缺乏专业技能。如何从根本上解决云原生环境下面临的安全挑战呢?很多企业会采用安全左移的方式!

安全左移成为最佳方法论

DevSecOps端到端的安全能力构建为什么重要?,运维,devops,DevSecOps

为了从根本上解决安全团队的低效问题,高效团队会将信息安全 (InfoSec) 目标整合到日常工作中,团队可以实现更高水平的软件交付,并以更好的性能构建更安全的系统,这种想法称为“左移”。说白了,安全左移就是在软件开发生命周期的较早阶段,解决各种安全问题。因为,越早检查到安全漏洞,企业修复漏洞的成本就越低。
 

问题是,安全左移方法论该如何落地?

很多企业首先会考虑使用传统安全工具实现安全左移,但是一看到各种工具链,就会感觉力不从心。因为,不同企业对安全工具的需求不同;并且不同发展阶段,也会采用不同工具类型;如果使用不同厂商提供的产品,还要做各种测试,包括静态、动态页面扫描、供应链扫描、容器扫描等等。不仅要进行相关工具的匹配,还要将所有工具以及整个流程衔接起来。有时候,工具集成的成本,可能比工具本身的费用还要高,包括很多企业提供的安全看板,还要单独收费。所以,实现安全左移目标,就像企业把所有DevOps工具串起来一样,不仅花费巨额成本,最重要的是耗时费力,根本不可能完成。具体而言,安全左移要具备如下能力:
 

1.便捷、高效的扫描。每次代码提交即扫描,开发人员可以第一时间得到反馈;

2.扫描能力要可靠,能全面覆盖。扫描不同的安全类型,这样才能降低安全合规风险,进而降低总体成本;

3.自动化的安全策略,针对不同等级的安全漏洞,在做代码合并或者上线部署的时候都需要一些自动化策略。比如:和环境无关的因素可以考虑忽略,也有一些不确定的因素需要人来参与,这些都需要从扫描结果中自动化,保证整个应用的高效、准确、可靠,防止安全漏洞进入生产环境。

4.与现有工具的集成。平台开放性,也很重要。从保护既有投资的角度看,原有工具确实有着自己的特有能力,需要和新应用进行集成和互补,不能搞“一刀切”,完全抛弃旧有工具。

5.扫描次数、行数无限制。你如果想左移,在成本可预计、可控的前提下,就尽量多扫。
 

只有具备上述能力,最终才能真正达到安全左移的效果,让需求、代码、测试、报告全流程可跟踪、可追溯,进而实现端到端的打通,以更合理的许可模式和成本实现漏洞检测。

DevSecOps带来成本优势

DevSecOps端到端的安全能力构建为什么重要?,运维,devops,DevSecOps

如前文所述,传统业务模式下,反馈周期长、成本高、修复难度大,而新的DevSecOps可以从基础的应用安全扫描能力开始,构建端到端安全能力,将安全左移方法论嵌入到CI/CD里。
 

在极狐GitLab 里,安全扫描涵盖多种扫描能力,除了常见的静态应用安全测试(SAST),还有依赖扫描,也叫供应链扫描。另外,还有许可合规扫描、容器扫描、动态应用安全测试(DAST)、IaC安全测试、Fuzz Testing模式测试,真正将安全测试内嵌于合并请求中。
 

极狐GitLab 之所以被称为是DevSecOps的最佳范式,是因为可以做到多重检测和检查。
 

第一,检查代码。更通俗的说法是,检查自己。比如:6次攻击里面4次是针对应用,而应用是从代码里面出来的,代码是应用的基础,静态安全测试是根据已知的漏洞特征代码进行白盒扫描,然后通过扫语言、代码,和代码管理工具连在一起。对于极狐GitLab 来说,管理工具就是管理自己,极狐GitLab在这儿,仓库也在这儿。不同的语言需要不同的特征库,按照不同的规则来检查,涉及的语言包括.net、C/C++、Python、Java、JavaScript、Kotlin、Go、Ruby等等。另外,还要按照不同语言密码/密钥检测Secret Detection,检查无意提交的密码/密钥。除了特征库维护,扫描引擎需方便易用,并保定期更新。
 

第二,检查依赖。随着开源软件/组件的使用率的提高,以及开源组件生态中的漏洞数的升高,软件供应链安全变得越发重要。面对不同开源软件,如果基于某些管理体系来扫描,会让整个检测过程更方便、快捷,不用像静态检查一样,一行一行扫。比如:基于软件成分分析(SCA)的安全测试,我们可以依赖组件安全分析,还可以依赖组件开源许可合规分析。除了SCA安全测试,软件供应链也存在容器镜像,因容器镜像本身也是分层的,对于容器镜像安全扫描,和开源组件供应链扫描一样,也是分层模式,并在每一层报出已知漏洞。
 

第三,检查应用。一般,网站类应用容易被攻击,所以需要在网站正式上线之前进行测试。比如:大家熟悉的OWASP Top 10,被称为是动态扫描模拟标准。如果你希望每一次提交都能够进行动态扫描,那么整个体系都需要具备动态部署的能力。动态应用安全测试DAST(Dynamic Application Security Testing)类似于黑盒测试,像外部攻击一样测试运行中的应用。
 

只是,对于保持传统开发及应用模式的企业来说,如何从根本上解决传统安全和云原生安全的矛盾呢?很多人可能会说,如果开发人员不具备掌控云原生安全的能力,我们就提高人员素质,进行安全培训、教育等等!这虽然是企业拥抱云原生的一种方式,但是教育成本往往很高;最重要的是,学习时间太长,会影响整个业务的发展。
 

面对陌生的应用工具,只通过参数的微调,就能使用预配置,达到应用检查和扫描的目的,极狐GitLab为开发人实现了安全赋能。在极狐GitLab带来的DevSecOps能力中,实现了代码层的简化,很多应用工具已经内置于模板中,开发人员不需要一行行写代码,可通过资源配置,直接进行应用。
 

在极狐GitLab 界面中,你的新代码出现了哪些安全漏洞,或者你修复了哪些老的既有的安全漏洞,安全人员和开发人员都能一目了然。如果你发现有误报,或者是和你实际情况不相关,可以选择忽略,比如:密钥检查时,结果和测试密匙无关,希望后续再处理,可以临时创建issue,把漏洞信息带进去。
 

可能有些人会认为,有了极狐GitLab,安全团队是不是就没用了?的确,安全策略的自动化,会减少很多重复性的工作,解放安全人员的双手。但是,并不代表安全团队不再重要,而是要参与到更重要的工作中去。比如:存量漏洞怎么解决,如何批量更改状态等等,可以与开发人员实现更紧密的协作。
 

以扫描应用场景为例,如果遇到 log4shell 漏洞检测和修复,应该如何处理呢?首先,要进行配置。通过菜单“安全与合规”-> “配置”->“依赖项扫描”启用,然后在极狐GitLab CI配置中启用依赖扫描。实际扫描的时候,会在扫描流水线上出来结果,扫描工具在默认分支上面跑,然后进入漏洞,在漏洞报告中查看结果。如果有新的漏洞,会在新的分支里进行修复。和漏洞相关的信息都会带过来,比如:标识码、相关链接、解释、相关扫描工具实践等,下次进行查看、追溯就非常方便。
 

总之, DevSecOps最佳方法论的核心是,在各个阶段把安全因素考虑进去,越早解决安全问题,成本收益以及最终结果越好。而极狐GitLab可以为更多开发人员和安全人员带来从代码到应用集成,再到系统测试以及生产阶段的一站式解决方案。文章来源地址https://www.toymoban.com/news/detail-768916.html

到了这里,关于DevSecOps端到端的安全能力构建为什么重要?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 计网笔记 网络层(端到端的服务)

    **TCP/IP体系中网络层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。**网路层不提供服务质量的承诺,不保证分组交付的时限,所传送的分组可能出错、丢失、重复和失序。进程之间通信的可靠性由运输层负责。 IP网是虚拟的,因为从网络层上看,IP网络是

    2024年02月12日
    浏览(8)
  • 论文阅读三——端到端的帧到凝视估计

    论文阅读三——端到端的帧到凝视估计

    文章从端到端的方法出发,提出了根据heatmap和sprase depth map生成凝视原点和通过图像帧获得凝视方向,将两者结合获得注视点(PoG),和先前传统的通过裁剪人脸眼睛和脸部特征有所区别,并且PoG误差较之前的小。 研究问题 文章所需要解决的问题是远程基于网络摄像头的凝视

    2024年02月04日
    浏览(8)
  • 为什么选择网络安全?为什么说网络安全是IT行业最后的红利?

    为什么选择网络安全?为什么说网络安全是IT行业最后的红利?

    一、为什么选择网络安全? 这几年随着我国《国家网络空间安全战略》《网络安全法》《网络安全等级保护2.0》等一系列政策/法规/标准的持续落地,网络安全行业地位、薪资随之水涨船高。 未来3-5年,是安全行业的黄金发展期,提前踏入行业,能享受行业发展红利。 二、

    2024年02月11日
    浏览(16)
  • HTTPS为什么安全,流程?

    对称、非对称混合加密 首先,我们先来看 HTTP 为什么 不安全 。 HTTP没有对通信内容进行加密,是 明文传输 ,信息可能会被 劫持、篡改 等,相当于在互联网上裸奔,所以是不安全的。 那么HTTPS主要就是为了解决这个问题,而解决这个问题肯定要对传输的明文进行 加密 ,让

    2023年04月20日
    浏览(12)
  • 为什么arrayList线程不安全?

            ArrayList是Java中的一种动态数组,它在内部使用数组来存储元素。ArrayList的线程不安全性主要体现在多线程并发访问和修改同一个ArrayList实例时可能出现的问题。         当多个线程同时对ArrayList进行修改操作时,可能会导致数据不一致或者出现异常。这是因为

    2024年02月12日
    浏览(10)
  • 为什么HTTPS是安全的?

    为什么HTTPS是安全的?

    1.1 HTTP 协议介绍 HTTP 协议是一种基于文本的传输协议,它位于 OSI 网络模型中的应用层。  HTTP 协议是通过客户端和服务器的请求应答来进行通讯,目前协议由之前的 RFC 2616 拆分成立六个单独的协议说明(RFC 7230、RFC 7231、RFC 7232、RFC 7233、RFC 7234、RFC 7235),通讯报文如下: 请

    2024年02月08日
    浏览(8)
  • 一道题告诉你为什么GPT4被封神!横向测评大模型的推理能力:ChatGPT、Claude、Gemini、文心一言、讯飞星火、通义千问、天工、智谱清言、Kimi Chat!

    一道题告诉你为什么GPT4被封神!横向测评大模型的推理能力:ChatGPT、Claude、Gemini、文心一言、讯飞星火、通义千问、天工、智谱清言、Kimi Chat!

    大家好,我是木易,一个持续关注AI领域的互联网技术产品经理,国内Top2本科,美国Top10 CS研究生,MBA。我坚信AI是普通人变强的“ 外挂 ”,所以创建了“AI信息Gap”这个公众号,专注于分享AI全维度知识,包括但不限于 AI科普 , AI工具测评 , AI效率提升 , AI行业洞察 。关

    2024年04月13日
    浏览(79)
  • ArrayList为什么不是线程安全的,如何保证线程安全?

    ArrayList为什么不是线程安全的,如何保证线程安全?

    官方曰, 线程安全就是多线程访问时,采⽤了加锁机制,当⼀个线程访问该类的某个数据时,进⾏保护,其他线程不能进⾏访问直到该线程读取完,其他线程才可使⽤。不会出现数据不⼀致或者数据污染。线程不安全就是不提供数据访问保护,有可能出现多个线程先后更改数

    2024年02月07日
    浏览(33)
  • 什么是https?https为什么安全?

    随着互联网的发展,HTTPS 协议在互联网通信中的应用越来越广泛,被越来越多的网站采用。相比于 HTTP 协议,HTTPS 协议的安全性更高,使得网络通信更加安全。那么,为什么 HTTPS 协议能够保证通信安全呢? 本文将从以下几个方面进行探讨:HTTPS 协议的基本原理,HTTPS 协议与

    2023年04月09日
    浏览(13)
  • 为什么 HTTPS 比 HTTP 安全

    HTTP(超文本传输协议)是目前互联网应用最广泛的协议,伴随着人们网络安全意识的加强,HTTPS 被越来越多地采纳。不论是访问一些购物网站,或是登录一些博客、论坛等,我们都被 HTTPS 保护着,甚至 Google Chrome、Firefox 等主流浏览器已经将所有基于 HTTP 的站点都标记为不安全

    2024年02月19日
    浏览(15)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包