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如何帮助您的组织将安全性向左转移。

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

    关注

    5186

    文章

    20151

    浏览量

    328890
  • 嵌入式软件测试

    关注

    2

    文章

    27

    浏览量

    6234
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    请问CW32L052C8T6这种安全性低功耗MCU的安全固件部分怎么实现?

    请问,CW32L052C8T6这种安全性低功耗MCU的安全固件部分怎么实现?
    发表于 12-05 07:19

    在物联网设备面临的多种安全威胁中,数据传输安全威胁和设备身份安全威胁有何本质区别?

    在物联网设备面临的多种安全威胁中,数据传输安全威胁和设备身份安全威胁有何本质区别,实际应用中哪一种更难防范?
    发表于 11-18 06:41

    芯源半导体安全芯片技术原理

    物联网设备涵盖智能家居、工业控制、智能交通、医疗健康等多个领域,由于其数量庞大、分布广泛、接入方式多样等特点,面临的安全威胁复杂多样。​ 数据传输安全威胁:设备在与云端、其他设备进行数据交互时,数据
    发表于 11-13 07:29

    广汽传祺影酷荣膺ASEAN NCAP五星安全认证

    10月28-29日,在ASEAN NCAP(东盟新车评价规程)和MIROS(马来西亚道路交通安全研究院)联合主办的SHIFT 2025(未来汽车安全与整体创新国际会议)上,广汽集团凭借卓越的车辆
    的头像 发表于 10-31 15:42 405次阅读

    电机维修安全注意事项

    电机维修涉及电、机械、高温等多种危险,必须严格遵守安全规程。以下注意事项分为维修前、维修中和维修后三个阶段。 一、 维修前准备阶段 绝对断电,安全隔离 彻底断电:不仅要断开开关,还必须断开电机的主
    发表于 10-29 13:14

    汽车配件:使用VIN码查询API精准匹配车型配件,提升用户信任

    是17位字符组成的全球唯一标识,包含核心信息: $$ text{VIN} = left(text{厂商}right) + left(text{车型特征}right) + left(text{生产序列
    的头像 发表于 09-28 15:18 343次阅读
    汽车配件:使用VIN码查询API精准匹配车型配件,提升用户信任

    无法将 XOM 设置为非安全区域,为什么?

    在 M2351 中,我将非安全边界设置为0x40000。 非安全区域应为 0x10040000 ~ 0x1007ffff。 然后,我将 XOM 设置为 0x10060000,但它失败了。 非安全区域不支持 M2351 中的 XO
    发表于 08-27 07:01

    Xilinx Shift RAM IP概述和主要功能

    Xilinx Shift RAM IP 是 AMD Xilinx 提供的一个 LogiCORE IP 核,用于在 FPGA 中实现高效的移位寄存器(Shift Register)。该 IP 核利用
    的头像 发表于 05-14 09:36 838次阅读

    汽车安全技术全面解析#主动安全、被动安全和ADAS

    汽车安全技术包括主动安全、被动安全以及ADAS/自动驾驶辅助等多个层面。 主动安全系统 通过传感器和智能算法在事故发生前对危险进行感知并主动干预; 被动
    的头像 发表于 05-10 15:15 3366次阅读
    汽车<b class='flag-5'>安全</b>技术全面解析#主动<b class='flag-5'>安全</b>、被动<b class='flag-5'>安全</b>和ADAS

    直流充电安全测试负载方案解析

    随着电动汽车充电功率的快速提升和充电场景的复杂化,直流充电设备的安全性能成为行业关注的核心问题。充电桩、动力电池及车载充电系统在实际运行中可能面临过压、过流、绝缘故障等多重安全风险,因此亟需通过
    发表于 03-13 14:38

    DLP4500如何自动产生graycode和phase shift pattern?

    我在看DLP的sdk介绍和解析中说,DLP4500可以自动产生graycode和phase shift pattern,但是我没有找到方法。 请问要怎么实现呢?具体的步骤是什么? 期待得到回复!谢谢
    发表于 02-27 08:19

    dlpc3433是否支持通过pixel shift来实现atw的功能?

    dlpc3433是否支持通过pixel shift来实现atw的功能,已帮助改善拖影和color break问题
    发表于 02-26 08:19

    ADS8638 Dout 8个通道中,前面七个都正常输出,第8个通道则没有,为什么?

    1、是因为配置不对吗? reg [15:0]shift_out_reg; always @ (posedge clk_i) begin if(state==Confg_Aux
    发表于 12-24 06:41

    2024 Commvault SHIFT全球巡演中国站完美收官

    近日,2024 Commvault SHIFT全球巡演 · 中国站完美收官。大会汇聚数据安全和管理领域的知名专家、业务掌舵人和生态伙伴,聚焦混合云趋势下的数据保护需求变革,探讨企业如何借助创新平台驱动全新范式,成就持续业务的竞争优势,呈现了一场思想和技术的盛宴。
    的头像 发表于 12-10 16:44 1216次阅读