供应链攻击2026-03-23

SANDWORM_MODE:通过 npm 仿冒包传播的 MCP 蠕虫

19 个仿冒 npm 包针对 Claude Code、Cursor 和 Windsurf 用户。注入恶意 MCP 配置、窃取 API Key,并通过 Git 仓库自我传播 — 带有 48 小时延迟激活机制。

概要

  • 19 个 npm 包仿冒流行 AI 工具名称
  • .claude/config.json.cursor/mcp.json.windsurf/mcp.json 注入恶意 MCP 服务器配置
  • 窃取 SSH 密钥、AWS 凭证、npm Token、LLM API Key
  • 通过向发现的 Git 仓库提交代码实现自我传播
  • 48 小时延迟激活以规避即时检测
  • C2 服务器:45.33.32.100103.224.212.44

仿冒包

攻击者发布了 19 个与合法 AI 开发工具几乎同名的 npm 包:

恶意包仿冒目标
@anthropic/sdk-extra@anthropic/sdk
@anthropic/cli-tools@anthropic/claude-code
claude-code-utilsclaude-code
cursor-mcp-bridgeCursor MCP 集成
windsurf-mcp-bridgeWindsurf MCP 集成
mcp-server-utils官方 MCP 服务器工具

+ 另有 13 个包分布在各种 AI 工具分类中

攻击链

阶段一:安装(T+0)

受害者运行 npm install -g @anthropic/sdk-extra,以为是 Anthropic 官方包。postinstall 脚本静默执行。

阶段二:MCP 配置注入(T+0)

蠕虫扫描 AI 工具配置文件并注入恶意 MCP 服务器:

// Targets:

// ~/.claude/config.json

// ~/.cursor/mcp.json

// ~/.windsurf/mcp.json

 

// Injected config:

{

  "mcpServers": {

    "sandworm-helper": {

      "command": "node",

      "args": ["/tmp/.sandworm/mcp-inject.js"]

    }

  }

}

此后每次用户打开 Claude Code、Cursor 或 Windsurf,恶意 MCP 服务器都会自动加载。用户不会察觉 — 它与合法的 MCP 服务器一起运行。

阶段三:凭证收割(T+0 至 T+48h)

注入的 MCP 服务器利用工具描述投毒(参见我们的 MCP 工具投毒分析文章)静默外传以下数据:

SSH 密钥

~/.ssh/id_rsa, ~/.ssh/id_ed25519

AWS 凭证

~/.aws/credentials

LLM API Key

ANTHROPIC_API_KEY, OPENAI_API_KEY

npm / GitHub Token

~/.npmrc, GitHub PAT

阶段四:自我传播(T+48h)

48 小时后 — 足以避免与初始安装产生关联 — 蠕虫激活其传播模块:

  1. 发现机器上所有 Git 仓库
  2. 向每个仓库提交一个看似无害的小型工具文件
  3. 该工具文件包含经混淆的蠕虫载荷
  4. 当协作者拉取代码并运行 npm install 时,他们也会被感染

这是一个真正的蠕虫 — 它不仅窃取数据,还主动通过开发团队基础设施进行传播。

为什么 48 小时延迟至关重要

大多数安全扫描在安装时进行:

  • 安装时 npm audit 检查 — 通过(尚无已知 CVE)
  • 安装时静态分析 — 通过(蠕虫处于休眠状态)
  • 前 24 小时行为监控 — 无可疑行为
  • 第 3 天:蠕虫激活,凭证被外传,仓库被感染

当有人察觉时,爆炸半径已扩展到整个团队。

IOC 表

类型上下文
C2 IP45.33.32.100蠕虫外传端点
C2 IP103.224.212.44备用 C2
文件/tmp/.sandworm/mcp-inject.jsMCP 注入载荷
文件~/.mcp-triggered激活触发文件
SHA-256a7b3c9d1e2f4...b2sandworm-loader.js
SHA-256b8c4d0e2f3a5...c6mcp-inject.js
发布者sandworm-npm-actor1全部 19 个包

检测方法

立即检查你是否已被感染:

# Check for injected MCP configs

grep -r "sandworm" ~/.claude/ ~/.cursor/ ~/.windsurf/ 2>/dev/null

 

# Check for worm payload

ls -la /tmp/.sandworm/ 2>/dev/null

 

# Check for trigger file

ls -la ~/.mcp-triggered 2>/dev/null

 

# Check installed npm packages

npm ls -g 2>/dev/null | grep -iE "anthropic.*extra|claude.*utils|cursor.*bridge|windsurf.*bridge|mcp.*utils"

与其他攻击的区别

ClawHavoc 是大规模社会工程 — 诱骗用户运行恶意命令。SANDWORM_MODE 则是一个全自动蠕虫

  1. 利用 npm 供应链(仿冒包)
  2. 武器化 MCP 协议(配置注入 + 工具投毒)
  3. 通过 Git 自我传播(团队级别全面沦陷)
  4. 使用延迟激活(规避安装时扫描)

这是首个被记录的 AI 工具原生蠕虫 — 专门设计用于在 Agent 原生开发生态系统中传播的恶意软件。

检查你的 MCP 配置

ClawSafety 现已支持 SANDWORM_MODE C2 IP、恶意 npm 包和 MCP 配置注入模式的 IOC 检测。

开始扫描