开源软件(OSS)在现代应用程序中无处不在。 它可能构成商业应用程序代码的 90% 以上,并且广泛应用于整个技术堆栈以及开发和运营生命周期。 由于现代软件供应链的复杂性,攻击者有多种机会将恶意代码注入开源组件并感染下游用户。 近年来,我们观察到针对 OSS 的攻击数量和类型异常增加 [12]。 例如,最近的一个案例影响了 PyTorch(一种流行的机器学习模型构建框架)的夜间构建:攻击者通过滥用 pip 的依赖项解析机制,通过依赖项潜入恶意代码 [13]。 其他软件供应链攻击(例如,感染 SolarWind 的 Orion 平台 [10])影响了政府机构和关键基础设施的供应商。因此,一些国家安全机构将软件供应链攻击列为主要威胁之一 [ 2 ], [ 3 ],并且出现了不同的努力(公共和私人)来提高软件供应链的安全性(例如 SLSA 1 )。毫无疑问,软件供应链越来越频繁地受到攻击,而且这个问题正在受到业界和学术界的广泛关注。然而,我们也注意到,现有的文献有些零散,这也是因为缺乏关于攻击者如何将恶意代码注入 OSS 项目的通用的、独立于技术的描述。
主要关键词