0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么是Shift-Left安全?

北汇信息POLELINK 2023-05-16 11:31 次阅读

在软件开发中,Shift-Left是一种帮助开发人员在软件开发过程早期发现漏洞和编码错误的做法。Shift-Left Security是一种有效的方法,它专注于安全性,并有助于在软件发布之前很久就解决代码中的任何安全问题。

在这里,我们概述了什么是Shift-Left Security,并提供了有关静态分析器如何帮助您在SDLC中及早发现安全漏洞的指导。

什么是Shift-Left Security?

Shift-Left Security,或对安全采取“Shift-Left方法”,是在软件开发生命周期 (SDLC) 的早期执行安全检查或与安全相关的任务的想法。Shift-Left通常应用于测试,目的是根据执行时间提高这些任务的效率,并确保这些必要的任务不会留到开发周期结束,并且在最坏的情况下,完全省略。

与更传统的方法不同,即等到部署的最后阶段才测试应用程序并扫描安全漏洞,在SDLC中向左转移有助于避免下游的长时间延迟,因为它允许您在集成、测试、记录甚至发布代码之前发现代码中的潜在安全风险!

作为更大的Shift-Left运动的一部分,Shift-Left Security意味着在开发过程的早期(或线性开发时间线的左侧)检查安全问题,以便您可以识别编码问题并更快地修复缺陷,以免它们变得过于昂贵或难以管理。

Shift-Left 测试 是一种通过避免在周期后期对代码和测试进行返工来提高代码质量和减少测试工作量的方法。这种类型的测试已经是一个既定的原则。

因此,Shift-Left Security建立在相同的基本过程和概念之上,在开发周期的早期优先考虑漏洞检测和预防,构成了更广泛的DevOps和DevSecOps自动化的一部分。

为什么Shift-Left Security对DevOps有益?

将安全性向Shift-Left动旨在提高最终产品的安全性,鼓励合作低成本,并加快上市时间。

等到开发过程结束可能会导致成本的修复,尤其是在需要重大架构更改的情况下。另一方面,尽早发现和修复错误可能意味着在代码缺陷上花费的时间和金钱更少。现代DevOps团队通过为项目使用CI/CD pipeline的开发人员自动化安全门控和反馈系统,为开发人员提供Shift-Left Security流程支持。

许多开发人员也更喜欢这种早期方法的效率,因为他们不会因为经常切换任务而中断。签入代码后获得静态分析、动态分析或测试结果所需的时间越短,开发人员就越有可能对最近编写的代码记忆犹新。您甚至可以使用节省时间的解决方案,例如IDE和Klocwork或Helix QAC插件,甚至在签入代码之前即可获得结果,从而进一步简化流程。在停止处理任务之前获取结果比等到签入代码和持续集成 (CI) 运行分析要快得多。

随着越来越多的组织意识到Shift-Left Security的好处,Shift-Left的应用领域也在不断增长。例如,据《福布斯》报道 ,将安全性考虑纳入到云计算中已成为一个重要趋势。

Shift-Left Security最佳实践

如果已准备好开始在pipeline中将安全性向Shift-Left动,则可以开始实施以下一些最佳做法:

1. 评估您当前的软件开发流程。

您当前在开发pipeline中的哪个位置测试安全漏洞?它会在这个过程的早期发生吗?是否有任何瀑布式方法变得更加敏捷(例如,不是迭代测试缺陷,而是集成可以持续监控代码和识别安全漏洞的安全工具)?

评估开发pipeline的工作原理以及代码如何从开发转移到生产。恶意行为者可能会找到机会在这些阶段中的任何一个阶段更改代码,因此早期检查可以经常内置到您的整个pipeline中,并实现版本控制和以IP为中心的设计等技术,以确保开发安全。一个好的开始是检查现有的文档,如果存在差距,与DevOps和SecOps成员交谈,以识别和记录缺失的组件。

2. 建立新的Shift-Left Security策略。

一旦您对当前方法的位置有了很好的了解,请创建一个文档来定义您的新Shift-Left策略。此策略可能包括将安全性向左转移的总体目标、组织将如何定义Shift-Left以及所涉及的流程和工具、如何衡量成功,以及个人和团队责任。

3. 对开发团队进行安全编码最佳实践方面的培训。

Shift-Left Security培训 是一个持续的过程,不仅针对开发人员——组织需要为能够支持和优化Shift-Left安全性的合适团队(如产品、开发和QA)提供培训。随着对代码的更多关注,以及不同的团队成员知道要寻找什么和使用哪些工具,安全测试将成为您整体开发战略的重要早期步骤。

安全 编码标准 提供了由具有多年知识的安全专家编制的规则和指南,有助于预防、检测和消除可能危及软件安全的错误。主要安全标准包括CERT CWE,OWASP,DISA STIG,IEC 62443等。对团队进行此类标准方面的培训并实施静态分析工具以在整个代码库中强制实施编码标准,将保护您的代码在流程的早期免受编码漏洞的影响。

4. 自动化安全流程。

作为 CI/CD 流程的一部分,自动化有助于支持整个过程中所需的持续测试。您可以使用多种方法来自动化安全性,包括静态应用程序系统测试 (SAST)、动态应用程序安全测试 (DAST)、交互式应用程序安全测试 (IAST) 和运行时应用程序自我保护(RASP)。这些方法在自动化安全性方面都很重要,但对于Shift-Left,SAST是最适用的。借助SAST,您将能够在开发pipeline的早期检测漏洞。

Perforce 静态分析工具如何帮助实现Shift-Left Security

