CSA发布| 务实的DevSecOps实施解读(上) 之 DevSecOps黄金流水线与关键角色

admin 2024年4月26日13:41:40评论4 views字数 4314阅读14分22秒阅读模式

CSA发布| 务实的DevSecOps实施解读(上) 之 DevSecOps黄金流水线与关键角色

云安全联盟大中华区发布DevSecOps的六大支柱:务实的实现(以下简称“报告”)该报告中的 DevSecOps 实施指南被组织成一系列实际职责和活动,旨在帮助数字安全领导者在开始进行DevSecOps时做出务实决策。

CSA发布| 务实的DevSecOps实施解读(上) 之 DevSecOps黄金流水线与关键角色

文末附报告获取方式

01

·DevSecOps发展历史·

DevSecOps是“开发(Dev)、安全(Sec)和运营(Ops)”的缩写,其核心取自于DevOps这一火热的概念【《DevSecOps定义编年史:通过DevSecOps定义看DevSecOps发展》:https://www.douban.com/note/853429102/?_dtcc=1&_i=3562116x9VVG95】

DevOps代表了云原生文化取向、自动化方法和新兴技术平台的融合。DevSecOps的核心理念是将安全性嵌入到整个软件开发生命周期中,使安全成为IT团队(包括开发、运维和安全团队)的共同责任。

随着时间的推移,DevSecOps的概念也逐渐发展和完善。它强调在软件开发的早期阶段就引入安全性,确保安全防护贯穿整个应用开发过程。通过固化流程、加强不同人员之间的协作,以及利用工具和技术手段,将可以自动化、重复性的安全工作融入到研发体系内,使安全属性嵌入到整条流水线。

02

·DevSecOps黄金流水线·

黄金流水线(Golden Pipeline)这一概念基于安全工作前移、安全工作和现有工作的无缝对接这两个方面提出的。黄金流水线(Golden Pipeline)特指一套通过稳定的可落地的安全的方式,自动化地进行应用CI/CD的流水线体系。

《持续交付:发布可靠软件的系统方法》由Jez Humble和David Farley在2011年编写在持续交付的框架中,流水线是一个至关重要的概念。它代表了从代码编写、测试、构建到部署的整个过程,确保软件从开发到生产环境的顺畅流转。通过流水线,可以自动化地执行一系列任务,包括代码集成、构建、测试、部署等,从而提高软件交付的效率和质量。

其中工具链自动化的支撑程度是缩短调度成本、实现快速迭代的关键,为DevSecOps提供了一种便于理解和落地的实现方式,从Golden Pipeline开发流程体系来看,DevSecOps开发安全主要包括Golden-Gate安全门(门禁)、AST应用安全测试、SCA第三方组件成本分析、RASP运行时应用自保护等多个关键安全活动。

DevOps元素表为实施DevOps提供了详尽的框架和步骤,DevOps不仅仅是一系列技术和工具的组合,更是一种文化和协作方式的转变。DevOps元素表强调了这一点,提醒团队在实施DevOps时要注重打破传统角色壁垒,促进跨部门、跨角色的紧密协作。通过加强沟通和合作,团队可以更有效地应对挑战,实现快速、可靠的软件交付。【《DevOps元素表》https://digital.ai/learn/devops-periodic-table/】

根据报告建议流水线不仅仅具有黄金流水线(Golden Pipeline)的功能,需要组合安全的软件生命周期阶段,融入安全人员、安全文化、安全流程和安全技术(CPPT)的组合推动DevSecOps更好地实施。在将安全性纳入到软件开发生命周期 (SDLC) 中时,组织有多种工具和解决方案可供选择。然而,这些通常存在一些问题:要么难以部署、实施和扩展,要么无法提供有助于减轻实际安全风险的可行见解。由于每个 SDLC 在结构、流程、工具和整体成熟度方面都不同,因此没有通用的二元蓝图来实施 DevSecOps。【二元蓝图: 《DevSecOps的六大支柱:务实的实现》】

CSA发布| 务实的DevSecOps实施解读(上) 之 DevSecOps黄金流水线与关键角色

