多个设备在灰色网格背景上的等距 3D 渲染图

如何“左移”并更早地发现应用程序代码和基础设施中的安全风险

生产中发现的安全问题会带来真正的业务风险。中断、不合规和发布延迟通常始于开发生命周期早期引入的脆弱性。

挑战在于时机。安全检查通常在代码编写、合并或部署之后进行。此时,脆弱性不再孤立;它们嵌入在应用程序、基础设施和依赖中,这使得修复更加复杂。

数据清晰地表明了其影响:

与此同时,开发速度正在加快。AI、自动化和 DevOps 正在使团队比以往任何时候都更快地行动,同时系统继续变得越来越复杂,涵盖应用程序、基础设施、依赖项和云环境。 众所周知,手动代码审查和策略检查不可靠——手动工作流触发的警报中有 25% 是误报,这增加了人为错误的风险并减缓了部署周期。

结果是,暴露时间窗口越来越长,脆弱性可以进入、传播并变得更难遏制。

传统安全方法为何落后

现代开发模型已经超过了传统的安全方法。曾经在较慢的发布周期中行之有效的方法已无法跟上持续交付的速度。

推动这一差距的因素有几个:

这些模式强化了一个核心问题:安全在很大程度上仍然是被动的。

当检测较晚时,团队将被迫疲于应对,从而分散了时间、预算和精力,使其无法专注于创新。随着系统之间的互联程度越来越高,脆弱性在被发现之前可以跨多个层传播。

与此同时,安全措施已不再充当部署阶段的最后一道检查点。现代平台面临诸如基础设施快速变化、人力驱动治理延迟、长期静态凭据的广泛使用以及手工流程导致的配置漂移等挑战。为了跟上步伐,安全必须发展成可编程、自动化且贯穿整个部署生命周期的实践。

左移模型:将安全性融入团队工作方式

为了跟上现代软件交付的步伐,组织正在采用左移方法,将安全性更早地转移到软件开发生命周期 (SDLC) 中。

如此便不再将安全视为下游检查,而是融入团队如何设计、构建和部署软件。这种方法缩短了从引入脆弱性到修复之间的时间间隔,并防止问题复杂化。

左移模型通常会引入几个关键实践:

  • 将检测脆弱性安排在代码创建阶段,而不是在部署之后。
  • 根据实际影响和背景来确定风险的优先级,而不仅仅是根据严重程度分数。
  • 使开发人员能够在不中断工作流的情况下立即修复问题
  • 将安全检查直接集成到 CI/CD 管道中。

对于基础设施,同样的方法适用于配置生命周期的早期:

  • 在部署资源之前执行合规政策。
  • 安全地管理机密,以减少凭据泄露。
  • 维护跨环境审计跟踪和治理。 
  • 规范配置以减少偏差和配置错误风险。

这些做法共同帮助组织降低修复成本、加快交付速度并缩小攻击面,而不会减慢开发速度。

有效的风险暴露管理在实践中是什么样的

采用左移原则需要的不仅仅是流程改变。这需要在全栈中采用持续、集成的风险暴露管理方法。

在实践中,高绩效团队正在转向一种强调以下几点的模型:

  • 早期检测:在编写代码时识别漏洞,防止后续故障。
  • 自动化修复:通过在工作流中直接解决可重复出现的问题,减少人工劳动力。
  • 持续学习:每个发布周期都改进优先级并减少噪音。
  • 统一可见性:连接代码、基础设施、依赖和运行时的洞察分析。
  • 跨职能协作:使开发人员、运营和安全团队能够共同合作,共同负责端到端的安全执行——从代码开发到部署和运行时操作。
  • 标准化最佳实践和黄金工作流:建立一致的部署模式、安全护栏和经批准的自动化工作流,以缩小安全漏洞,最大限度地减少配置漂移,并提高生产可靠性和运营效率。

这种做法形成了一个反馈循环,在从开发到部署的整个生命周期中,持续评估、完善和强制执行安全性,而不是在交付结束时偶尔应用。

其结果是实现可衡量的转变,后期意外更少,运营风险降低,发布更快且可预测,工程资源利用更高效。

从被动式安全到弹性软件交付

随着开发继续加速,以及 AI 增加了速度和复杂性,安全必须与时俱进。

这种转变在原则上非常简单:尽早推进安全工作,使其成为团队构建方式的一部分,而不是事后发生的事情。

成功采用这种方法的组织可以在脆弱性演变成运营问题之前发现它们,最大限度地减少代价高昂的返工和生产中断,并在不引入瓶颈的情况下保持合规性。借助这种做法,他们能够提供设计即安全的软件。

归根结底,弹性软件并非直接嵌入生产环境。它内置于生命周期的每个阶段——从第一行代码到运行代码的基础设施。

了解如何在开发和部署生命周期的早期识别软件风险

了解 IBM Concert® 如何改变曝光管理

深入了解 Terraform® 如何规模化实施安全基础架构

了解如何在 SDLC 中左移安全性

深入了解 IBM 安全编码器

作者

Pieter de Villiers

Product Manager - IBM Concert

IBM Automation

Ting Li

Sr. Solution Architect

相关解决方案
IBM Instana Observability

利用 AI 和自动化的强大功能,主动解决整个应用程序堆栈中的问题。

深入了解 IBM Instana Observability
DevOps 解决方案

使用开发运维软件和工具,在多种设备和环境中构建、部署和管理云原生应用程序。

探索 DevOps 解决方案
云咨询服务

通过我们的云咨询服务持续实现应用现代化,加速业务敏捷性与增长——支持任意平台部署。

深入了解我们的云咨询服务
采取后续步骤

从 IBM Instana® 的主动问题检测到跨堆栈实时洞察,让云原生应用程序保持高可靠运行。

  1. 了解 IBM Instana
  2. 探索 DevOps 解决方案