静态分析可以在开发过程的早期,在软件测试开始之前执行。这种类型的分析通过查找国际公认的安全编码标准的已知漏洞模式来发现问题,并检测代码中的早期缺陷。它还提供快速反馈以及漏洞及其原因的确切位置。

静态分析工具(如Perforce的Helix QACKlocwork)与开发人员工具链(包括IDE插件)和CI / CD pipeline无缝集成,以实现安全性的持续合规自动化。这些类型的工具使您和您的开发团队甚至可以在提交代码之前检查代码是否存在漏洞,或者之后立即在CI系统中进行安全检查。

Helix QAC是一种静态分析和SAST工具,可根据风险的严重程度确定编码问题的优先级,针对最关键的缺陷,并提供准确的诊断和可操作的结果,从而帮助您立即修复最重要的问题,从而帮助在SDLC的早期发现安全漏洞。

Klocwork是一种静态分析和SAST工具 ,可在引入安全漏洞时发现这些漏洞,帮助您尽早修复漏洞,并提供符合行业安全标准以及您自己的组织要求的合规性。

亲眼看看值得信赖的工具Helix QAC和Klocwork如何帮助您的组织将安全性向左转移。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    4983

    文章

    18295

    浏览量

    288609
  • 嵌入式软件测试

    关注

    1

    文章

    24

    浏览量

    6043
收藏 人收藏

    评论

    相关推荐

    ​PLC左移指令和右移指令

    在PLC(可编程逻辑控制器)中,左移(Shift Left)指令和右移(Shift Right)指令通常用于位级操作,对位寄存器中的位进行移位操作。这些指令可以用于实现数据的移位和位操作功能。
    发表于 03-15 14:12 746次阅读
    ​PLC左移指令和右移指令

    如何使用PSoC 61进行安全启动?

    我们知道所有关于安全启动的文档都是基于 PSoC 62、63 或 64 的。 因为安全启动机制包括 M0+ 和 M4。 我们想知道如何使用 PSoC 61 进行安全启动。(\"PSoC
    发表于 01-30 07:51

    Commvault SHIFT大会·中国站圆满落幕

    1月18日,Commvault SHIFT 大会 · 中国站圆满落幕!本次大会以“驱动网络弹性新转变”为主题,Commvault携手行业专家,通过主题演讲、客座分享、观点碰撞等形式,为参会者带来网络弹性前沿趋势、创新方法和最佳实践的精彩分享!
    的头像 发表于 01-23 14:46 494次阅读

    传音Infinix在CES 2024上推出最新突破性技术E-Color Shift

    近日,传音旗下品牌Infinix在CES 2024上推出最新突破性技术E-Color Shift,可以使手机背面面板在不消耗电力的情况下改变并保持鲜艳的颜色。
    的头像 发表于 01-23 11:39 620次阅读

    易灵思Ti180报错分析cannot connect to more than 4 different clocks per region on left and right

    报错:cannot connect to more than 4 different clocks per region on left and right   今天在Ti180分配LVDS的时候
    的头像 发表于 11-19 16:27 651次阅读
    易灵思Ti180报错分析cannot connect to more than 4 different clocks per region on <b class='flag-5'>left</b> and right

    西门子plc编程的快捷键有哪些

    Shift相关的:   Shift+F3:梯形图进入监控模式(可在线编辑)。   Shift+F5:并联常开接点输入。   Shift+F6:并联常闭接点输入。
    的头像 发表于 10-10 12:39 1492次阅读

    使用STM32安全启动与固件更新

    STM32 X-CUBE-SBSFU 软件包已经发布,提供了安全启动(Secure Boot)和安全固件更新(SecureFirmware Update)功能。安全启动和安全固件更新使
    发表于 09-11 07:35

    STM32安全技术培训

    已经选择STM32芯片,如何选择STM32安全技术来实现安全需求• 基于安全需求,如何选择STM32芯片以及STM32安全技术
    发表于 09-08 07:02

    STM32安全框架助力客户应对安全挑战

    内容包含:安全框架:面向开发人员、应用要求:应用案例与安全功能、应用要求:应用案例与安全功能、MCU/MPU独立架构等。
    发表于 09-05 06:35

    Arm CryptoCell-312生成和验证安全引导和安全调试证书链指南

    安全引导和安全调试是CryptoCell(CC)引导服务的基本功能。 安全引导和安全调试基于使用RSA私钥和公钥方案的证书链机制。 本教程介绍安全
    发表于 08-24 06:09

    基于分级安全的OpenHarmony架构设计

    本文源自 OpenHarmony TSC 官方《峰会回顾第1期 | 基于分级安全的OpenHarmony架构设计》 演讲嘉宾 | 付天福 回顾整理 | 廖涛 排版校对 | 李萍萍 嘉宾简介 付天福
    发表于 08-04 10:39

    Temporal-Shift-Module在 FPGA上解决视频理解问题的实用性和性能

    在这个项目中,将在线和离线 TSM 网络部署到 FPGA,通过 2D CNN 执行视频理解任务。 介绍 在这个项目中,展示了 Temporal-Shift-Module ( https
    的头像 发表于 07-07 10:47 438次阅读
    Temporal-<b class='flag-5'>Shift</b>-Module在 FPGA上解决视频理解问题的实用性和性能

    在使用left jion时,on和where条件的区别

    前天写SQL时本想通过 A left B join on and 后面的条件来使查出的两条记录变成一条,奈何发现还是有两条。 后来发现 join on and 不会过滤结果记录条数,只会根据
    的头像 发表于 06-16 14:46 367次阅读
    在使用<b class='flag-5'>left</b> jion时,on和where条件的区别