InfoQ百度的 DevSecOps 实践( 四 )


InfoQ百度的 DevSecOps 实践
本文插图
3.2.5 上线 & 验证阶段
目前上线 & 验证阶段主要是要求业务线进行安全产品、安全防护能力的接入 , 主要涉及到:日志备份、线上版 RASP、集团 WAF 等 , 确保产品线上运行时安全 。
3.3 DevSecOps 安全运营
当我们完成整个研发全链条的覆盖之后 , 后续的工作变得相对比较简单 , 可以将有限的人力投入到工具链安全能力建设、产品线 DevSecOps 定制化需求、重点业务场景安全解决方案制定与实施中 。 通过精细化的安全运营 , 确保 DevSecOps 得以准确、高质量的实施 。
3.4 DevSecOps 云原生场景探索
CNCF 将云原生定义为致力于帮助企业在公有云、私有云和混合云等新型动态环境中构建与运行可弹性扩展应用的一种技术 , 包括容器、微服务以及不可变基础设施等 。
相比于传统的基础架构模型 , 构建于云原生技术之上的研发模型能够实现应用弹性、可扩展部署 , 并且开发和交付也更加敏捷 。 但与此同时 , 由于基础软件自由引入 , 应用快速迭代 , 镜像的获取、容器的部署更加灵活 , 云原生产品研发过程中实际上具有更多潜在的安全风险 。 比如当基础镜像中引入了恶意组件或者高危组件这种场景 , 传统的产品安全措施与工具链很难对其进行风险治理与收敛 。
因此 , 我们需要将 DevSecOps 与云原生深度结合 , 对云原生技术下构建的研发流程进行持续管控 , 更好地在研发链条中保护业务安全 。
InfoQ百度的 DevSecOps 实践
本文插图
云原生时代下 , 我们在 DevSecOps 方案中增加了镜像安全扫描、安全分发、镜像签名与运行时监控等产品安全措施 , 这些与原有的应用层 DevSecOps 共同构成了一条完整的 DevSecOps 安全管控链路 。 镜像扫描可以通过配置是否阻断 , 来限制包含高危漏洞的镜像上线;安全分发可以保证镜像分发安全 , 而运行时监控则能针对线上容器危险操作、非法网络连接等进行阻断 。 具体的管控方案如下:
除了增加一些自动化的检查和监控以外 , 我们还在着力推动镜像仓库统一化、基础镜像标准化等 , 避免线上运行时环境过于分散 , 降低后期治理与管控成本 。
除了上述内容 , 我们也在关注 K8s 等编排工具本身的安全性 , 宿主机上容器软件权限设置 , 以及内核安全等 。
将 DevSecOps 应用到云原生化架构中 , 让安全与业务更加紧密地联系在一起 , 将会是云原生时代提升业务安全质量、降低业务安全风险和后期安全成本的最优解 , 也可能是唯一解 。
4
DevSecOps 建设收益
通过 DevSecOps 的落地 , 我们从过去仅在测试阶段检查转变为产品研发全流程的安全保障 , 进一步提升了研发效率、安全问题检出效率 , 降低了安全问题的修复成本 , 并提升了产品安全质量以及业务团队的安全素养 。
此外 , 业务线在各个研发阶段都能看到安全相关的措施 , 安全措施和研发措施进行融合 , 增进安全协同 , 更能够让业务线意识到产品安全并不只是安全团队的事情 , 而是产品线、安全团队一起协同的结果 , Sec 和 Dev、Ops 一样 , 都是研发过程中必须要做的工作 。
总的来说 , 通过 DevSecOps 的落地 , 我们获得了:
打造了覆盖研发全链条的产品安全框架 , 后续可以基于这个框架进行产品安全措施扩展 , 比如将隐私合规要求融入 DevSecOps 需求阶段中
提升了研发效率、安全问题检出效率 , 降低了修复成本
提升了产品安全质量以及业务团队的安全素养
大幅度降低线上漏洞风险 , 自 DevSecOps 落地后 , 线上风险得到了进一步收敛
5
文章总结


推荐阅读