OushuDB 小课堂丨“左移”不是你所期望的

简介: OushuDB 小课堂丨“左移”不是你所期望的

让我们来谈谈房间里的大象——“左移”并没有像我们许多人预期的那样对我们的软件安全产生影响。虽然它确实有很多优点并且以不可或缺的方式影响了安全性,但我认为“左移”应该被视为更大管理策略中的一种策略,而不是解决应用程序安全问题的综合解决方案。正如软件开发是一个非常复杂的多层次过程一样,“左移”不应被视为一种简单的线性工作。这篇博文将回顾“左移”的成功、担忧和潜力,以及我们如何通过稍微不同的应用来“重启”这个过程。


什么是“左移”?


“左移”是一个相对较新的安全方法这要求在开发周期的最早“左侧”即创建阶段开始应用程序安全流程。描述软件开发生命周期及其元素的方法有多种,但一种普遍认可的分解方法是从制定计划开始,然后进入编码、构建、测试、发布、部署、运营,最后是监控。这个过程的最左边是“创建”阶段,最右边是实际安装和使用东西的“操作”领域。“向左移动”定义了将操作移动到最左侧的不同方式,供开发人员处理。

可以“左移”的流程包括测试,这通常作为第一个“左移”工作来实施。测试可以帮助组织从最早阶段解决问题——当他们计划、创建和编码时。在最早阶段解决问题可以显着提高在进入运营阶段时遇到的问题更少、修复起来更容易、成本更低的可能性。


“左移” 是什么意思?


从最早阶段解决问题可以增加避免错误的机会,确保软件投入生产,并对编写代码和负责运行代码的人员的任何问题实施快速准确的修复。“左移”的一个成功例子是容器化和其他类型的包装,当 库伯内斯 出现了。“左移”让我们明白,当一个软件工件被正确打包后,它可以使部署、运行和监控它的后续步骤变得容易得多。自动化与容器化和软件工件打包相结合,使我们能够非常有效地简化整个部署操作。另一个“左移”成功案例是归因——“左移”使我们能够发起和扩大关于代码所有者的对话,使工程组织能够识别代码背后的开发人员,并使开发人员自己的流程更加简化。开发人员希望编写好的代码,并且“左移”将这种与安全性的对话推到了最前沿,而不是对抗性的。


“左移”安全测试挑战


尽管它已经完全适应,但安全测试已经产生了不同程度的影响。单独测试需要一定水平的技能或工程成熟度,这对某些组织来说可能是一个障碍,它们可能无法获得拥有完整测试套件的全部好处。事实上,在大多数工程组织中仍然存在缓解控制功能,因为基于开发人员的测试不被认为是唯一的真实来源。组织了解他们需要 QA 功能来挑战测试工具,并充当结果的最终质量保证和控制功能。


“左移”安全修复挑战


安全工具为您提供许多警报,这些警报难以理解、确定优先级和采取行动。开发人员应该分类并尝试缓解什么?开发人员仍然可以发布并在工程过程中向前推进而不响应安全测试告诉他们的内容,这无济于事。许多测试更像是“合成”阻断器而不是真正的阻断器——开发人员可以在工作流程中挑战这些阻断器,并会找到解决方法以避免修复它们。

对于那些被归类为需要缓解的关键警报,安全部门没有能力为开发人员分类这些问题。另一方面,开发人员可能缺乏自己进行分类的知识。开发人员不是安全专业人员,不能指望他们理解代码背后的含义和上下文。无法独立进行分类,再加上大量的警报,在开发人员和安全团队之间产生了摩擦,随着对这些测试工具的抵制和流程本身的增长,协作变得更加困难。


使用“左移”实现代码安全的可行技巧


我整理了一些基本原则,这些原则可以帮助缓解风险并创建更健康的代码安全文化。我们都同意必须修复漏洞,但“左移”未能认识到这是一个过程,而不是一蹴而就的事情。不应期望或要求工程师立即解决所有问题。如果我们从小步开始,我们就会明白有些东西更容易向左移动。这将成为向左转移问题缓解的真正旅程的第一步,同时发展一种更健康的文化,让开发人员对他们编写的代码负责。

我的第一个基本建议是承认真正的转变只有在研发部门决定它应该发生时才会发生。安全不是解决问题的人,因此为了说服开发人员这样做,我们必须向他们提供每个问题的业务背景以显示其紧迫性,或者只是友好地询问。我们必须达到研发组织自愿决定将安全活动拉到左边的地步。作为安全专业人员,我们必须专注于为其他团队带来价值的工作,并应提出有助于研发工作的议程。这意味着在他们的游乐场内玩耍 ,而不是引入其他工具或新门户并要求他们使用它们。

