安全软件供应链的关键方面

小夏 科技 更新 2024-02-28

Log4j零日漏洞,SolarWind攻击以及Alex Birsan对Apple和Microsoft的黑客攻击有什么共同点?答案很简单:软件链安全。 尽管答案可能很简单,但每个示例都突出了软件链安全的不同方面。

软件链的定义取决于您正在与谁交谈以及在什么情况下交谈,但简单地说,保护软件链意味着从外部分析软件。 这可能包括开源**、商用现成 (COTS) 软件、固件、容器映像、API 以及任何其他非内部开发的资源。 乍一看,这似乎只是软件消费者的问题,他们受感染链的影响最大。 但事实并非如此。 软件生产商也有责任采取必要措施保护其应用程序免受下游风险的影响,并向用户提供有关其安全工作的透明度。

对外部软件的分析应包括主动和被动的努力,以降低风险。 这意味着编写安全性**,将易受攻击的依赖项排除在应用程序生命周期之外,持续监视新漏洞,避免不健康的依赖项,并保护整个开发生命周期免受恶意或恶意软件注入的侵害,仅举几例。 如果软件用户询问可能导致风险的实际操作和应用程序内容,则应完成所有这些操作。

在《应用安全测试的关键能力》中,Gartner 列出了软件链安全用例,并分享了每个组织都应该考虑的软件链安全问题。 让我们分解一下这些关键功能。

Gartner认为,软件链安全是保障链安全的最关键能力。 这可能看起来令人困惑或多余,但作为用例或计划的软件链安全与作为特性和功能组合的软件链安全之间存在差异。 我们正在谈论利用后者来实现前者。

与此功能关联的特性和功能可以归类为使团队能够主动降低外部软件引入的风险的特性和功能。 团队可以主动评估有问题的指标,例如维护不善的项目、安全控制不足、漏洞或恶意历史记录**、维护者声誉不佳等。 它还涉及生成和管理工件,消费者可以使用这些工件对提供商构建的软件的安全性进行自己的评估。 这可以以软件物料清单 (SBOM) 或安全实践证明的形式出现,可用于更好地了解软件给组织带来的风险。

识别用于构建应用程序的所有外部依赖项可能是一个挑战。 平均超过 75% 的应用程序来自开源项目。 要求开发团队手动跟踪他们使用的依赖项表明与现代开发实践的现实以及包管理器和依赖关系树的工作方式脱节。 但是,如果没有对这些依赖项的完全可见性,就无法跟踪哪些链威胁会影响应用程序。 这就是为什么软件组合分析(SCA)在软件链安全中发挥如此重要作用的原因。

SCA工具可以通过DevOps集成直接内置到开发管道中,以自动检测开源(有时是商业和自定义组件)。 它们还将它们与安全域、许可证和任何运行状况风险相关联,以帮助您实施策略并确保根据需要解决问题。

SCA 工具不仅可以识别依赖关系并帮助团队应对风险,还可以生成团队可以与应用程序一起提供的 SBO,从而为软件的使用者提供链的透明度。

构建应用程序并将它们打包到容器中已成为一种流行的部署方法。 这有助于团队轻松扩展部署以满足需求,克服与不同部署环境相关的问题,并支持微服务方法进行应用程序开发。 但是,在保护容器方面,现代 AppSec 实践并不总是足够的。

基本映像往往是容器中最容易扫描漏洞的方面。 事实上,许多容器注册表都在做一些自己的事情。 但是,在基础映像上添加无限数量的图层时,可能存在隐藏的问题。 为了获得逼真的风险映像,需要在生成容器映像后对其进行扫描。 因此,安全团队应优先考虑分析构成容器映像的文件结构的解决方案,以识别依赖项和相关风险。 否则,容器将成为软件链中的薄弱环节。

开发和安全团队可以花费无数的时间和金钱来保护他们的应用程序免受外部威胁,但如果他们不能安全地编写自己的应用程序,这一切都是徒劳的。 传统上,这是审查的目的,但像这样的手动工作可能效率低下且耗时。

静态应用程序安全测试 (SAST) 工具会自动扫描源并评估其是否存在潜在的安全漏洞,这些漏洞可能会导致缓冲区溢出、SQL 注入和交叉脚本等问题。 这些类型的缺陷可能很难用人眼发现,但SAST可以精确、快速地、有规律地做到这一点。 当无数高严重性漏洞可归因于简单的缺陷(例如数据清理不充分)时,使用 SAST 工具可以使开发团队避免成为上游风险。

