六种最常见的软件供应链攻击

软件供应链攻击已成为当前网络安全领域的热点话题,其攻击方式的多样性和复杂性使得防御变得极为困难。以下我们整理了六种常见软件供应链攻击方法及其典型案例:

一、入侵上游服务器

攻击者入侵上游服务器或代码仓库,并在其中注入恶意代码。这种攻击方式的危险之处在于,恶意代码会被快速分发到大量用户,从而放大了攻击的影响范围。

典型案例:

  • Codecov攻击:攻击者通过获取Docker镜像创建过程中的凭据,篡改在其CI环境中使用的BashUploader脚本,收集从客户的CI/CD环境上传的环境变量并窃取在环境变量中的敏感信息,如服务、数据库的凭据和密钥。
  • SolarWinds攻击:在这次影响全球的攻击中,攻击者成功入侵了SolarWinds的Orion产品开发系统,并在源代码中植入恶意代码,进而发动了大规模的网络攻击。
  • Node.jsevent-stream事件:攻击者通过对开源库event-stream的维护权进行社会工程攻击,成功将恶意代码发布到了npm,影响了大量使用该库的项目。

二、入侵中间环节发送恶意更新

攻击者入侵软件供应链中间环节的软件升级功能或CI/CD工具。这种攻击方式的狡猾之处在于,它可以在不直接修改源代码库的情况下,通过修改升级流程来实施攻击。

典型案例:

  • Passwordstate攻击:攻击者入侵了Passwordstate企业密码管理器的“就地升级功能”,向用户分发包含恶意代码的更新。这种攻击方式使得攻击者能够窃取用户的密码和其他敏感信息。
  • ASUSLiveUpdate攻击:攻击者入侵了ASUSLiveUpdate工具,并通过它分发了包含后门的恶意更新。这使得攻击者能够在全球范围内感染成千上万的ASUS计算机用户。
  • M.E.Doc软件攻击:乌克兰的财务软件M.E.Doc被攻击者入侵,通过软件更新功能分发了NotPetya勒索软件。这导致了全球范围内的大规模网络中断。

三、依赖性混淆攻击

这种攻击方式利用了开源生态系统中的设计弱点。攻击者可以在公共仓库中注册一个与私有依赖项同名的依赖项,然后通过提高版本号来使其被软件构建拉取。这种方法几乎不需要人工干预,可以自动化地进行攻击。

典型案例:

  • AlexBirsan的研究成果:安全研究员AlexBirsan通过创建和上传与私有包同名的公共包,成功实施了依赖性混淆攻击,影响了包括苹果和微软在内的多家知名公司。
  • PyTorch攻击:在这起攻击中,攻击者利用依赖性混淆方法对机器学习库PyTorch进行了攻击,影响了使用该库的开发者和项目。
  • node-ipc攻击:node-ipc是另一个受到依赖性混淆攻击的例子,攻击者通过这种方法影响了使用该库的各种应用和服务。

四、滥用SSL和代码签名证书

SSL/TLS证书的泄露会威胁到用户的在线通信安全。而代码签名证书的泄露则可能导致恶意软件被伪装成由知名公司签名的合法软件或更新。

典型案例:

  • SolarWinds攻击:在这起广泛报道的供应链攻击中,攻击者使用了被盗的代码签名证书,使得恶意代码看起来像是合法的SolarWinds更新。
  • Plead恶意软件:攻击者使用被盗的数字证书签名Plead后门恶意软件和密码窃取组件,这些恶意软件主要在东亚地区的攻击中被使用。
  • NVIDIA证书被盗:攻击者盗取了NVIDIA的代码签名证书,并用它来签名CobaltStrikebeacon、Mimikatz、后门和远程访问木马等恶意软件。

五、针对开发者的CI/CD基础设施

在这种攻击中,攻击者会利用CI/CD自动化基础设施,这种攻击方式的独特之处在于,它可以在不直接修改代码的情况下,通过滥用CI/CD基础设施来实施攻击。

典型案例:

  • 滥用GitHubActions挖掘加密货币。Sonatype最近观察到一次多重软件供应链攻击,该攻击不仅向用户的GitHub项目引入恶意拉取请求,还滥用GitHub的CI/CD自动化基础设施GitHubActions来挖掘加密货币。这种攻击双管齐下:它会诱骗开发人员接受恶意拉取请求,如果失败,它就会滥用现有的自动化CI/CD基础设施来进行恶意活动。
  • 联合国网站数据泄露。攻击者利用联合国网站暴露的Git目录(.git)和“git-credentials”文件,获得Git凭证访问权限,不仅可以克隆私有Git存储库,还可能在上游(环境署的源代码库)引入恶意代码以触发供应链攻击。此事件导致过10万条联合国环境规划署(UNEP)工作人员记录泄露。

六、社会工程攻击

这种攻击方式通常涉及到人的因素。攻击者可能会利用开发者的信任或者疏忽,通过提交包含恶意代码的pull请求或其他方式来实施攻击。事实上,很多类型的软件供应链攻击都会涉及社会工程攻击。

典型案例:

  • Linux“毒补丁”。Linux基金会最近禁止了明尼苏达大学研究人员的代码提交,因为他们故意提供有缺陷的“补丁”,从而在Linux内核源代码中引入了漏洞。该案例的启示是:社会工程攻击可能来自最不受怀疑的来源——在本案例中,攻击来自拥有“.edu”电子邮件地址看似可信的大学研究人员。
  • 篡改通过GitHub发布的软件版本。2021年安全研究人员披露攻击者可以在项目所有者或公众不知情的情况下破坏合作者的GitHub帐户并用来修改已发布版本,从而导致针对项目用户的供应链攻击。
  • NPM拼写错误攻击。攻击者创建与合法软件包非常相似的恶意软件包(例如恶意JavaScript包、数据采集木马等),然后将其上传到NPM的下载存储库。

每种软件供应链攻击方式都有其独特的实施方法和利用的弱点。为了更有效地防御这些攻击,安全和开发团队需要不断更新和优化安全策略和工具,包括加强对开源组件的清点、监控和审核,提高开发者的安全意识,以及优化CI/CD流程等。

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/124082.html<

(0)
管理的头像管理
上一篇2025-02-23 02:57
下一篇 2025-02-23 02:59

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注