

攻击概述
安全研究人员近期披露了一场精心策划、极具迷惑性的新型软件供应链攻击。这场被命名为“幽灵行动”(Ghost campaign)的攻击活动始于2026年2月初,攻击者通过 Node.js 生态的核心包管理器 npm 注册表作为入口,利用高度仿真的虚假安装日志作为掩护,诱骗开发者提交系统凭证,并在受害者机器上秘密部署功能强大的远程访问木马(RAT)。
攻击流程剖析
当不知情的开发者执行 npm install 安装这些恶意包时,攻击便悄然启动。这些恶意包的安装脚本会模拟一个极其逼真的 npm 安装过程:它们会输出详细的日志信息、显示进度条,并插入随机延迟以模仿真实的网络下载行为。
关键在于,屏幕上滚动显示的待下载包名都来自攻击者硬编码的列表,所有声称正在安装的依赖包实际上根本不存在。这种高水平的欺骗手段,使得即使经验丰富的开发者都可能在短时间内难以察觉异常。
ReversingLabs 的分析师在2026年2月初识别出该恶意活动。溯源后发现,有7个相关的恶意 npm 包均由一个名为 “mikilanjillo” 的用户发布,包括:
- react-performance-suite
- react-state-optimizer-core
- react-fast-utilsa
- ai-fast-auto-trader
- pkgnewfefame1
- carbon-mac-copy-cloner
- coinbase-desktop-sdk
技术突破与后续扩散
研究人员特别指出,利用虚假安装日志来掩盖恶意行为,这是一种相对新颖的攻击技术。这标志着威胁行为体在开源生态系统中规避检测的手段出现了显著演变。攻击的最终阶段会投递一个功能专一的 RAT,专门用于窃取加密货币钱包、收集系统敏感数据,并接收来自攻击者命令与控制(C2)服务器的指令。
这场攻击活动的影响范围远不止最初发现的7个包。到了2026年3月,JFrog 的安全团队记录了一个名为 GhostClaw 的相关攻击集群,其使用的技术与基础设施与 ReversingLabs 发现的样本高度相似。Jamf Threat Labs 的进一步分析显示,攻击还通过伪装成交易机器人和 SDK 等合法开发工具的 GitHub 仓库进行传播。这些仓库通常会先植入无害代码并长期保持静默以建立信誉,随后才会在更新中悄悄引入恶意组件。
核心欺骗机制:虚假日志与 sudo 钓鱼
整个攻击链条中最具迷惑性的一环,是它成功诱骗开发者提交 sudo 或 root 密码。在虚假的安装过程进行到一半时,恶意脚本会输出一系列精心设计的错误提示。
这些错误会声称,由于缺少对 /usr/local/lib/node_modules(Linux/macOS 系统标准的全局 Node.js 包安装目录)的写入权限,导致依赖无法安装。接着,脚本会“友好地”提示并诱导开发者输入 root 密码来“自动解决”这个权限问题。


一旦密码被确认,真正的恶意下载器便会在这逼真日志的掩护下开始静默运行。这个下载器会从指定的 Telegram 频道获取最终载荷的 URL 和解密密钥。在某些攻击案例中,这些关键信息被巧妙地隐藏在 teletype.in 网站上,伪装成关于区块链或智能合约的“技术文档”里。


防护建议
针对此类高度伪装的供应链攻击,开发者和企业安全团队需要提高警惕:
- 警惕密码请求:在
npm install 过程中,绝不应该有任何包要求你输入 sudo 或 root 密码。合法的 npm 包在安装阶段通常不需要系统级访问权限。
- 验证包来源:安装任何包之前,花点时间验证包作者的信誉度、仓库的提交历史、星标数量以及 issues 中的讨论。
- 使用安全工具:考虑使用能够自动化扫描依赖项和检测安装脚本中可疑行为的 安全/渗透/逆向 工具。
- 企业级流程:企业应实施严格的软件供应链安全管控,包括依赖项审查流程,并将软件安装过程中的任何密码提示视为重大的危险信号。
攻击指标(IoC)
以下是已识别的部分恶意 npm 包及其哈希值,可供安全人员进行比对和排查:

参考来源:
Fake npm Install Messages Hide RAT Malware in New Open Source Supply Chain Campaign
https://cybersecuritynews.com/fake-npm-install-messages-hide-rat-malware/
面对日益复杂的开源供应链威胁,保持对依赖包的警惕和建立良好的安全习惯至关重要。如果你想深入探讨 Node.js 生态安全或其他 开源实战 中的攻防技术,欢迎在云栈社区与更多开发者一起交流学习。
|