软件供应链攻击的演变史

作者:Vishal Garg

软件供应链攻击的演变史

软件供应链攻击在过去几年中迅速增加,包括SolarWinds和Log4Shell在内的一些备受瞩目的事件提高了人们对它们对网络安全构成的潜在风险的认识。

这些攻击引起了公共和私营部门的广泛关注,因此,美国总统于 2021 年 5 月 12 日发布了一项关于改善国家网络安全的行政命令,其中有一个部分专门致力于改善软件供应链安全。

什么是软件供应链攻击?

软件供应链攻击涉及渗透或操纵软件开发、分发或维护的各个阶段,以引入恶意代码或损害软件产品的完整性。

早期妥协

多年来,软件供应链攻击已经变得非常复杂,并且通常与高级持续威胁(APT)相关联,而在早期,软件供应链攻击的概念并不像我们今天所知道的那样广为人知。

尽管这些攻击已经存在了几十年,但由于网络安全的不断发展和有限的历史文档,确定确切的“第一次”攻击可能具有挑战性。

最早记录在案的供应链攻击事件之一通常归因于1980年代初发生的名为“Ken Thompson黑客攻击”的事件。链接到原始论文 这里.这次攻击不是恶意行为,而是软件开发和分发过程中潜在漏洞的展示。

虽然Ken Thompson Hack是一个值得注意的早期例子,但重要的是要注意,在这次演示之前和之后,供应链攻击可能以各种形式发生。近年来,由于软件系统的复杂性和互联性日益增加,术语“软件供应链攻击”变得越来越常用。然而,潜在的漏洞和潜在的利用已经在软件开发和分发领域存在了很长时间。

最早记录在案的实际软件供应链泄露实例之一发生在 2003 年,当时发生了一个名为“Linux 内核后门事件”的事件。该事件涉及在Linux内核的源代码中插入后门,Linux内核是Linux操作系统的| 核心组件。

进化与技术

从早期开始,软件供应链攻击多年来在复杂性和范围上不断发展。

21世纪第一个十年的后半段标志着软件供应链攻击演变的重大转折点。像“Stuxnet”和“Operation Aurora”这样的著名事件表明,国家资助的行为者有能力通过渗透软件开发流程来破坏关键基础设施和企业系统。Stuxnet对西门子工业控制软件的操纵突显了破坏关键部门使用的软件的潜在后果。

2010年代中期引入了更复杂的攻击。“ NotPetya”勒索软件利用乌克兰会计软件的受损软件更新在全球范围内传播,造成广泛的破坏。此事件展示了攻击者破坏受信任分发渠道的可能性,导致组织质疑软件更新的完整性。

近年来,软件供应链攻击不断发展,利用当今软件生态系统的互联性。2020 年“SolarWinds 攻击”等备受瞩目的事件揭示了现代供应链的复杂性,攻击者破坏软件更新以渗透到众多组织中。

此外,开源软件和第三方依赖关系的激增带来了新的挑战。攻击者越来越多地以这些组件为目标,利用众多应用程序使用的库中的漏洞。

攻击技术多年来一直在发展,攻击者可能以各种方式利用漏洞,例如:

  1. 受损更新:攻击者渗透到合法软件更新中,引入恶意代码,在安装时针对毫无戒心的用户。
  1. 恶意依赖关系:攻击者操纵软件开发中使用的第三方库或依赖关系来引入漏洞。
  1. 代码注入:攻击者在软件开发过程中注入恶意代码,针对特定功能或组件。

由于攻击技术的多样性和威胁形势的不断发展,目前还没有通用或公认的词典来描述各种攻击技术。因此,可能很难对这种性质的每个潜在已知妥协进行分类。

云原生计算基金会 (CNCF) 安全技术咨询小组 (TAG) 创建了一个供应链妥协目录,记录了自 2003 年以来的几次妥协。该小组的目标不是对每个已知的供应链攻击进行编目,而是捕获每种类型的几个示例,以了解模式并开发最佳实践和工具。

该目录提供了妥协的详细信息、妥协发生的年份、妥协类型以及影响和更多信息的参考链接。妥协分为七个不同的类别,但是,随着将来发生新的或更明显的妥协,这些类别可能会发生变化。

攻击和威胁分类

