![图片[1]安全114-安全在线-安全壹壹肆-网络安全黄页-网络安全百科恶意 Nx 包泄露 2349 项 GitHub、云服务及 AI 凭证](https://www.anquan114.com/wp-content/uploads/2024/03/20240304192835197-image.png)
nx构建系统的维护者已向用户发出供应链攻击警报,此次攻击导致恶意版本的流行npm软件包及具有数据收集功能的辅助插件被发布。
维护者在周三发布的公告中表示:“恶意版本的nx软件包以及一些辅助插件包被发布到npm,其中包含扫描文件系统、收集凭证并将其作为用户账户下的仓库发布到GitHub的代码。”
Nx是一个开源、与技术无关的构建平台,旨在管理代码库。它被宣传为“AI优先的构建平台,将从编辑器到CI(持续集成)的一切连接起来”。该npm软件包每周下载量超过350万次。
受影响软件包及版本列表如下。这些版本现已从npm注册表中移除。nx软件包的入侵发生在2025年8月26日。
- nx 21.5.0, 20.9.0, 20.10.0, 21.6.0, 20.11.0, 21.7.0, 21.8.0, 20.12.0
- @nx/devkit 21.5.0, 20.9.0
- @nx/enterprise-cloud 3.2.0
- @nx/eslint 21.5.0
- @nx/js 21.5.0, 20.9.0
- @nx/key 3.2.0
- @nx/node 21.5.0, 20.9.0
- @nx/workspace 21.5.0, 20.9.0
项目维护者表示,问题的根本原因源于2025年8月21日添加的一个存在漏洞的工作流程,该流程引入了使用特别制作的拉取请求(PR)标题来注入可执行代码的能力。虽然在该工作流程被发现在恶意环境中可利用后,“master”分支中的流程“几乎立即”被恢复,但评估认为威胁行为者针对仍包含该工作流程的过时分支发起了PR以发动攻击。
nx团队表示:“pull_request_target触发器被用作一种方式,在PR创建或修改时触发操作运行。然而,被忽略的是警告信息:与标准的pull_request触发器不同,此触发器以提升的权限运行工作流程,包括具有读/写仓库权限的GITHUB_TOKEN。”
据信,GITHUB_TOKEN被用来触发“publish”工作流程,该流程负责使用npm令牌将nx软件包发布到注册表。
但由于PR验证工作流程以提升的权限运行,“publish工作流程”在“nrwl/nx”仓库上被触发运行,同时引入了恶意更改,使得将npm令牌外泄到攻击者控制的webhook[.]site端点成为可能。
nx团队解释说:“作为bash注入的一部分,PR验证工作流程触发了publish.yml的运行,并附带此恶意提交,将我们的npm令牌发送到一个陌生的webhook。我们相信这就是攻击者获取用于发布恶意版本nx的npm令牌的方式。”
换句话说,如果提交了恶意的PR标题,注入漏洞就能实现任意命令执行,而pull_request_target触发器则通过提供具有仓库读/写权限的GITHUB_TOKEN来授予提升的权限。
这些恶意版本的软件包中被发现包含一个安装后脚本(postinstall script),该脚本在软件包安装后被激活,用于扫描系统以查找文本文件、收集凭证,并将详细信息作为Base64编码的字符串发送到用户账户下包含名称“s1ngularity”的公开可访问的GitHub仓库。
维护者补充说:“恶意安装后脚本还修改了.zshrc和.bashrc文件(这些文件在终端启动时运行),以包含sudo
命令,该命令会提示用户输入系统密码,如果提供,将立即关闭机器。”
尽管GitHub已开始归档这些仓库,但遇到这些仓库的用户仍应假设已遭入侵,并轮换GitHub和npm的凭证及令牌。还建议用户停止使用恶意软件包,并检查.zshrc和.bashrc文件中的任何不熟悉的指令并将其删除。
nx团队表示,他们还采取了补救措施,包括轮换其npm和GitHub令牌、审计组织内所有GitHub和npm活动以查找可疑活动,以及更新nx的发布访问权限以要求双因素认证(2FA)或自动化。
Wiz研究人员Merav Bar和Rami McCarthy表示,超过1000个被泄露的GitHub令牌中,有90%仍然有效,还有数十个有效的云凭证和npm令牌。据称,恶意软件通常在开发者机器上运行,通常是通过nx Visual Studio Code扩展。GitGuardian检测到多达1346个包含“s1ngularity-repository”字符串的仓库。
在2349个不同的被泄露秘密中,绝大多数是GitHub OAuth密钥和个人访问令牌(PAT),其次是Google AI、OpenAI、Amazon Web Services、OpenRouter、Anthropic Claude、PostgreSQL和Datadog的API密钥和凭证。
云安全公司发现,该有效负载仅能在Linux和macOS系统上运行,会系统性地搜索敏感文件并提取凭证、SSH密钥和.gitconfig文件。
该公司表示:“值得注意的是,该活动通过使用危险标志提示已安装的AI CLI工具来窃取文件系统内容,利用受信任的工具进行恶意侦察。”
StepSecurity表示,此事件是首例已知的攻击者将开发者AI助手(如Claude、Google Gemini和Amazon Q)转变为供应链利用工具并绕过传统安全边界的案例。
Socket表示:“在作用域nx软件包中的恶意软件与nx软件包中的恶意软件之间存在一些差异。首先,AI提示不同。在这些软件包中,AI提示更基本一些。这个LLM提示的范围也远没有那么广泛,主要针对加密钱包密钥和秘密模式以及特定目录,而@nx中的提示则会抓取任何有趣的文本文件。”
Aikido的Charlie Eriksen表示,使用LLM客户端作为枚举受害机器上秘密的载体是一种新颖的方法,并为防御者提供了关于攻击者未来可能方向的洞察。
StepSecurity的Ashish Kurmi说:“鉴于nx生态系统的流行度以及AI工具滥用的新颖性,此事件凸显了供应链攻击不断演变的复杂性。对于任何安装了受感染版本的用户来说,立即采取补救措施至关重要。”
消息来源: thehackernews;
本文由 HackerNews.cc 翻译整理,封面来源于网络;
暂无评论内容