文章总结: 阿里云安全团队复盘Axios供应链投毒事件,攻击者通过窃取npm账号发布恶意版本1.14.1和0.30.4,注入plain-crypto-js依赖并在postinstall阶段触发跨平台RAT木马。关键防护建议包括立即检查依赖版本、隔离受感染设备、轮转凭证及引入自动化扫描工具。阿里云已上线检测规则并阻断C2域名连接。 综合评分: 85 文章分类: 供应链安全,漏洞预警,应急响应,解决方案,安全运营
Axios投毒事件:阿里云安全复盘分析与关键防护建议
阿里云安全
2026年4月1日 17:49 浙江
事件核心概述
阿里云安全团队一直持续跟踪分析供应链攻击,在近期一起Axios事件中,我们主动发现并阻断了攻击。当前云安全中心的所有付费客户已经能够检测、阻断该类型攻击。Axios是一个基于promise网络请求库,在Axios的0.30.4和1.14.1版本中存在恶意依赖plain-crypto-js。安装受影响版本的安装包后会下载攻击者指定的远控木马并执行。
本次攻击并非通过常规的代码合并(Pull Request)污染开源代码库,而是一起典型的开发者凭据劫持事件。攻击者直接利用窃取的高权限npm账号,发布了包含后门的官方版本。
- 受影响组件:
axios - 恶意版本号:
1.14.1和0.30.4 - 投毒方式:绕过GitHub Actions等官方CI/CD流程,直接向npm Registry推送篡改后的包
- 恶意载荷:通过引入名为
plain-crypto-js的隐蔽依赖,静默投放跨平台远程访问木马(RAT) - 攻击目标:开发者的本地机器以及企业自动化构建服务器(支持MacOS、Linux、Windows平台)
攻击链路与技术剖析
攻击者的手法非常老练且极具隐蔽性。整个攻击过程可拆解为以下三个关键阶段:
凭据劫持与越过CI/CD
攻击者首先获取了Axios核心维护者的npm账号发布权限。在正常的开源项目迭代中,代码需经过GitHub Actions流水线的自动化测试与构建才能发布。为了避免在GitHub公开仓库的提交历史中留下痕迹并触发代码审查,攻击者选择在本地构建恶意的发布包,并使用被盗凭据强行推送到npm仓库。
隐蔽的恶意依赖注入
在篡改发布的[email protected]和0.30.4版本中,攻击者并没有去修改Axios原本的核心逻辑文件,而是直接修改了package.json文件。他们向其中注入了一个全新的依赖项:[email protected]。
这个依赖在Axios的任何源代码中都没有被实际引入(import/require)。其唯一存在的目的,就是作为后续恶意脚本的载体。
利用postinstall触发跨平台RAT
当不知情的开发者或自动化服务器执行npm install下载受感染的Axios版本时,npm包管理器会自动解析并下载该隐形依赖。随后,plain-crypto-js包内部的postinstall钩子脚本会被静默触发,执行一个名为setup.js的脚本。
该setup.js脚本充当了一个跨平台的恶意软件释放器(Dropper)即,会根据受害者的操作系统类型,自动下载并植入远程访问木马。为了对抗安全排查,恶意程序在执行完毕后具备自毁机制,因此事后直接检查node_modules目录往往难以发现明显的残留源码。
IOCs与系统影响
一旦木马驻留成功,攻击者便能在受害者机器上建立持久化连接,进而窃取敏感数据(如环境变量、源代码、云服务凭据、SSH 密钥等)或执行任意系统命令。不同操作系统的具体后门释放路径如下表所示:
排查与修复指南
鉴于该恶意载荷的自毁特性以及极强的破坏力,安全团队和开发者需要立即采取以下步骤进行排查:
项目依赖排查
检查项目的依赖文件(如package-lock.json、yarn.lock或pnpm-lock.yaml等)
-
确认是否曾引入过Axios恶意版本(
1.14.1、0.30.4)。 -
执行命令查看是否安装了被投毒的版本:
npm list axios -
直接检索包管理锁文件:
grep -A1 '"axios"' package-lock.json -
检查是否存在后门依赖目录:
ls node_modules/plain-crypto-js
系统后门排查
如果在项目中发现了上述恶意版本,立即检查文件系统中是否存在木马:
- MacOS:执行
ls-la/Library/Caches/com.apple.act.mond - Linux:执行ls-la/tmp/ld.py
- Windows (CMD):执行
dir "%PROGRAMDATA%\wt.exe"
应急阻断与修复建议
- 物理与网络隔离:立即将疑似受感染的开发机或服务器从内部网络中隔离,防止内网横向移动。
- 凭证轮转:彻底吊销在该机器上存放或使用过的所有敏感凭据,包括但不限于npm Token、GitHub PAT、AWS/GCP/阿里云访问密钥等。
- 版本回退与锁定:在绝对安全的环境中,将项目中依赖的
axios降级至安全的稳定版本,重新生成并提交lock文件。 - 持续监控与建设:企业在日常开发中不能盲目信任官方来源的包版本更新,必须加强对锁文件的版本变更审计,并引入自动化工具来扫描第三方依赖中的隐蔽投毒与异常
postinstall行为,以建立更为纵深的供应链防御体系。
阿里云安全响应
阿里云云安全中心和云防火墙已在第一时间完成以下响应:
检测策略上线:云安全中心已上线针对Axios1.14.1/0.30.4的恶意包检测规则,支持自动识别受影响主机。
入侵检测告警:阿里云云安全中心已经支持相关投毒文件的检测,如果发现相关告警,请使用产品功能进行处置。
网络流量拦截:阿里云云防火墙已阻断sfrclak.com C2域名的出站连接。
事件调查:Agentic SOC事件调查AI Agent天然支持Axios供应链风险自动化排查,关联多源日志精准定位失陷资产并生成事件溯源图和可执行处置建议,并支持下载事件调查技术报告。
如需了解更多或申请体验,欢迎体验:
云安全中心https://www.aliyun.com/product/security-center。
云防火墙,https://www.aliyun.com/product/cloud-firewall。
点击“阅读原文”了解更多。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:阿里云安全 《Axios投毒事件:阿里云安全复盘分析与关键防护建议》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。











评论