新型开源供应链攻击:虚假 npm 安装日志暗藏 RAT 木马

攻击概述

安全研究人员发现一场精心策划的新型软件供应链攻击正通过 npm 包注册表针对开发者,攻击者利用虚假安装日志掩盖恶意活动。这项被命名为"幽灵行动"(Ghost campaign)的攻击始于 2026 年 2 月初,攻击者构建了一系列 npm 包诱骗开发者提交系统凭证,同时在受害者机器上秘密部署远程访问木马(RAT)。

攻击流程剖析

当开发者安装恶意包时,攻击即刻启动。这些包会模拟正常的 npm 安装过程------输出日志信息、显示进度条并插入随机延迟以增强真实性。实际上,屏幕上显示的待下载包名均来自硬编码列表,所有声称要安装的依赖均不存在。这种欺骗手段使得即使经验丰富的开发者都难以察觉异常。

ReversingLabs 分析师在 2026 年 2 月初识别出该恶意活动,溯源发现 7 个相关包均由名为"mikilanjillo"的 npm 用户发布,包括:

  • react-performance-suite
  • react-state-optimizer-core
  • react-fast-utilsa
  • ai-fast-auto-trader
  • pkgnewfefame1
  • carbon-mac-copy-cloner
  • coinbase-desktop-sdk

技术突破与后续扩散

研究人员指出,使用虚假安装日志掩盖恶意行为属于新型攻击技术,标志着威胁行为体在开源生态系统中规避检测的手段出现显著演变。攻击最终阶段会投放专门窃取加密货币钱包、收集敏感数据并接收攻击者服务器指令的 RAT。

该活动的影响范围超出最初发现的 7 个包。2026 年 3 月,JFrog 记录了名为 GhostClaw 的相关攻击集群,其技术与基础设施与 ReversingLabs 发现的样本高度相似。Jamf Threat Labs 分析进一步显示,攻击还通过伪装成交易机器人和 SDK 等合法开发工具的 GitHub 仓库传播。这些仓库先植入无害代码并长期保持静默以建立信任,随后才引入恶意组件。

核心欺骗机制:虚假日志与 sudo 钓鱼

攻击最具迷惑性的环节是诱骗开发者提交 sudo 密码。在虚假安装过程中,包会输出错误提示,声称由于缺少对/usr/local/lib/node_modules(Linux/macOS 系统标准全局包目录)的写入权限而无法安装依赖,继而诱导开发者输入 root 密码以"解决问题"。

密码确认后,恶意下载器便在虚假日志的掩护下静默运行。下载器会从 Telegram 频道获取最终载荷 URL 和解密密钥,在某些案例中这些信息被隐藏在 teletype.in 上伪装成区块链文档的 Web3 帖子中。

防护建议

开发者应特别注意:

  • 安装过程中绝不应 npm 包要求输入 sudo 或 root 密码,合法包在此阶段无需系统级访问权限
  • 安装前务必验证包作者及仓库历史记录
  • 使用自动化安全扫描工具检测可疑脚本 企业应实施严格的依赖项审查流程,并将软件安装过程中的任何密码提示视为重大危险信号。

攻击指标(IoC)

包名 版本 SHA1
react-performance-suite 2.0.0 bdffc2f98ff422db9f9ddc190401cfcb686e3c32
react-performance-suite 2.0.1 5928e3121f12f3c5d690bc7968b28b2f67835ef5
react-state-optimizer-core 1.0.0 cbe7c87293de7ab5853e2aef3f638d54c45f5c9f
react-state-optimizer-core 3.0.3 fe6ee1104c4b02be39819822ed959039ea313e67
react-fast-utilsa 2.0.1 e6cfaef4b50d2a4ddd8453bf5a91e81a092d6e09
ai-fast-auto-trader 2.2.1 963b79f59fb2c070a06b9a2af9db2b5512c1ed74
ai-fast-auto-trader 2.2.6 d22eb34facf13b5c1e820d9e6358eb4cd3797eaa
pkgnewfefame1 3.2.1 2a8c625660ad6bb7d7c953a147c84c0fcc75794b
carbon-mac-copy-cloner 1.1.0 63783f6e59d20e2c664123b349f22dd53d1293d4
coinbase-desktop-sdk 1.5.14 cb9208d756dc4d4674801611d8d5f5ba79e76366
coinbase-desktop-sdk 1.5.19 d5ade32ac52140e6c25f50780dc4ff4d466faddb
相关推荐
Irene19912 小时前
v-model 的本质,defineModel() 是 Vue 3.4 的重大改进
前端·javascript·html5
EF@蛐蛐堂2 小时前
【vue】Vite 生态 5 个 “新玩具“
前端·javascript·vue.js
风之舞_yjf2 小时前
Vue基础(29)_props配置项、ref属性
前端·vue.js
weixin199701080162 小时前
《深入浅出:图解淘宝分布式数据库TDDL(及开源替代方案)》
数据库·分布式·开源
Fairy要carry3 小时前
项目03-手搓Agent之团队协作(发消息/分配任务)
linux·前端·python
东北甜妹3 小时前
Python脚本
java·开发语言·前端
四千岁3 小时前
WSL + OpenCode 最佳实践:环境一致、模型配置、GUI 远程使用
前端·javascript·后端
ssshooter3 小时前
Tauri 2 Linux 上 asset://localhost 访问返回 403 避坑指南
前端·后端·架构
半世轮回半世寻3 小时前
这 5 个 Elements 小技巧,真的能提高调试效率
前端·浏览器