首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Axios 供应链投毒事件响应:腾讯云安全已完成主动排查与风险防护升级

Axios 供应链投毒事件响应:腾讯云安全已完成主动排查与风险防护升级

作者头像
云鼎实验室
发布2026-04-09 12:31:21
发布2026-04-09 12:31:21
3950
举报

事件概述

2026 年 3 月 31 日,JavaScript 生态中使用最广泛的 HTTP 客户端组件之一 axios 遭遇严重供应链投毒,其 1.14.1 和 0.30.4 版本被植入恶意代码。攻击者通过入侵 axios 维护者的 NPM 账号(jasonsaayman),在官方发布的版本中引入了恶意依赖组件 plain-crypto-js,该组件是知名加密库 crypto-js 的仿冒包(typosquatting)。攻击采用两阶段策略:先于 3 月 30 日发布无害的 plain-crypto-js@4.2.0 建立可信记录,再于 31 日发布携带恶意载荷的 4.2.1 版本,随后利用被入侵账号先后发布 axios 的两个投毒版本,实现对 1.x 和 0.x 两大版本线用户的最大范围覆盖。当开发者安装受污染的 axios 时,plain-crypto-js 的 postinstall 钩子会自动从 C2 服务器下载对应平台(Windows/macOS/Linux)的恶意脚本,写入系统临时目录并静默执行,实现远程后门控制。axios 周下载量约1亿次,被数十万个项目直接或间接依赖,此次事件波及范围极为广泛,属于供应链投毒事件。

技术分析

axios 是一个基于 Promise 的 HTTP 客户端,支持浏览器和 Node.js 环境,提供了简洁的 API 用于发送 GET、POST 等请求,并支持拦截请求和响应、转换请求和响应数据、自动转换 JSON 数据、取消请求以及客户端防御 XSRF 等功能。它凭借开箱即用的特性和良好的跨平台兼容性,成为 JavaScript 生态中下载量最高的开源组件之一。

在 axios 组件 1.14.1 及 0.30.4 版本中,攻击者通过篡改 package.json 文件,在 dependencies 字段中植入了恶意依赖 "plain-crypto-js": "^4.2.1"。当开发者通过 npm install 安装受污染的 axios 版本时,NPM 会自动拉取并安装 plain-crypto-js@4.2.1。该恶意包的 package.json 中定义了 postinstall 钩子:"postinstall": "node setup.js",意味着包安装完成后会立即执行同目录下的 setup.js 脚本。