保护软件链意味着在整个应用程序生命周期中管理风险。 这样做需要各种工具和流程,这将不可避免地产生一系列结果。 应用程序安全态势管理 (ASPM) 工具有助于在整个生命周期中自动执行所有不同的测试,同时捕获每个测试的结果。

ASPM的好处是双重的。 首先,在进行任何扫描之前,团队可以使用 ASPM 为所有测试类型定义策略,并配置每个测试的发生时间以及哪些结果应触发哪些工作流。 其次,在生成结果时,ASPM 工具可以关联和分析结果,为团队提供用于对问题进行分类和修正的单一仪表板。 简而言之,ASPM 为任何正在开发的应用程序的整个软件链提供了风险图。

开发人员是抵御**链威胁的第一道防线。 他们不仅决定利用哪些第三方依赖项来构建应用程序,还负责修复本博客中提到的工具所识别的问题。

因此,与已经所在的开发人员会面非常重要。 在编写单行之前,安全团队应根据组织可以容忍的风险量来定义策略。 扫描应直接与开发工具(如 IDE 和 SCM)配合使用,以自动触发和实施策略。 此外,识别并发回开发团队的任何问题都应包含尽可能多的信息,以帮助解决工作,例如位置、问题类型、修正指南以及与特定问题相关的教育培训选项。 在链条中,越早发现问题,就能越早得到补救。 这降低了风险,并减轻了修复所需的资源压力。

UNISCA为软件链安全方法奠定了基础。 由于几乎每个现代应用程序都使用某种形式的开源或外部组件,这些组件完全在使用它们的组织的控制之外开发,因此它们自然代表了最大的风险面。 我们的 SCA 工具直接集成到应用程序开发管道中,以自动扫描源代码**、容器映像和固件中的开源和第三方组件。 其结果是一个准确而完整的 SBOM,可以进行配置和导出以满足各种需求。 还将评估 SBOM 中识别和添加的每个组件的安全漏洞、恶意软件包、运行状况和可行性以及许可冲突。

原文链接:

相似文章

    服装供应链 柔性供应链的构建与管理

    这种趋势仍然是新的 下面在冷频时尚圈的讨论,是对行业问题的探讨和总结。这些分享是集体智慧的结晶。不代表冷云个人观点 希望更多的业内人士能以此受益!什么是柔性链条?.为什么需要柔性 链条?什么样的 链条是柔性 链条?关于柔性 链,首先要明确其概念 即能够根据客户需求的变化,及时 准确地提供所需数量产品...

    什么是供应链,供应链管理的核心是什么?

    作为现代商业运营的核心组成部分,该连锁店是一个复杂而动态的网络,连接着从商家到制造商再到分销商和最终消费者的一切。链管理是保证该网络高效有序运行的关键流程。那么,什么是链,链管理的核心是什么?首先,让我们了解 链。链是由多个企业 组织和个人组成的网络,它们通过物理 信息和管理手段相互连接,共同完成从...

    开源安全供应链在2024年成熟

    开源安全一直很重要,但我们过去常常假装否认它。我们不能再偷懒了。翻译自 开源安全供应链成长的一年 作者 Steven JVaughan Nichols 别名 SJVN,一直在撰写有关技术和技术业务的文章,从 CP M 到尖端的 PC 操作系统,从 BPS 到快速的互联网连接,以及 wordstar ...

    确保产业链供应链安全稳定

    产业链是现代经济的重要形态,其韧性和安全水平反映了一个国家经济抵御风险的能力,对现代工业体系的建设具有重要影响。经济工作会议提出,要提高产业链的韧性和安全水平。面对新变化 新挑战,是构建现代产业体系 新发展格局的重要路径,也是提升我国工业国际竞争力 应对风险挑战 维护经济安全的必然要求。当前,新一轮...

    供应链安全认证ISO28000服务平台

    ISO 链安全认证是国际公认的标准,旨在保护公司的 链系统免受各种安全威胁。该认证为企业提供了一种全面的方法来评估 管理和提高其 链的安全性。下面就为大家深入分析一下ISO 链安全认证。.什么是ISO 链安全认证?ISO 链安全认证是一项基于风险管理的标准,旨在保护公司的 链系统免受威胁。该认证提供...