一些主要的框架,如MITRE ATT&CK,CAPEC和ENISA提供了攻击分类法。

  • MITRE ATT&CK框架列出了攻击的“初始访问”阶段的“供应链入侵”的三个不同的攻击子类别。
  • 常见攻击模式枚举和分类 (CAPEC) 具有单独的供应链攻击域,并在此域下提供八个不同的抽象攻击类别。这八个类别进一步细分为特定攻击技术的标准和详细级别模式。
  • 欧盟网络安全局 (ENISA) 在其供应链攻击威胁态势文档中定义了供应链中的四个关键要素,包括供应商、供应商资产、客户和客户资产。供应链攻击是至少两种攻击的组合。使用的分类法考虑了供应链的所有四个关键要素,以及攻击者使用的攻击技术。
  • 网络安全公司Comparitech创建了一个全球软件供应链攻击跟踪器,该跟踪器每天更新,并基于ENISA的方法。跟踪器记录攻击的位置,包括每个位置受影响的客户数量、按年份划分的攻击数量以及供应商和客户的攻击类型。

在其他工作中,已经创建了框架来对软件开发和交付过程中的威胁进行分类。比如:

  • 软件保障的供应链级别 (SLSA) 框架描述了典型软件开发和交付过程中每个阶段可能发生的攻击。
软件供应链攻击的演变史

SLSA Framework SLSA 框架

  • 来自Google的软件供应链威胁,这主要基于SLSA框架,并描述了SLSA框架中未列出的其他威胁。
软件供应链攻击的演变史

谷歌版本的软件供应链威胁

  • 国家情报总监办公室 (ODNI) 文件将软件供应链攻击分为三类——供应链攻击、软件支持供应链攻击和软件供应链攻击。

对攻击技术进行分类有助于我们了解攻击、这些攻击的执行位置和方式,以及采取哪些控制措施来降低风险。但是,从上面可以明显看出,每个框架都使用不同的分类法,并且对这些攻击进行分类具有独特的方式。这可能是因为每个框架采取的方法和用于分类的参数不同。

由于软件供应链攻击可能跨越多个组织,并且不同的组织可能采用不同的框架,因此缺乏通用分类法可能会给在该领域工作的从业者带来问题。

(0)
上一篇 2023年8月31日 下午3:27
下一篇 2023年9月7日 下午7:50

相关推荐

  • SBOM清单是什么?

    引言 你是否知道你使用的软件都是由哪些组件构成的?你是否了解这些组件的来源、版本、许可证和安全状况?如果你是一个软件开发者或者供应链管理者,你是否能够追踪和管理你的软件产品中包含的所有组件?在当今的软件行业,这些问题都是非常重要和紧迫的。为了提高软件供应链的透明度和安全性,我们需要一种工具来帮助我们识别、记录和共享软件组件的相关信息。这就是SBOM清单。 S…

    2023年8月9日
    0
  • CSO 们关注的软件供应链安全十个关键问题

    写在前面 自从和几个小伙伴一起创办墨菲安全以来,有一年半多的时间了,创业对于我来说,很有意思的一个地方,就是有机会可以和各行各业很多非常有意思的人一起交流,在这个交流的过程中能够不断的提升自己的认知,以我自己创业之前的经历来说,我接触的大多都是互联网和互联网安全这个圈子的人,而现在有很多机会去接触到更多行业的客户和合作伙伴,可以有机会去了解不同行业的业务、安…

    2023年8月9日
    0
  • 谈谈常见开源许可证合规风险

    因为我本身也在做开源,所以比较关注这个问题,最近因为工作需要,总结和分析了一下关于开源许可证相关的知识,也分享给大家一起讨论,希望得到大家的指导。 前言 2021年12月,抖音海外版 TikTok 上线了一款名为 TikTok Live Studio 的 APP,但不久其下载页面就被删除。TikTok 官方对此事做出回应,原因是该 APP 违反 GPL 许可…

    2023年8月9日
    0
  • 如何排查软件中的使用的开源组件清单?

    软件中为什么会依赖开源组件? 在软件开发的过程中,我们往往会使用一些第三方或者开源的组件,来提供一些基础的功能或者服务,从而简化开发工作,提高效率和质量。例如,我们可能会使用 Apache Commons、Spring Boot、jQuery 等开源组件来实现一些常见的操作,如字符串处理、Web 开发、DOM 操作等。 使用开源组件的好处是显而易见的,它们可…

    2023年8月9日
    0
  • 前沿 | 国外开源软件安全治理模式研究及工作建议

    开源软件是指软件源代码可以被共享和公共使用的软件。在人们享受开源软件的便捷性和广泛性同时,一旦发生开源软件安全漏洞,其危害程度大、波及范围广,将造成较大安全隐患,从而使对开源软件的治理成为一项重要内容。本文在分析开源软件安全风险的基础上,对国外开源软件安全治理模式进行研究,对我国开源软件安全治理工作存在的不足展开反思,基于以上研究,就如何更好地保障我国开源软…

    2023年8月24日
    0