详见《DevSecOps的六大支柱:务实的实现》

03

·DevSecOps实施关键角色·

《凤凰项目》这本书通过讲述一个虚构的IT运维团队如何挽救一家面临破产危机的跨国制造企业的故事,生动地展示了如何在现实世界中实施敏捷开发与运维。其中描述的安全专家负责评估安全风险,并提供相应的安全建议和解决方案。

在凤凰项目模式中,【凤凰项目模式:《凤凰项目》是2015年人民邮电出版社出版的图书,作者是基恩·金,书中讲述了一位IT经理临危受命,在DevOps黄金三步工作法理念的支撑下,最终挽救了一家具有悠久历史的汽车配件制造商的故事。小说揭示了管理现代IT组织与管理传统工厂的共通之处,通过DevOps帮助企业实现了业务目标,并帮助企业实现成功的故事。】安全专家需要与开发、运维团队紧密协作,确保在整个软件开发和部署过程中,安全人员的充分参与才能使流水线更加的安全可靠。

人员、流程和工具是三个缺一不可的关键要素。人员方面,首先领导层一定要去重视,领导的作用是很大的,只有领导重视了,才会有相应的流程、规范,才会去招聘相应的人员、做相关的培训、采购工具。做安全一定是自上而下的。其实我们的程序员的安全储备是不够的,对于安全开发、安全编码的培训是非常重要的。开发不是说功能实现了就可以了,一定要高质量。

除了安全性,在其他方面也有代码质量的体现。根据报告建议组织具有如下角色推动DevSecOps更好地实施。具体角色如下表所示:

角色定义

简述

安全冠军

帮助产品团队和开发人员采用与组织一致的安全计划,通常是已经从事软件或基础设施的开发人员或管理人员。持续评审其产品团队内针对威胁、漏洞和风险的安全状况。它可以作为混合角色共享。

安全领航者

领导策略来沟通关键的计划和成功案例,并评估安全工具和方法在整个组织、各个团队和业务领域中的采用影响。将安全计划与业务价值和战略目标保持一致。将实现安全和业务目标的高级数字战略与低级开发人员目标连接起来。协助管理和修复对应用程序造成的安全风险、漏洞和威胁。

解决方案架构师

开发解决方案架构和相关系统组件以满足用户需求。设计系统和系统间的接口,并确定目标环境的影响,包括但不限于安全状况。

安全构架师

与业务部门合作,讨论如何设计应用程序和使用基础设施服务(包括云),以安全的方式达成于业务目标。制定方法、框架和模式,并帮助开发人员遵循安全开发最佳实践。识别未来安全方法以演进现有的实践,应对行业、监管和技术变革,并确定DevSecOps的战略和运营适应性(例如,控制措施的左移或右移)。与开发人员一起和高级业务利益相关者合作,为部署流水线和仓库的安全方式、方法和使用自动化工具提供建议和评估。

应用程序安全工程师

识别应用程序代码中的潜在缺陷,并通过修复安全问题来缓解漏洞。应用安全编码和测试标准,并记录安全编码指南。将安全测试工具(如静态和动态应用程序测试工具)集成进源代码仓库和持续集成和交付的流水线中。对应用程序代码应用安全控制(如加密、标识和身份验证),以减少攻击面并最大程度地降低被利用风险。

软件开发人员

与架构师一起识别、设计和编写代码实现软件特性。他们将帮助测试、维护和更新产品,以确保所有安全、性能和功能问题得到解决。安全角色和成果使开发人员能够根据软件工程方法论、工具、实践以及安全代码指南安全地编写代码。

云开发者运营工程师

配置和运营云基础设施,包括服务器、存储和网络。使用持续集成和部署方法自动配置云基础设施和应用程序

集成工程师

有助于确保安全活动应用于集成的软件包和集成的应用程序特性。引入影响整个应用程序的整体应用程序安全控制和过程-利用工具在运行时进行完整性校验并扫描应用程序。

性能测试人员

负责编写和执行负载和压力测试基础设施、平台和应用程序的测试计划。

