Apache Log4j 和 Log4Shell 两大事件的发生,将软件物料清单(Software Bill of Materials, SBOM)推向安全防护前沿,成为企业保护其软件供应链的方式之一。今年5月,美国总统拜登发布行政命令,要求 IT 供应商必须提供 SBOM 才能够与美国政府进行合作。受此影响,越来越多的企业也开始将 SBOM 集成到其 DevSecOps 流程中。

那么 SBOM 是什么呢?我们通常将 SBOM 笼统地描述为成分列表,就好比食物成分表会罗列使用到的材料,我们可以通过 SBOM 去了解应用程序、服务、包等。严格来说,SBOM 并不是解决软件供应链安全问题的完整解决方案,但它是保护软件供应链的关键部分。

SBOM 在未来将作为软件开发框架(Software Development Framework, SDF)的主要组件。SBOM 通过包含软件组件和依赖项列表来增加软件交付的透明度,如果没有 SBOM,软件依赖项、开源或商业许可问题、已知漏洞或其他潜在恶意成分的可见性就会降低。如果企业使用不含 SBOM 的软件,且不进行额外的软件尽调分析,可能需要承担一定的安全风险。

虽然采用 SBOM 对提高安全性产生积极作用,但在 SBOM 真正发挥作用前,企业需要进行大量准备工作。这样看来,虽然 SBOM 能够在一定程度上保障企业的软件供应链安全,但实践起来还是存在一定的阻碍和困难。

选择 SBOM 提供商需要注意什么?

企业在选择 SBOM 提供商时要注意的主要事项包括:

  • 理想情况下,供应商应当提供其交付的每一个软件的 SBOM。而软件用户将使用软件成分分析(SCA)生成新的 SBOM 以用于提供给客户。软件供应链中最终交付时的 SBOM 应当包含一份全面、准确的清单,并列出所涉及的组件和版本。这就意味着供应链中每个环节的软件供应商都需要提供全面的 SBOM,否则最终的 SBOM 将会不准确或不完整。

  • SBOM 存在多个标准,包括 CycloneDx、SPDX 和 SWID Tag。大多数企业都希望 SBOM 包含依赖关系、列表、已知漏洞(CVE-ID)和软件许可证信息,但不同的 SBOM 标准对应的格式也不同,其包含的信息也会有所差异,这也使得 SBOM 不容易成为一个通用的解决方案。

  • DevSecOps 团队需要认识到 SBOM 本身也是一个需要保护的数字文档。SBOM 和 组织都需要确保 SBOM 不会受到损害。企业需要通过集成检查和数字签名来防止篡改,确保 SBOM 的完整性和真实性。许多企业在收集或维护 SBOM 方面仅仅停留在表面而未进行深入研究。虽然 SBOM 可以增加软件供应链的可见性和透明度,但与此同时也给企业带来额外挑战,因为企业需要使用新的工具和实施新的流程。

考虑到这些注意事项后,如果企业没实施适当的 DevSecOps 流程,即使是最好的 SBOM 提供商也无济于事。通过 SBOM 来发现软件供应链中的新漏洞对企业来说十分有价值,但如果企业并没有制定和执行相应的 SBOM 使用流程,那 SBOM 中的信息就只是目录中的文件毫无意义。

SLSA 与 SBOM 的关联

当然,SBOM 也不是“灵丹妙药”,它无法涵盖软件供应链的所有领域。因此,实施跨 CI/CD 流水线的安全监控和程序检查并在部署后阶段覆盖运行时,使用 SLSA 补充 SBOM 是必要且明智的。SLSA 为企业提供了框架和指南,以便更好地实施 SBOM 和其他安全措施。

但企业需要明白的是,SBOM 和 SLSA 的目标是保障软件供应链安全,它们是保护软件供应链的两个组成部分而非完整的软件供应链安全解决方案。SLSA 和 SBOM 针对的领域和问题都不同,企业不能只是简单的将其采购回来,就指望所有的安全问题都被完美解决。

SBOM 和 SLSA 的采用虽然尚未成为主流,但仍然是保障软件供应链安全的一个良好开端。SBOM 提供明细,SLSA 详细说明了如何以安全的方式生成这些信息。软件公司可以利用 SBOM 与 SLSA 作为竞争优势,也作为软件安全生产的保证。

