自11月24日以来,软件开发社区一直在应对Shai-Hulud蠕虫以2.0版本卷土重来的消息。软件供应链安全再次面临严峻挑战。本篇文章将详细介绍为监控和缓解日益增长的恶意软件包威胁所采取的措施,并分享与此新变种相关的预防和检测规则、狩猎查询与建议。
npm生态系统的庞大规模使其成为恶意活动的主要目标。2025年11月,一种新的恶意npm蠕虫变种出现,因其在GitHub仓库描述中使用的活动标记而被称为“Shai-Hulud: The Second Coming”。它已感染了数百个软件包,涉及多家机构的流行项目。
与初始变种的相似之处在于,npm包被感染了自我复制的恶意软件。然而,Shai-Hulud 2.0的不同之处在于,它会通过文件setup_bun.js安装bun,然后使用它来执行包含恶意代码的bun_environment.js。随后,它通过创建随机命名的GitHub仓库来外泄窃取的数据,通常会将一名受害者的数据发布到与另一名无关受害者相关的仓库,这被称为“交叉受害者数据外泄”。新创建的GitHub仓库描述为“Sha1-Hulud: The Second Coming”。这意味着,仅仅搜索自己的仓库可能无法发现环境中泄露的数据。
此外,Shai-Hulud不再局限于感染20个npm包;现在它会感染多达100个npm包,如果无法使用GitHub或npm凭证进行身份验证,还会擦除用户的home目录。
借鉴首次Shai-Hulud事件的经验和已实施的机制,得以迅速部署全面防御。
通过合作伙伴获悉,一个用于GitOps(特别是某中心云编排器)的持续集成(CI)管道运行了Shai-Hulud 2.0恶意软件,并将数据发布到了一个公开的GitHub仓库。该事件对某中心云系统或客户未造成影响。调查发现根本原因是传递性依赖。快速的响应以及与工程团队的协作确保了在潜在利用发生之前遏制并修复了威胁。
快速遏制与补救措施包括:
GitHub迅速删除了暴露数据的仓库。其中包含四个文件:
cloud.json:不包含数据。contents.json:包含有关CI运行器的详细信息,以及一个无关GitHub用户及其GitHub令牌。truffleSecrets.json:包含误报的密钥发现。没有证据表明某中心的密钥在外部被使用过。
没有证据表明蠕虫已传播到某中心的npm包。
该管道与产品无关。
对客户没有影响。
建议安全客户在其自身环境中搜寻潜在的入侵迹象。以下KQL查询可用于识别与此供应链攻击相关的行为:
// IOC for the Github Self-Hosted Actions runner name
process.name:Runner.Listener and process.command_line:*SHA1HULUD*
// IOC - node/bun executing bun_environment.js
process.name:(node or bun) and process.args:*bun_environment.js
// credentials discovery using trufflehog from node/bun or node_modules related working directory
process.name:("trufflehog" or "trufflehog.exe") and process.args:"filesystem" and process.args:"--json" and (process.parent.name : (node or bun or node.exe or bun.exe) or process.working_directory:*node_modules*)
// curl used to download GH actions runner to victim machine
process.name:(curl or or curl.exe or powershell.exe or wget or wget.exe) and process.command_line:*github.com/actions/runner/releases/download*
//docker escape via mounting the host file system and executing bash commands to tamper with the host file system
process.name:docker and process.args :("--privileged" and run) and process.args :"-v" and process.args :/\:/* and process.args :(bash or sh or cp)以下开箱即用的检测和预防规则也为Shai-Hulud蠕虫2.0活动提供了更新的覆盖:
安全是开发生命周期和运营流程的基础。新的Shai-Hulud蠕虫突显了全球软件供应链面临的网络威胁具有持久性和快速演变的特性。此次内部环境事件证明了安全团队的有效性以及快速响应的重要性。对此的承诺包括:
将持续监测新信息,并随着对此事件的深入了解更新内容。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。