setup.js 经过高度混淆,解码后针对不同操作系统执行差异化攻击逻辑,所有载荷均从同一 C2 服务器下载(http://sfrclak[.]com:8000/6202033):

  • macOS:通过 do shell script 执行 curl 下载恶意文件至 /Library/Caches/com.apple.act.mond,添加执行权限后使用 zsh 在后台运行;
  • Windows:通过 cmd.exe 调用 curl 下载 PowerShell 脚本至临时目录,以隐藏窗口绕过执行策略运行 powershell,随后自删除临时文件;
  • Linux:通过 curl 下载 Python 脚本至 /tmp/ld.py,使用 nohup 在后台静默执行,并将输出重定向至 /dev/null。

恶意载荷执行后会与 C2 服务器建立通信,接收攻击者下发的远程指令,实现远程控制能力,并可能进一步导致凭证窃取、持久化驻留及横向移动等后续攻击风险。攻击完成后,下载的恶意脚本会自删除以隐藏痕迹。此外,攻击者在发布恶意 axios 版本前约 24 小时,先发布了无风险的 plain-crypto-js@4.2.0 诱饵包,该版本完整复刻了合法 crypto-js 源码,未包含 postinstall 钩子,其唯一作用是在 NPM 上建立发布记录,避免该包在后续安全核查中显示为零发布记录的账号产物,从而绕过部分自动化安全检测机制。

注:在恶意版本暴露窗口内(约 3 小时)执行过安装、更新或构建流程,并解析到 axios 1.14.1 或 0.30.4 的直接或间接依赖项目,均应视为存在受影响风险。axios 作为 JavaScript 生态的“基础设施级”组件,被大量前端项目、Node.js 后端服务、构建工具及 CLI 工具广泛依赖,开发者应立即排查并回滚至安全版本。

影响版本

axios (npm) == 0.30.4

axios (npm) == 1.14.1

plain-crypto-js (npm) == 4.2.1

安全版本

axios@0.30.3 及以下历史稳定版本 axios@1.14.0

axios@0.30.5 及后续版本 axios@1.14.2 及后续版本

排查方法

1. 恶意版本/依赖检测:

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

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

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

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

2. 恶意载荷落地检测:

# macOS

ls -la /Library/Caches/com.apple.act.mond 2>/dev/null && echo "COMPROMISED"

# Linux

ls -la /tmp/ld.py 2>/dev/null && echo "COMPROMISED"

# Windows

dir "%PROGRAMDATA%\wt.exe" 2>nul && echo "COMPROMISED"

3. 可直接使用腾讯云安全中心的AI Agent安全、腾讯云主机安全的漏洞管理等模块进行快速精准排查。

修复建议

1. 降级 axios 到安全版本(立即执行)

# 卸载恶意版本

npm uninstall axios

# 安装安全版本(1.14.0 或 0.30.3)

npm install axios@1.14.0

全局修复:

npm uninstall -g axios

npm install -g axios@1.14.0

2. 清理恶意依赖

# 删除 plain-crypto-js

rm -rf node_modules/plain-crypto-js

# 清理 npm 缓存

npm cache clean --force

# 重新安装(--ignore-scripts 阻止 postinstall 脚本执行)

npm ci --ignore-scripts

3. 清除已落地的恶意载荷

(1) Linux:

# 删除恶意脚本

rm -f /tmp/ld.py

# 检查是否有其他持久化痕迹

grep -r "sfrclak.com" /etc/cron* 2>/dev/null

grep -r "sfrclak.com" ~/.bashrc ~/.zshrc 2>/dev/null

(2) macOS:

# 删除恶意文件

rm -f /Library/Caches/com.apple.act.mond

# 检查启动项

launchctl list | grep -i com.apple.act

(3) Windows(以管理员身份运行 PowerShell):

# 删除恶意文件

Remove-Item "$env:PROGRAMDATA\wt.exe" -Force -ErrorAction SilentlyContinue

# 检查计划任务

Get-ScheduledTask | Where-Object {_.TaskName -like "*wt*"} | Unregister-ScheduledTask -Confirm:

腾讯云安全响应

腾讯云主机安全与云防火墙已于事件公开后第一时间完成检测规则、IOC 与恶意域名拦截策略更新,支持客户对受影响资产进行快速定位、风险处置及持续防护。

1. 腾讯云主机安全已支持Axios供应链投毒威胁的事前脆弱性风险检测、事后恶意请求自动拦截:

  • 事前检测: 主机安全漏洞管理>应急漏洞模块,支持一键扫描云上主机中安装的 Axios 组件版本,识别存在供应链投毒风险的脆弱性版本,并输出受影响资产清单与修复建议。
  • 事后拦截: 当受感染的Axios组件向恶意 C2 服务器(sfrclak.com)发起请求时,主机安全将实时告警及自动拦截恶意请求,阻断数据窃取或远程控制指令下发,有效遏制实际危害。

2. 腾讯云防火墙已支持对Axios供应链投毒威胁的事后恶意请求自动拦截:

  • 事后拦截: 当被植入恶意代码的 Axios 组件向 C2 服务器(sfrclak.com)发起通信时,云防火墙可实时监控并识别其 DNS 解析请求。一旦检测到该恶意域名,将立即阻断其解析,从而切断攻击链路,有效阻止后续恶意指令的下发、敏感数据外泄等高风险行为。
图片
图片

END

更多精彩内容点击下方扫码关注哦~

关注云鼎实验室,获取更多安全情报

图片
图片
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-04-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云鼎实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 事件概述
    • 影响版本
    • 安全版本
    • 排查方法
    • 修复建议
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档