导语:为了更好的适应企业转移的距离和发展速度,通过DevSecOps模型,使安全性成为业务内在组成部分。安全团队不仅可以延用标准,还可以在不中断业务实施的情况下计划整个安全流程,创建满足业务团队需求的策略。
近几年,DevOps变化得愈加成熟。企业不仅需要了解风险,更需要实施控制措施。Gartner2020年规划指南:安全和风险管理,2020年新的或显著增强的领域包括拥抱DevSecOps以实现跨基础设施的安全标准化和自动化,安全应该成为流程和自动化的一个组成部分。伴随企业经历越来越多向左转移,业务领先安全是天然的,因此暴露出诸多风险。为了更好的适应企业转移的距离和发展速度,通过DevSecOps模型,使安全性成为业务内在组成部分。安全团队不仅可以延用标准,还可以在不中断业务实施的情况下计划整个安全流程,创建满足业务团队需求的策略。
近期,嘶吼采访到了信通院云大所云计算部运维业务主管牛晓玲和奇安信集团网络安全部产品安全负责人武鑫,分别从标准制定侧和企业实践经验中就DevSecOps落地难点、企业最佳实践重点关注问题和企业顶层架构设计等内容展开讨论。
一、什么是DevSecOps,它与DevOps有何不同
嘶吼:DevOps和DevSecOps最大的区别在哪里,或者说组织如何更好的推动DevSecOps的发展?
牛晓玲:DevOps即研发运营一体化,强调开发、测试、运营部门之间的协作,从而提升IT组织的效率与质量。DevSecOps是在DevOps基础上将安全贯穿到软件开发的全生命周期中,通过研发、运营、安全等部门的紧密协作,在保障安全的基础上,又能快速交付高质量且稳定的软件服务。
武鑫:DevSecOps是把安全的工作融入到快速迭代和交付的软件生命周期中。安全工作可以分为:安全检测、安全防护、安全运营。第二,它需要全体IT人员参与到安全工作中,使得孤岛思维被越来越多共同承担责任的安全任务所替代。第三,它是一种需要长期建设和运营的工程,将两个看似相反的目标“代码安全性”和“交付速度”逐渐合并、简化的过程。为了与敏捷安全中的精益实践保持一致,安全测试在迭代中完成,而不会减慢交付周期。关键的安全问题在出现时就及时得到处理,而不是在威胁发生后才进行响应和处理。
二、企业建设DevSecOps 重点聚焦
嘶吼:《中国DevOps现状调查报告(2019年)》中数据显示仍有65.02%的企业并未建立安全团队,企业尚未给予安全管理足够的重视,您认为最大的原因是什么?
牛晓玲:通过信通院的调查报告,我们分析得出主要是两方面原因,一是企业对安全的重视程度不够,二是企业中的专业的安全人员配比明显不足,大多数情况下,代码与服务的安全性还是仅仅依赖开发或运营团队内部兼职人员来保障。
嘶吼:企业处于不同的发展阶段,大型企业、中小型以及初创型企业之间在建设DevSecOps时,分别需要注意哪些问题?
武鑫:大型企业在计划构建DevSecOps时,要根据实际IT发展水平量体裁衣。也就是说千万不要新建一套安全流程,而是要将安全嵌入研发流程中,实现柔性着陆。根本原因是公司业务技术的发展水平,比如云计算等一些迭代较快的技术,是不断持续交付的,在IT发展水平较高的产品线可以将安全嵌入,这一步对于系统自动化要求也比较高。
中小型、初创企业:我在企业规模不同上感触比较深,较为明显的是业务复杂度表现出的差异。例如:较多使用的编码语言,现在的主流是Java、Python、Go等,中小型企业管理常用的几种编码语言,再添加安全工具和安全系统辅助检测,尽早发现代码中漏洞以维护业务目标即可。而在大型组织中常用语言为十几种,甚至在一些复杂业务逻辑下的大型企业使用二十几种编码语言也很普遍。当然,这对于安全团队实际推行或者调整技术框架、语法句式等都带来很大的困难。对于我们来说,无论是对安全人员自身素质的要求、或是安全工具和安全系统的功能都是一种挑战。因此,建议中小型企业根据自身使用设计需求和代码复杂度选用安全工具和第三方的安全服务。
嘶吼:结合实践经验,您如何理解敏捷安全,以及安全左移和安全右移?
武鑫:敏捷安全主要体现在自动化方面,在实践中比如:设计阶段、编码阶段、构建阶段、测试阶段,都是引入我们公司自动化的工具和平台进行支撑,保障企业在不影响业务快速迭代的情况下去做安全。
行业热议的安全左移,研究对象主要是安全需求、安全设计、安全开发和安全测试这四个阶段。它不仅有利于降低网络风险,还可以降低成本。安全团队实际上保护了企业CI/CD的安全,从而实现自动化的安全防护。安全漏洞包括:系统层面的漏洞、逻辑方面的漏洞,应用的这些漏洞,有的漏洞是可以通过配置去修复的,然而有了漏洞实际上是在我们整个软件或者整个产品设计的时候就应该考虑进去的。
图:安全左移
安全右移的聚焦点是事件结果,强调内外结合和最终检验效果,以此继续对前面的安全活动进行优化和完善。比如:线上安全运营通过企业自主建立的定期漏洞扫描、漏洞悬赏漏洞扫描,和安全事件进行监测完成应用层面的安全防护。因为这部分工作也非常重要,所以希望通过强调来提升行业的重视程度。
图:安全右移
三、加强内部协作力 减少沟通阻力的最有效措施是?
嘶吼:DevSecOps核心是强调整个IT团队成员的责任,企业内部怎样才能够在各部门间达成协作共识,必须对内部顶层设计自上向下做出调整吗?在实施流程上如何保证柔和低入侵呢?
牛晓玲:我们想要实现DevSecOps就需要让安全成为每个人工作的一部分,而不单是安全团队的责任,要将安全内嵌到应用开发的全生命周期,在安全风险可控的前提下,提升企业的IT效能,从而实现研发运营一体化。我们应该从控制总体风险、控制开发过程的风险、交付过程的风险和运营过程的风险四个主要方面入手,通过将安全能力内嵌到日常规范与工具中,配合安全培训与教育,从而达成企业内部对安全的共识。关于组织顶层设计的问题,我认为组织在将安全内建到DevOps过程中时,需要建设分级的组织负责不同的安全职责与工作,需要建设组织级的安全文化以及对研发人员、测试人员、技术运营人员等进行安全管理,包括第三方机构和人员,每个人都为安全负责。
关于实施流程中柔和低入侵,最主要的是持续改进而非大跨步,并将安全能力内建到工具中,在不影响现有业务的情况下,利用安全工具来辅助实现安全流程的要求,通过工具平台赋能,而不是将安全工具转嫁给开发、测试团队。
武鑫;在实践过程中我们不会选择打破职能,而是通过虚拟组织——DevSecOps专家团队,该团队由安全人员发起,按照各部门职能选调领导加入,以此推动整体事件达到帮助组织达成共识的目标。在作出决策的时候,比如检测产品的安全质量,要求进行安全测试和安全编码阶段,DevSecOps团队引导组织建立符合安全需求的制度和规范。在推动事件顺利完成的过程中,自上而下执行阻力也会随之减小。
嘶吼:已经建立专业安全团队并参与到研发过程中的企业需要关注哪些问题,请您给一些建议。
牛晓玲:专业安全团队并参与到研发过程本身就是DevSecOps的两大特征。这样的企业大部分会更关注开发的安全,重点聚焦代码和设计的安全性与合规性,比如通过代码安全扫描、威胁建模等方法与工具来保证开发源头的安全,但也有不少企业会关注开源库的安全性以及自动化工具的能力,因为很多时候软件的漏洞来源于所引用的开源组件,比如去年爆出的FastJSON漏洞等。具体关注的重点问题根据企业的特性而有所不同。
我个人建议企业逐步将安全左移,并从安全需求定义、安全设计、安全开发、安全测试、安全运营、安全组织与文化建设等多个方面内建企业的安全能力,并且安全需要贯穿DevOps的全流程。企业从安全理念到真正实践DevSecOps,需要建设体系化的工作流程和规范,并加强企业流程规范与工具平台的整合与集成。
嘶吼:在企业内部提升对于网络安全的重视程度时,如何进行企业安全文化的培养?
武鑫:培养企业的安全文化要渗透到组织的每一个层级,过程可以借助多方力量去完成目标。首先,可以通过KPI规范开发人员的代码安全性,从根本上让大家体会到安全是团队的任务,而不只是安全部门需要关注的问题。安全部门也改变从前以结果为导向,转而引导同事们提升安全意识,培养好的安全责任感。安全企业内部会定期举办红蓝对抗,二是重视安全培训投入,制定产品细则和安全的质量红线,然后对于流程制度做宣贯。可以安排人员参加培训,甚至是考试,例如安全编码的培训等。总结归纳平均得分情况进行排名,个人和部门荣誉相关,人员积极性被调动,就会形成一个良性循环。也能很大程度的减少安全事件发生的可能性,防患于未然。当然,实施要从试点、重点再到全面推广,切忌生搬硬套。不但影响最终效果,还耗费人力物力。
嘶吼:从2017年DevOps系列标准正式在CCSA立项成功一路发展到现在,我们在未来工作中的重点是什么?
图:DevOps标准简史
牛晓玲:我们在接下来的工作中将着重推进《研发运营一体化(DevOps)能力成熟度模型 第六部分:安全及风险管理》的标准建设与评估,从而引领行业重视和关注DevSecOps,为企业落地实践DevSecOps提供指导和依据,实现真正的既快又好还安全。
嘶吼:AI和ML技术的快速发展进步,以及其加入到CI/CD流程中将加快安全集成和安全部署的步伐。您认为未来3-5年随着组织不断推行与实践,安全事件响应时间会大幅缩短吗?
武鑫:未来在响应上必然会出现更多的自动化工具和平台,比如今年RSAC上的十大创新厂商中有自动化漏洞响应平台的企业,这些企业的出现势必加速安全事件响应时间。从安全人员的角度来讲,发现问题但苦于没有专业工具支撑,或者需要耗费时间调配其他部门人员协同解决,处理过程耗费大量的成本和人力资源。因此,我们根据漏洞级别、事件影响程度划分响应优先级,对应相应处置和复盘流程,进行专项治理和修复。
总结
DevSecOps是一种融合了安全、开发和运营的安全化管理模式,从它备受关注到落地,再到企业的切实投入。企业在实际落地过程中的阻碍源于部门之间目标不同、安全管理重视度不足,管理者可创建一个由各部门管理者组成的DevSecOps团队,团队从上向下减少目标不同的摩擦力,培养企业安全文化提升安全管理重视程度。在市场研究型公司IDG近期发布的一项调查中,25%企业成功实现了计划目标,他们表示可以在成本效益、可用性和客户体验等领域进行量化。当然,不同规模的企业需要根据自身IT发展程度、产品开发模式科学合理的规划DevSecOps,在持续优化中逐步形成符合企业自身的最佳实践。现在,对于大多数企业而言理论已经转变成现实,一场关于数字化浪潮下的安全开发和运维的破局之战才刚刚开始。
如若转载,请注明原文地址