发布于:2021-01-31 00:00:06
0
49
0
DevSecOps是当今最热门的话题之一,因此刚好是崭新的,因此为了将其付诸实践,我们需要更好地理解它。首先,我们需要迈出关键的第一步:整合自动化安全扫描。本文介绍了此过程的基本阶段。
关于DevSecOps的典型叙述着重于人员和流程,常常强调需要改变个人与代码开发的交互方式。在安全性介绍中向左转(最容易发现问题)是明智之举。但这只是答案的一部分。必须采用适当的技术以允许所需的自动化,否则,DevSecOps只是一个词。
在这里,可以根据安全基准自动评估代码的能力成为实现真正的DevSecOps的重要第一步。到2019年,企业DevSecOps倡议超过70%将并入2016根据自动安全漏洞和配置扫描开源组件和商业包装,从不到10%,Gartner的。
Gartner报告详细介绍了在监管情况下克服DevOps障碍的最佳策略。除了DevOps和InfoSec之间更紧密的协作之外,我们还发现了自动化测试,自动化部署,自动化工作流以及手动步骤的自动化。自动执行安全扫描是自然而然的第一步,它将为每个新代码开发奠定坚实的基础。
组织需要能够快速测试其安全策略,并确保它们满足法规要求并采取正确的安全状态。但是,这不应该是一次性测试,对于PCI DSS之类的东西,一开始的100%遵从性是不够的,必须对其进行维护。Verizon的2017年《支付安全报告》发现,PCI DSS合规性从2012年的11%跃升至2016年的55%,但几乎有一半的公司在9个月内退出合规性。为了避免这种风险,必须将自动安全扫描永久纳入该过程。幸运的是,这是完全可以实现的。
自动安全扫描是什么样的?
下面描述的工作流程可以用作希望将自动化引入CI / CD流程的任何阶段的团队的模板。整个环境由CI / CD系统(在本例中为Jenkins)组成,Jenkins是API驱动的评估平台,其中包含有关不同GET,POST和PUT命令的文档;与该平台通信的shell脚本,从而自动执行安全性;对于这个示例,是Docker Hub。
工作流程如下:
1.开发人员通过CI / CD平台启动构建。
2.作为构建的一部分,有一个触发器来调用脚本。这并不比添加其他构建步骤困难。
3.现在转到实际脚本,第一步是从存储库(在本例中为Docker Hub(docker.io))中提取所需的Docker映像。该脚本应具有足够的通用性,可以从任何公共或私有存储库中提取图像。通过API调用,脚本将Docker映像推送到评估平台。
4.下一步是选择策略框架。在这里,我们选择Docker Image Scanning,因为我们希望评估Docker映像,但是该脚本可用于处理其他类型的框架。例如,目标可能是自动评估新虚拟实例的PCI安全状态。在这种情况下,评估平台会将PCI框架与新创建的服务器进行比较。
5.最后,脚本触发实际评估。工作流图的左侧是此操作的API调用的代码段。
6.平台根据策略框架评估映像,然后生成风险评分,在这种情况下为“ 80”。
7.脚本包含将这个分数与开发人员设置的阈值进行比较的逻辑。
8.如果得分大于等于=“ 75”,则该图像被认为是安全的,并会自动升级到下一步。相反,如果图像得分低于“ 75”,则认为图像不安全,并通知开发人员。
总体逻辑流程,API驱动的评估平台和脚本共同构成了安全自动化的得分。可以将其概括化以支持CI / CD流程中多个阶段的其他安全测试和调用。
使DevOps自动化并因此启用DevSecOps,需要人员,流程和技术的结合。通过自动代码评估来标记安全问题,以前缺少的组件-技术-不再是成功的空白。
作者介绍