OpenClaw依赖包Axios遭供应链投毒:恶意版本植入远控木马

admin 2026-04-02 05:11:58 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 2026年3月31日,npm生态遭遇重大供应链攻击。攻击者劫持了流行HTTP客户端库Axios的维护者账户,发布了两个恶意版本(1.14.1和0.30.4),植入远程访问木马(RAT)。由于OpenClaw及其插件依赖Axios,用户需立即检查并降级至安全版本(1.14.0或0.30.3),并采取锁定依赖、审计等长期预防措施。 综合评分: 95 文章分类: 供应链安全,恶意软件,漏洞预警,网络安全,应用安全


cover_image

OpenClaw依赖包Axios遭供应链投毒:恶意版本植入远控木马

原创

天元实验室 天元实验室

M01N Team

2026年3月31日 18:00 北京

核心摘要:2026 年 3 月 31 日,npm 生态遭遇重大供应链攻击。流行 HTTP 客户端库 Axios 的维护者账户被劫持,攻击者发布两个恶意版本(1.14.1 和 0.30.4),植入远程访问木马(RAT)。OpenClaw 及其插件生态依赖 Axios,用户需立即检查并降级至安全版本。


事件概述

这是一起高度专业化的供应链攻击,攻击者通过劫持 Axios 主要维护者的 npm 账户,向超过 1 亿周下载量的热门包注入恶意代码。

攻击时间线(UTC 时间)

  • 3 月 30 日 05:57 — 攻击者发布 [email protected](干净诱饵包)
  • 3 月 30 日 23:59 — 发布恶意版本 [email protected],植入 postinstall 钩子
  • 3 月 31 日 00:21 — 发布恶意版本 [email protected][1](1.x 分支)
  • 3 月 31 日 01:00 — 发布恶意版本 [email protected][2](0.x 分支)

⚠️ 受影响版本

  • [email protected](shasum: 2553649f2322049666871cea80a5d0d6adc700ca)
  • [email protected](shasum: d6f3f62fd3b9f5432f5782b62d8cfd5247d5ee71)

✓ 安全版本

  • [email protected](shasum: 7c29f4cf2ea91ef05018d5aa5399bf23ed3120eb)
  • [email protected](shasum: ab1be887a2d37dd9ebc219657704180faf2c4920)

攻击方式分析

第一步:维护者账户劫持

攻击者攻陷了 Axios 主要维护者的 npm 账户(jasonsaayman),将账户注册邮箱更改为攻击者控制的 ProtonMail 地址([email protected])。

第二步:依赖投毒

恶意版本在 package.json 中添加了从未使用的依赖 plain-crypto-js@^4.2.1。该包包含 postinstall 钩子,在安装时自动执行恶意脚本。

第三步:RAT 投放

恶意脚本(setup.js)连接 C2 服务器 sfrclak.com:8000,根据操作系统下载不同载荷:

  • macOS: 伪装成 Apple 缓存守护进程(/Library/Caches/com.apple.act.mond
  • Windows: 复制 PowerShell 到 %PROGRAMDATA%\wt.exe,通过 VBScript 隐藏执行
  • Linux: 下载 Python 脚本到 /tmp/ld.py 并后台运行

第四步:自我清理

执行完成后,恶意脚本删除自身并将 package.json 替换为干净存根,试图隐藏攻击痕迹。


对 OpenClaw 用户的影响

关键风险: OpenClaw 主程序及多个官方/社区插件在 package.json 中声明了对 Axios 的依赖。如果用户在 3 月 31 日后执行了 npm install 或 pnpm install,可能已安装恶意版本。

潜在风险场景

  • 新安装 OpenClaw 的用户(使用 npm install -g openclaw@latest
  • 更新 OpenClaw 或插件的用户
  • 在 CI/CD 环境中自动构建的部署
  • 开发环境中执行过依赖安装的开发人员

可能泄露的敏感信息

  • SSH 密钥和云服务商凭证
  • 飞书/钉钉/Discord 等聊天平台的 API Token
  • 数据库连接字符串和 API 密钥
  • 本地开发环境中的其他敏感配置文件

修复建议

第一步:检查是否受影响

检查 axios 版本:

npm list axios 2>/dev/null | grep -E "1\.14\.1|0\.30\.4"

检查 package-lock.json:

grep -A1 '"axios"' package-lock.json | grep -E "1\.14\.1|0\.30\.4"

检查恶意依赖包:

ls node_modules/plain-crypto-js 2>/dev/null && echo "POTENTIALLY AFFECTED"

第二步:立即修复

  1. 降级到安全版本:
npm install [email protected]  # 1.x 用户
npm install [email protected]  # 0.x 用户
  1. 在 package.json 中添加版本锁定:
{
  "dependencies":{"axios":"1.14.0"},
"overrides":    {"axios":"1.14.0"},
"resolutions":{"axios":"1.14.0"}
}
  1. 删除恶意依赖包:
rm -rf node_modules/plain-crypto-js
npm install --ignore-scripts
  1. 如果已执行恶意脚本:

⚠️ 立即将系统视为完全沦陷! 不要尝试原地清理,应从已知安全状态重建系统,并轮换所有凭证(SSH 密钥、API Token、云服务等)。

长期预防措施

  • 始终锁定依赖版本,避免使用 latest 或未限定范围的版本
  • 在 CI/CD 中启用依赖审计(如 npm audit、Socket.dev 等)
  • 设置 npm config set min-release-age 3 避免安装刚发布的新包
  • 定期审查 lockfile 变更,警惕未经审查的依赖更新

参考来源

[1][email protected]: mailto:[email protected]

[2][email protected]: mailto:[email protected]

[3]StepSecurity – axios Compromised on npm: https://www.stepsecurity.io/blog/axios-compromised-on-npm-malicious-versions-drop-remote-access-trojan

[4]GitHub – axios/axios Issue #10604: https://github.com/axios/axios/issues/10604

[5]Aikido Security – axios compromised on npm: https://www.aikido.dev/blog/axios-npm-compromised-maintainer-hijacked-rat

[6]Socket.dev – Supply Chain Attack on Axios: https://socket.dev/blog/axios-npm-package-compromised

[7]VibeAudits – Axios npm Supply Chain Attack: https://vibeaudits.com/blog/axios-npm-supply-chain-attack-31-march-26-what-happened-whos-affected


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:M01N Team 天元实验室 天元实验室《OpenClaw依赖包Axios遭供应链投毒:恶意版本植入远控木马》

评论:0   参与:  0