行业新闻与博客

章鱼扫描仪恶意软件如何攻击开源供应链

分析 GitHub 已发布了有关实际的开源软件供应链攻击的信息性验尸。



GitHub 上的 NetBeans 存储库用作服务 Octopus Scanner 恶意软件的传递点,Octopus Scanner 恶意软件是专门为感染 NetBeans 项目而设计的后门。



攻击的结果是破坏了开源构建过程,并影响了 26 个开源项目。



该攻击的深度要比更常见的 GitHub 平台问题被滥用为命令和控制(C2)基础架构的一部分要深得多。



GitHub 于 3月9日通过一名独立安全研究人员的提示了解到该安全漏洞,该警告警告称 GitHub 托管的一组存储库正在积极提供恶意软件服务。



纠缠触角

随后的调查证实,Octopus Scanner 恶意软件能够在将恶意有效负载嵌入项目文件和构建 JAR 文件之前对 NetBeans 项目文件进行分类。



受影响的存储库所有者最有可能完全不了解恶意活动,并且理清乱七八糟是一个挑战,因为仅仅阻止或禁止维护者并不是一个好选择。



GitHub 安全实验室必须研究如何从受感染的存储库中正确删除恶意软件,而不必关闭用户帐户。



一个详细的技术分析,通过 GitHub 的阿尔瓦罗·穆尼奥斯介绍如何安全团队,难度不小的金额,完成这个过程。





相关 GitHub 在虚拟活动上展示了新的代码扫描安全工具







关于攻击的许多问题仍然存在–尤其是为什么恶意软件作者针对 NetBeans 构建过程(一种相对不流行的 Java IDE)进行攻击。



“如果恶意软件开发人员花时间专门针对 NetBeans 实施此恶意软件,则意味着它可能是有针对性的攻击,或者他们可能已经针对诸如 Make,MsBuild,Gradle 等构建系统实施了该恶意软件,并且 Muñoz 说。



“尽管在分析时恶意软件 C2 服务器似乎并未处于活动状态,但受影响的存储库仍对 GitHub 用户构成了风险,可能会克隆和构建这些项目。”



开源软件安全专家 Sonatype 的 CTO Brian Fox 表示,使 Octopus Scanner 如此危险的原因是感染了开发人员工具,这些工具随后感染了他们正在从事的所有项目,从而影响了他们的团队或开源用户社区。



Fox 说:“ Octopus Scanner 恶意软件证实了分析代码中的二进制文件而不使用清单的重要性。”



“使 Octopus 如此危险的原因在于它具有感染项目中其他 JAR 文件的能力,因此开发人员最终使用了突变的代码并将其分发给他们的团队或开放源代码用户社区。



“我们已经在 OSS 项目中进行了 20 多次一次性的恶意代码注入尝试,但这是一种新的攻击形式。这种攻击感染了开发人员工具,这些工具随后感染了他们正在从事的所有项目。”



供应链攻击

GitHub Daily Security Lab 的负责人 Nico Waisman 回应了 Daily Swig 的问题,他解释说:“章鱼扫描程序的目标是将后门插入 NetBeans 构建的人工制品中,以便攻击者随后可以将这些资源用作恶意软件的一部分。命令和控制服务器”。



Waisman 补充说:“没有证据表明 26 个开源项目实际上是恶意软件的攻击目标。”



“该恶意软件的主要目标是感染开发人员的计算机并通过 NetBeans 项目传播。由于开发人员受到感染,他们无意中将后门代码上传到了自己的存储库。”



软件依赖关系无处不在,因此使用数百甚至数千个开源依赖关系成为项目的正常现象。威斯曼警告说,攻击者正在利用这一优势进行攻击。



Waisman 说:“尽管开源对开发人员来说很容易,但这也意味着对攻击者来说很容易。” “攻击者正在寻求供应链妥协,因为他们可以广泛地影响范围。单一的折衷媒介使他们能够访问多个目标。”



检查您的系统和依赖项

威斯曼总结说,尽管像这样的供应链妥协令人恐惧,但它们仍然很少见。



Waisman 告诉 The Daily Swig:“供应链安全的主要问题是未修补的软件。” “对于攻击者而言,在依赖中利用未修补的已知漏洞要比在代码中插入新漏洞要容易得多。



“对于开发人员而言,主要的挑战是了解您的依赖关系,以及何时需要对其进行修补。在 GitHub 上,Dependency Graph 可帮助您了解项目的依赖关系。



本文由机器译制

需要帮助吗?联系我们的支持团队 在线客服