引言
我们生活在一个软件触及社会方方面面的时代。软件涉及从关键基础设施、数字商务到国家安全的各个方面。事实上,截至本文撰写之时,世界经济论坛 (WEF) 预测,到2022年底,全球60%的国内生产总值 (GDP) 将与数字系统挂钩 (www3.weforum.org/docs/WEF_Responsible_Digital_Transformation.pdf)。然而,同一份 WEF 报告发现,只有 45% 的人信任推动现代经济和社会发展的技术。这种缺乏信任的部分原因可以追溯到多年来发生的重大数字数据泄露事件以及软件供应链长期存在的透明度问题。
软件供应链攻击并非新现象,对代码信任的担忧可以追溯到 1984 年 Ken Thompson 著名的“对信任的反思”论文,Thompson 在论文中讨论了无法信任非自己编写的代码的问题。虽然从外部来源使用的代码可能不可信或完全是恶意的,但近年来随着软件供应链攻击的加速,这种说法的表现形式只会更加严重。出于各种动机的恶意行为者已经意识到,他们不仅可以针对单个实体,还可以破坏广泛使用的软件(无论是专有软件还是开源软件),并对整个消费者生态系统产生连锁影响。
随着这些事件的加速,组织已加大努力,以了解软件供应链的挑战、复杂性和事件,并实施了安全措施以减轻相关风险。云原生计算基金会 (CNCF) 编制了一份自 2003 年以来的供应链入侵目录 (http://github.com/cncf/tag-security/tree/main/supply-chain-security/compromise)。该目录涵盖了各种方法造成的供应链入侵,例如利用开发人员工具、开发人员疏忽、恶意维护者,甚至攻击链(即多个入侵链在一起以发起攻击)。
在本文讨论的一些里程碑式的案例(如 SolarWinds、Log4j 等)之前,美国国家情报总监办公室 (ODNI) 于 2017 年发表了一篇论文(http://dni.gov/files/NCSC/documents/supplychain/20190327-Software-Supply-Chain-Attacks02.pdf),称其为软件供应链攻击的分水岭之年。该文件列出了 2017 年发生的几起重大软件供应链攻击,这些攻击不仅影响了商业领袖,还影响了支持美国政府的组织。其中一些攻击来自国家行为。ODNI 论文指出,许多软件开发和分销渠道缺乏适当的安全性。ODNI 还描述了一些恶意行为者由于某些组织的网络健康状况较好而向上游发展。对于恶意行为者来说,从上游大规模攻击下游软件消费者通常比针对单个组织更有效率。一些软件供应链攻击可能是无差别的,针对任何消费者,而另一些攻击可能会在知道某些下游消费者的情况下寻找特定的上游软件生产商。
不可否认,数字化系统带来了前所未有的效率、生产力和创新。然而,同样是这些数字化连接软件赋能系统,现在已经产生了人们才刚刚开始理解的系统性风险。复杂的相互依赖关系会增加系统性风险,而不难理解,现有的软件生态系统和数字系统并不复杂。恶意行为者也意识到了针对软件供应链的价值,技术研究行业领导者 Gartner 预测,到 2025 年,约有 45% 的组织将遭受软件供应链攻击。一些人认为这个估计可能偏低,Sonatype 等组织发布的 2022 年报告 (http://sonatype.com/state-of the-software-supply-chain/introduction) 显示,过去三年来,软件供应链攻击每年增长 742%。
随着引人注目的软件供应链攻击事件增多,我们现在看到政府和私营部门组织做出了雄心勃勃的努力。在美国,白宫发布了第 14028 号行政命令“改善国家网络安全”(http://whitehouse.gov/briefing room/presidential-actions/2021/05/12/executive-order-on-improving the-nations-cybersecurity),其中有一节专门用于加强软件供应链安全。该命令包括一个关于组织(包括联邦政府)使用的软件普遍缺乏透明度的部分。
在本书中,我们将更详细地讨论相关的软件供应链事件、行业活动、新兴解决方案以及在保护软件供应链方面仍然存在的重大挑战。
供应链安全的重要性
在深入探讨软件供应链威胁以及新兴框架和指导的具体细节之前,我们应该首先讨论一下为什么这是一个影响现代社会方方面面的关键问题。如前所述,数字平台正迅速影响全球一半以上的经济产出。这些数字平台和系统的动力来自软件,其中大部分是开源软件 (OSS) 组件。OSS 的使用在现代软件生态系统的大部分领域中无处不在。最近的一项研究 (http://synopsys .com/content/dam/synopsys/sig-assets/reports/rep-ossra-2022.pdf) 发现,97% 的现代软件代码库包含 OSS,不仅包含 OSS,而且超过一半的代码库都是 OSS。
OSS 现在已从根本上融入到社会上一些最关键的基础设施和系统中。研究表明,交通运输、金融服务和制造业等行业的 90% 以上的代码库都包含 OSS。电信和医疗保健等行业也存在同样的趋势。在美国,国防部 (DoD) 发布了一份题为“软件开发和开源软件”的备忘录 (http://dodcio.defense.gov/Portals/0/Documents/Library/SoftwareDev OpenSource.pdf)。该备忘录是其更广泛的软件现代化战略 (https://dodcio.defense.gov/portals/0/documents/library/softwaredev-opensource.pdf) 的一部分,称 OSS 是“软件定义世界的基石,对于更快、更灵活地交付软件至关重要,这是其软件现代化工作的关键。”软件现代化战略指出,“安全、快速地交付弹性软件功能的能力是一种竞争优势,将决定未来的冲突。”
正如国防部所强调的那样,创新使用软件不仅对国家安全目的至关重要,而且对整个社会也至关重要。在美国众议院科学、空间和技术委员会举行的题为“保护数字公共资源:改善开源软件生态系统的健康”的听证会上 (www.congress.gov/event/117th-congress/house-event/114727),多位民选官员和行业专家证实了弹性 OSS 生态系统的重要性。国会议员比尔·福斯特 (Bill Foster) 称 OSS 是“数字生态系统的隐藏劳动力”。国会女议员海莉·史蒂文斯 (Haley Stevens) 表示,“充满活力的开源生态系统是美国竞争力和增长的引擎。” 2022 年白宫主办的开源软件安全峰会强调,大多数主要软件包都包含 OSS,包括国家安全界使用的软件 (www.whitehouse.gov/briefing-room/statements-releases/2022/01/13/readout of-white-house-meeting-on-software-security)。
许多人开始认为 OSS 是社会中如此重要的一个方面,因此也应该被视为关键基础设施,将其与州际高速公路、电网、水处理和其他基本社会基础设施进行比较 (http://hbr.org/2021/09/the-digital-economy-runs-on-open source-heres-how-to-protect-it)。该论点还声称,将 OSS 指定为关键基础设施将带来额外的资源、跨部门协调、公众意识和对话。
尽管 OSS 无处不在,并且对国家安全、商业行业和社会都很重要,但可以说,它的安全问题一直被忽视。在一篇题为“开源安全:数字基础设施如何建立在纸牌屋上”(http://lawfareblog.com/open-source-security how-digital-infrastructure-built-house-cards)的文章中,研究员 Chinmayi Sharma 指出,开源软件及其相关漏洞普遍存在于所有关键基础设施领域,由于缺乏资源和激励措施,对社会构成了系统性风险。
恶意行为者也注意到了这种缺乏关注的情况,一些研究表明,我们已经看到软件供应链攻击在 2021 年同比增长了 650%。这并不是一个独特的现象,2020 年的增长幅度超过 400%。这些急剧的增长也反映在云原生计算基金会 (CNCF) 的供应链攻击目录等来源中。
软件供应链攻击的这种上升也得到了大西洋理事会等组织的研究支持,其研究报告名为“破坏信任:不安全软件供应链中的危机阴影”白皮书 (http://atlanticcouncil.org/wp-content/uploads/2020/07/Breaking-trust-Shades of-crisis-across-an-insecure-software-supply-chain.pdf)。他们的研究表明,软件供应链攻击急剧增加,第三方应用程序和 OSS 是主要攻击媒介。该报告记录了过去十年中发生的 100 多起软件供应链攻击,攻击媒介多种多样,例如劫持更新、恶意依赖项、受损软件开发平台和账户泄露。这不仅表明恶意行为者持续且越来越多地使用软件供应链攻击,而且由于现代软件生态系统的复杂性,恶意行为者可以使用多种攻击媒介来危害下游软件消费者。正如报告所示,这些攻击不仅影响了数百万用户,而且还迅速成为现代数字社会中民族国家冲突和参与的标准化方法。国家情报总监办公室 (ODNI) 在其 2017 年出版物 (http://dni.gov/files/NCSC/documents/supplychain/20190327-Software-Supply-Chain-Attacks02.pdf) 中也强调了恶意国家行为者的关注。
受到攻击的不仅仅是 OSS 组件。恶意行为者还瞄准托管服务提供商 (MSP)、云服务提供商 (CSP) 和其他几个实体,所有这些实体在现代软件生态系统中都扮演着不同的角色。
恶意行为者已经意识到针对软件供应链组件或供应商并造成巨大的下游影响的成果,这比单独针对相同数量的受害者更有效率。在这本书中,我们将讨论从软件供应链威胁的背景、值得注意的事件、新兴指导、技术能力和最佳实践到我们未来的发展方向等内容。
本书内容
本书涵盖了与软件透明度和软件供应链安全相关的新兴讨论和挑战的相关主题。其中包括软件供应链威胁的详细背景、现有方法以及应对这一指数级相关威胁的创新工具、技术和流程的兴起。讨论将包括这些威胁对社会几乎所有方面的影响,以及为各利益相关者提供如何应对这些威胁的实用指导。它将涵盖新兴法规及其影响,以及对我们作为一个行业和社会未来走向的预测。
第 1 章:软件供应链威胁背景 本章概述了核心主题,例如攻击者的动机和软件供应链攻击的剖析以及相关的里程碑案例。
第 2 章:现有方法 - 传统供应商风险管理 本章回顾了现有的软件安全方法,例如传统供应商风险管理、应用程序安全模型以及哈希和代码签名等方法。
第 3 章:漏洞数据库和评分方法 本章讨论现有和新兴的漏洞数据库,以及用于对软件和应用程序中的漏洞进行评分和优先级排序的常用方法。
第 4 章:软件物料清单的兴起 本章讨论了 SBOM 概念的起源,包括早期的失败和成功以及为其成熟做出贡献的美国联邦和行业组织。
第 5 章:软件透明度的挑战 本章重点介绍与软件透明度相关的挑战,例如开源代码和专有代码以及固件和嵌入式软件之间的差异。
第 6 章:云和容器化 本章回顾了 IT 的发展,包括云和容器化,以及软件即服务 (SaaS) 领域中与软件透明度相关的复杂性。本章还介绍了与 DevSecOps 相关的工作。
第 7 章:现有和新兴商业指南 本章讨论了公共和私营部门组织提供的与软件透明度和软件供应链安全相关的现有和新兴商业指南。
第 8 章:现有和新兴政府指南 本章讨论了政府部门提供的与软件透明度和软件供应链安全相关的现有和新兴政府指南。
第 9 章:运营技术中的软件透明度 本章讨论了与软件透明度和运营技术 (OT) 相关的一些独特方面以及对更广泛的软件供应链工作的影响。
第 10 章:供应商实用指南 本章重点介绍软件供应商的实用指南,以帮助他们满足新兴指南和最佳实践,并促进他们在加强软件供应链安全方面的作用。
第 11 章:消费者实用指南 本章为软件消费者提供实用指南,包括是否真的需要 SBOM、如何处理它以及如何完善组织的软件供应链风险管理工作。
第 12 章:软件透明度预测本章涵盖了未来软件透明度的预测,包括新兴法规及其对更广泛市场的影响、有前景的新兴技术,以及我们作为一个行业和社会的未来发展方向。
目标读者
本书将使各种技术和网络安全专业人士受益,例如首席信息安全官 (CISO)、首席技术官 (CTO)、高级技术和安全领导者、安全工程师和架构师、软件开发人员和开源软件爱好者。它还将使关注安全软件采购和采购的采购专业人士和旨在了解新兴软件供应链指导和要求的审计专业人士受益。对软件和社会相关的最佳实践和威胁感兴趣的研究人员和政策制定者也将受益。
No Comments