随着组织规模的扩大,风险抵抗力是自下而上建立的,但也是自上而下的——与管理层一起建立。确保经理给他们的团队足够的资源来解决安全问题,并且开发人员对创建有问题的工件不感兴趣。

为了以可持续和可扩展的方式开始“左移”,组织应该从一开始就推动归因的采用。这意味着了解每个工件是什么、它由什么组成以及它的业务功能是什么,这样我们就可以支持优先级排序并改进警报所需的工作。如果有严重警报,我们会确切地知道它是否会得到处理。当您正确完成作业并拥有资产清单(其中每个工件都分配有安全和补救策略)时,组织可以消除无休止的讨论和花费在分类上的过多时间。只有当开发人员真正将他们的安全生命周期构建到他们的工作流中时,“左移”才能达到预期的效果。作为安全专家,我们需要帮助他们这样做。


更多内容请关注 OushuDB 小课堂

目录
相关文章
|
数据库 数据安全/隐私保护 OceanBase
OceanBase数据库中,权限管理
OceanBase数据库中,权限管理
719 2
|
DataWorks 安全 数据管理
《DataWorks的合规性和安全性》
【8月更文第14天】随着大数据技术的发展和应用,数据处理平台的安全性和合规性变得尤为重要。阿里云DataWorks作为一款集数据集成、开发、治理于一体的数据中台产品,提供了全面的数据管理解决方案。本文旨在探讨DataWorks在保障数据安全与合规方面的机制和技术实现,并通过具体案例和代码示例来展示其功能。
299 2
|
Prometheus 监控 Cloud Native
Spring Boot 性能护航!Prometheus、Grafana、ELK 组合拳,点燃数字化时代应用稳定之火
【8月更文挑战第29天】在现代软件开发中,保证应用性能与稳定至关重要。Spring Boot 作为流行的 Java 框架,结合 Prometheus、Grafana 和 ELK 可显著提升监控与分析能力。Prometheus 负责收集时间序列数据,Grafana 将数据可视化,而 ELK (Elasticsearch、Logstash、Kibana)则管理并分析应用日志。通过具体实例演示了如何在 Spring Boot 应用中集成这些工具:配置 Prometheus 获取度量信息、Grafana 显示结果及 ELK 分析日志,从而帮助开发者快速定位问题,确保应用稳定高效运行。
486 1
|
存储 编译器 C++
自定义类型详解 1
自定义类型详解
|
监控 关系型数据库 MySQL
MySQL日志参数配置简介
一、全日志配置 记录所有的操作信息和登录信息;只有在全日志功能打开的时候才会记录,否则不做任何记录。 1、参数相关设置 general_log=ON |OFF (开启或关闭,也可以用0或1) grneral_log_file=/data/mysql/JSH-01.
2159 1
|
2天前
|
存储 弹性计算 人工智能
【2025云栖精华内容】 打造持续领先,全球覆盖的澎湃算力底座——通用计算产品发布与行业实践专场回顾
2025年9月24日,阿里云弹性计算团队多位产品、技术专家及服务器团队技术专家共同在【2025云栖大会】现场带来了《通用计算产品发布与行业实践》的专场论坛,本论坛聚焦弹性计算多款通用算力产品发布。同时,ECS云服务器安全能力、资源售卖模式、计算AI助手等用户体验关键环节也宣布升级,让用云更简单、更智能。海尔三翼鸟云服务负责人刘建锋先生作为特邀嘉宾,莅临现场分享了关于阿里云ECS g9i推动AIoT平台的场景落地实践。
【2025云栖精华内容】 打造持续领先,全球覆盖的澎湃算力底座——通用计算产品发布与行业实践专场回顾
|
4天前
|
云安全 数据采集 人工智能
古茗联名引爆全网,阿里云三层防护助力对抗黑产
阿里云三层校验+风险识别,为古茗每一杯奶茶保驾护航!
古茗联名引爆全网,阿里云三层防护助力对抗黑产
|
4天前
|
存储 机器学习/深度学习 人工智能
大模型微调技术:LoRA原理与实践
本文深入解析大语言模型微调中的关键技术——低秩自适应(LoRA)。通过分析全参数微调的计算瓶颈,详细阐述LoRA的数学原理、实现机制和优势特点。文章包含完整的PyTorch实现代码、性能对比实验以及实际应用场景,为开发者提供高效微调大模型的实践指南。
534 2