安全测试人员

解决软件测试阶段的安全问题,包括风险接受、安全验收标准和安全测试方法。定期执行手动渗透测试,以暴露应用程序和基础设施的弱点,并确认安全强制执行功能的正确实施。根据测试输出提出修复建议。

安全运营工程师

提供有关云、基础设施和平台服务的安全状况的建议。在基础设施和平台上应用系统加固实践,并确保强大的安全机制。执行漏洞扫描和修复,以减少基础设施上的攻击面。

04

·安全冠军对于DevSecOps成功的影响·

其中安全冠军对于很多企业非常重要。安全冠军在组织中负责维护和确保安全。他们的职责包括监测和预防潜在的安全威胁,制定和执行安全政策和措施,调查和应对安全事件,提供安全培训和意识教育,以及与其他部门合作,确保组织的安全性。

安全人员还负责评估和改进组织的安全风险,提供安全建议和解决方案,并参与应急响应和危机管理。他们的目标是保护组织的人员、资产和信息免受任何形式的威胁和损害。安全冠军可以通过宣传、管理和实施安全态势,让您的开发团队作为安全团队的扩展成员来帮助弥合这一差距。他们的职责包括:

编号

主要职责

简述

1

安全文化

传播安全最佳实践,提高和保持对开发组织的问题/威胁的持续安全意识,并回答安全相关问题。

2

安全左移

对安全问题进行扫描,并在将问题上报以供安全团队审查、帮助进行 QA 和测试之间充当中间人。这也将使他们能够参与风险和威胁评估,以及架构和工具审查,以识别早期修复安全问题的机会。 

3

安全指导

在项目内在使用开发人员的语言,您的安全冠军可以通过以他们理解的方式传达安全问题来获得他们同事的支持,从而支持DevSecOps模式。同时最大限度地减少了下游的安全测试瓶颈,因此您的安全团队可以专注于其他关键任务。

4

安全分享

知识是关键,您的安全冠军将受益于持续的培训,以跟上最新的实践、方法和工具来分享这些知识。

5

安全协作

与其他安全人员和参与者建立联系和合作,参加每周会议以分享想法和技巧,同时协助制定安全决策。

05

课程推荐

CSA发布| 务实的DevSecOps实施解读(上) 之 DevSecOps黄金流水线与关键角色

CSA 数字安全人才体系2.0

DevSecOps专家认证(Certified DevSecOps Professional) 课程的价值主要体现在提升安全性、促进团队协作、加速软件交付、培养全栈人才和提高企业价值等方面。对于希望在软件开发和运维领域获得更多竞争优势的企业和个人来说,是个不错的选择。

致谢

《DevSecOps的六大支柱:务实的实现(The Six Pillars of DevSecOps: Pragmatic Implementation)》由Lead Author编写,并由CSA大中华区专家组织翻译并审校。(以下排名不分先后):

中文翻译组组长:

李岩

中文翻译组组员:

何伊圣、陈宏伟、殷铭、贺志生、吴嘉雯、高亚楠、伏伟任、江澎、江泽鑫、余晓光、谢绍志、屈伟、江楠、王岩、王贵宗、王彪、苏泰泉、欧建军、林艺芳、张坤

(以上排名不分先后)

本文作者:

李岩(北京老李)

关注公众号,回复关键词 “云安全”

即可获取报告完整版

往期推荐

CSA发布| 务实的DevSecOps实施解读(上) 之 DevSecOps黄金流水线与关键角色

CSA发布| 务实的DevSecOps实施解读(上) 之 DevSecOps黄金流水线与关键角色
CSA发布| 务实的DevSecOps实施解读(上) 之 DevSecOps黄金流水线与关键角色

原文始发于微信公众号(云安全联盟CSA):CSA发布| 务实的DevSecOps实施解读(上) 之 DevSecOps黄金流水线与关键角色

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年4月26日13:41:40
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CSA发布| 务实的DevSecOps实施解读(上) 之 DevSecOps黄金流水线与关键角色https://cn-sec.com/archives/2690917.html

发表评论

匿名网友 填写信息