买家手册:企业在选择 SBOM 供应商时需要注意什么?的更多相关文章

  1. 企业如何选择最佳的SSL

    如果你的企业有意采购SSL,那么本文可以给一个很好的方向.在本文中,我们将先简要介绍SSL定义及其工作原理,并探讨目前各种可用的SSL证书类型以及企业如何选择最佳的SSL. SSL定义 SSL及传输层 ...

  2. 购买阿里云的云服务器时选择镜像centos时应该选择哪个版本

    购买阿里云的云服务器时选择镜像centos时应该选择哪个版本 方法/步骤首先,我们要清楚的便是每个系统之间的差别,以及在阿里云上的差别:1. Windows1.1) 系统内含正版激活.1.2) 适合于 ...

  3. android -------- Eclipse选择NDK路径时 “Not a valid NDK directory”

    在 Eclipse选择NDK路径时 出现 “Not a valid NDK directory”  这样的错误 解决方式1 在你安装的ndk的主目录下创建一个ndk-build空文件,然后重新打开对话 ...

  4. 企业邮箱选择,商务办公为什么选TOM企业邮箱?

    企业邮箱是工作中的重要工具,它可以帮助我们更规范的上传下达.更高效的管理工作,也是拓展合作伙伴的敲门砖及必杀技.比如写一封诚意满满的合作邀请,再比如重要关头写一封合作协议.毫不夸张,企业邮箱不仅能节省 ...

  5. 企业该选择什么样的CRM系统

    不论您是需要CRM系统来优化业务流程,还是准备更换一款新的CRM系统,在这之前都应该先明确企业的需求,并了解CRM的哪些功能能够对企业有所帮助.例如,企业的管理者想了解每个销售人员的业绩情况,那么就应 ...

  6. 企业用户选择Java多于.NET的 5个原因

    .NET 和 Java 是当今社会最受欢迎的两种编程语言, 长期的发展和强大的功能使他们足以在编程界立足. 十余年的争论也没得到结果的一个话题就是——他们哪个更好一些? 今天, 我们不再去讨论JAVA ...

  7. 太多选择——企业如何选择合适的BI工具?

    在没认清现状前,企业当然不能一言不合就上BI. BI不同于一般的企业管理软件,不能简单归类为类似用于提高管理的ERP和WMS,或用于提高企业效率的OA.BPM.BI的本质应该是通过展现数据,用于加强企 ...

  8. TDateTimePicker 选择最小日期时异常处理

    TDateTimePicker 控件属性窗体选择最小日期,运行时选择时可以看到的最小的日期,但是选择最小时就异常 :date is less than minimum of  ***     解决过程 ...

  9. .Net Core vs .Net Framework 如何为一个应用程序选择一个运行时(翻译)

    .Net Core是下一件大事吗?我已经使用了一段时间了,我倾向认为它是.事实上,我们推测,在2018年,对这项技术熟练的开发人员将会有巨大的需求.但是它和.Net Framework的区别是什么?你 ...

  10. 企业如何选择合适的BI工具?

    在没认清现状前,企业当然不能一言不合就上BI. BI不同于一般的企业管理软件,不能简单归类为类似用于提高管理的ERP和WMS,或用于提高企业效率的OA.BPM.BI的本质应该是通过展现数据,用于加强企 ...

随机推荐

  1. 搞懂Event Loop

    本文关键: V8是单线程的 任务队列排队执行 抽出io命令抽出到evenloop线程,消息线程,区别与主线程.(同步和异步) 微任务和宏任务执行顺序 重绘和回流 以上流程无限循环 可以这样理解,一个人 ...

  2. 一文读懂计算机底层网络原理,包括TCP、UDP、header,什么是包、帧、段等关键问题

    说到计算机网络原理,大家可能马上联想到,七层协议,传输层,链路层,三次握手四次挥手:前端的同学,还会想到我们用Crome F12的network里面的headers,状态码等.后端同学可能会联想到,抓 ...

  3. 服务器没有开放3306端口 远程访问MySQL数据库方法

    一.前言 ​ 当装有MySQL的服务器为了防止数据库被黑,提高安全性,把3306端口禁止掉,禁止对外访问,我之前写过一篇是借助跳板机的SSH隧道来访问实现安全,这种情况依然需要开放3306端口和使用一 ...

  4. CDQZ DS 题单总结(上)

    Preview: 个人认为是一套非常好的题单,能在各个方面练习 DS 水平,并且很多题型也是比赛当中的经典题 题单链接 Challenge 0: 简单的数组,懒得写了. Challenge 1: 考虑 ...

  5. 牛客小白月赛43 F 全体集合

    题目链接 F 全体集合 题目大意 给出\(n\)个点\(m\)条边的无向图,给出\(k\)个点上分别有一个人,每个人一次只能走到一个相邻的节点,问有没有一种可能让这些人都走到一个点. 思路 考虑使用二 ...

  6. 【总结】IntelliJ IDEA 插件

    1..iBATIS/MyBatis plugin轻松通过快捷键找到MyBatis中对应的Mapper和XML,CTRL+ALT+B 2.iBATIS/MyBatis plugin轻松通过快捷键找到My ...

  7. 华企盾DSC客户端右键菜单不显示常见处理方法

    1.检查控制台"客户端不显示右键菜单项" 2.未分发模块权限,若以分配可尝试去掉重新分配模块 3.检查杀毒软件是否杀掉了5097目录的文件(覆盖安装,以上两条没问题,这条比较常见) ...

  8. python tkinter 使用(八)

    python tkinter 使用(八) 本文主要讲下tkinter库中的其他的一些模块,如simpleDialog,scrollerText等. 1: simpleDialog simpledial ...

  9. Windows系统激活工具HK

    下载:https://wwsi.lanzoum.com/iyUNn10e7foh 密码:g05d GitHub开源 .无毒 原文链接:https://github.com/zbezj/HEU_KMS_ ...

  10. HP LoadRunner 11.00安装+破解+汉化

    里面包含多个破解码,最高支持6.5w个并发: https://blog.csdn.net/xianjie0318/article/details/78625980