---
title: axios 又出事了：npm 两个版本被供应链投毒
date: 2026-04-01T04:14:36Z
modified: 2026-04-01T04:14:45Z
permalink: "https://www.appinn.com/axios-supply-chain-attack-two-versions/"
type: post
status: publish
excerpt: ""
categories:
  - 业界消息
tags:
  - 业界消息
  - 供应链
  - 投毒
featured_image: "https://www.appinn.com/wp-content/uploads/2026/04/cover-1775016574094-1.jpg"
author: 青小蛙
timestamp: 2026-04-01T04:14:45Z
---

![](https://www.appinn.com/wp-content/uploads/2026/04/cover-1775016574094-1.jpg)

来自论坛 @taoran 同学的消息：[https://meta.appinn.net/t/topic/83382](https://meta.appinn.net/t/topic/83382)

严重供应链攻击，axios 两个版本被投毒：axios 在 npm 上发布的部分版本疑似被植入恶意代码。

[axios](https://github.com/axios/axios) 是一个用于发送 HTTP 请求的 JavaScript 库。

## 受影响版本

- `axios@1.14.1`
- `axios@0.30.4`

## 攻击方式

这是一次典型的 npm 供应链攻击：

1. 在官方包中混入恶意依赖
2. 利用 npm 生命周期脚本（`postinstall`）执行代码
3. 在用户机器上下载并运行后门程序

也就是说：**只要执行过 `npm install`，就可能被触发**

## 影响范围

- 主要影响 Node.js / 前端 / 后端项目
- 依赖 axios 的项目可能间接受影响



| 项目 | 内容 |
| --- | --- |
| 恶意版本 | axios@1.14.1 和 axios@0.30.4 |
| 攻击手法 | 劫持维护者 jasonsaayman 的 npm 账户，绕过 CI/CD 直接发布 |
| 恶意依赖 | plain-crypto-js@4.2.1（伪装成 crypto-js，实际 drop RAT） |
| 攻击者服务器 | sfrclak\[.\]com:8000 (IP: 142.11.206.73) |
| 平台 payload | **macOS**: /Library/Caches/com.apple.act.mond **Linux**: /tmp/ld.py **Windows**: 𝑃⁢𝑅⁢𝑂⁢𝐺⁡𝑅⁢𝐴⁢𝑀⁢𝐷⁢𝐴⁢𝑇⁢𝐴\\wt.exe |

## 自查方法

1. 立即检查
    npm list axios 2>/dev/null | grep -E “1.14.1|0.30.4”
    ls node\_modules/plain-crypto-js 2>/dev/null && echo “⚠️中招”
2. 如果命中
    • 降级到安全版本：axios@1.14.0 或 axios@0.30.3
    • 系统已受陷 → 从干净状态重建，轮换所有凭证（npm token、AWS 密钥、SSH、云凭证）
    • 检查 RAT 持久化文件
3. CI/CD 加固
    npm ci –ignore-scripts # 禁止 postinstall 脚本
    iptables -A OUTPUT -d 142.11.206.73 -j DROP # 屏蔽 C2

axios 下载量很大，影响范围极大。检查完你的项目和CI/CD流水线。

更多讨论见：[https://meta.appinn.net/t/topic/83382](https://meta.appinn.net/t/topic/83382)

## Topics

**分类目录:** [业界消息](https://www.appinn.com/category/it-news/?output_format=md)

**标签:** [供应链](https://www.appinn.com/tag/%e4%be%9b%e5%ba%94%e9%93%be/?output_format=md), [投毒](https://www.appinn.com/tag/%e6%8a%95%e6%af%92/?output_format=md)