V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
0X00FFFF
V2EX  ›  信息安全

[email protected] 遭遇供应链投毒:针对开发者及 MCP 用户的高隐蔽性 0-day 攻击

  •  5
     
  •   0X00FFFF · 16 小时 38 分钟前 · 6096 次点击

    这是 2026 年 3 月 31 日(不到 24 小时前) 爆发的全新 0day 供应链攻击,目前 npm 官方和主流安全社区尚未公开披露。

    攻击核心

    通过 npx 安装 latest 版本时,[email protected].1 被恶意投毒,偷偷引入了伪装成 crypto-js 的恶意包 [email protected]

    不仅普通开发者受影响,大量使用 AI Coding CLI( Cursor 、Claude Code 、Windsurf 、Codex 等)调用 open-websearchexa-mcp-server 等 MCP 工具的用户也极易中招,因为它们的 npx 缓存同样被污染。

    攻击手法(三平台全覆盖)

    C2 服务器http://sfrclak.com:8000/6202033

    • Windows

      • 复制 powershell.exeC:\ProgramData\wt.exe(伪装成 Windows Terminal )
      • 生成 VBS 脚本下载 payload ,隐藏执行 PowerShell (-w hidden -ep bypass
      • 执行后自删除所有痕迹
    • macOS

      • 下载后门二进制到 /Library/Caches/com.apple.act.mond(伪装系统进程)
      • 赋予权限后后台运行 + 连回 C2
      • 通过 osascript 执行并擦除痕迹
    • Linux

      • 下载 Python 后门到 /tmp/ld.py
      • nohup 后台常驻

    最阴险的是毁尸灭迹

    • 删除自身的 setup.js
    • package.md 重命名为 package.json,彻底覆盖原始 postinstall 字段
    • 事后查看 package.jsonnpm list 几乎看不出任何异常

    快速自查命令(强烈建议立刻执行)

    # 检查可疑 axios 版本
    npm list axios 2>/dev/null | grep -E "1\.14\.1|0\.30\.4"
    
    # 检查 lock 文件
    grep -A1 '"axios"' package-lock.json | grep -E "1\.14\.1|0\.30\.4"
    
    # 检查恶意依赖
    ls node_modules/plain-crypto-js 2>/dev/null && echo "⚠️ 可能已中招!"
    
    # 检查 RAT 残留痕迹
    # 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 (cmd)
    dir "%PROGRAMDATA%\wt.exe" 2>nul && echo COMPROMISED
    58 条回复    2026-04-01 00:27:06 +08:00
    aikilan
        1
    aikilan  
       16 小时 34 分钟前
    上次 npm 改了发布机制,这次再来一波,npm 打算改啥
    crime1024
        2
    crime1024  
       16 小时 31 分钟前
    网络不安全,我要回家
    eviladan0s
        3
    eviladan0s  
       16 小时 29 分钟前 via iPhone
    和 0day 没有关系,是维护者的 npm 账户被入侵了
    wu67
        4
    wu67  
       16 小时 29 分钟前
    幸亏最近没有升级这工具库, 我本身也锁死了版本号
    shirakawatyu
        5
    shirakawatyu  
       16 小时 21 分钟前
    node_modules 散落在硬盘各处,想查都困难
    zeex
        6
    zeex  
       16 小时 19 分钟前
    这个有点无解 这一波一下都得中招
    lisxour
        7
    lisxour  
       16 小时 18 分钟前
    npm 就没有签名机制吗
    lujiaosama
        8
    lujiaosama  
       16 小时 16 分钟前
    AXIOS 基本上是前端请求库的基石了, 这影响面也太巨大了吧.
    irrigate2554
        9
    irrigate2554  
       16 小时 12 分钟前
    everything 打开,搜索 plain-crypto-js 看看有没有吧
    shirakawatyu
        10
    shirakawatyu  
       16 小时 10 分钟前
    @shirakawatyu 看起来是刚发不久就被发现了,npm 上已经没这版本了
    7gugu
        11
    7gugu  
       16 小时 9 分钟前
    被波及到了,只能赶紧锁版本了,以后这种基础库还是不能用最新的
    wzhcanon
        12
    wzhcanon  
       16 小时 9 分钟前
    这太扯了
    thrinity
        13
    thrinity  
       16 小时 8 分钟前
    open-websearch 这种还挺频繁用到
    laikicka
        14
    laikicka  
       16 小时 7 分钟前
    远离 axios 保平安
    crysislinux
        15
    crysislinux  
       15 小时 49 分钟前 via Android
    nodejs 这种小包生态供应链投毒无解了。
    Ketteiron
        16
    Ketteiron  
       15 小时 30 分钟前   ❤️ 3
    https://github.com/axios/axios/issues/10604
    开发者凭证被偷感觉是无解的难题。
    realJamespond
        17
    realJamespond  
       15 小时 5 分钟前
    pnpm 有影响不?
    apkapb
        18
    apkapb  
       15 小时 2 分钟前
    只有 1.14.1 中招吗
    Felldeadbird
        19
    Felldeadbird  
       14 小时 56 分钟前
    吓得我菊花一紧,"axios": "^1.13.6"。 我没中招吧。
    stinkytofux
        20
    stinkytofux  
       14 小时 52 分钟前
    网络太危险了, 我要拔网线
    liangdi
        21
    liangdi  
       14 小时 51 分钟前
    供应链安全 确实头疼
    FakerLeung
        22
    FakerLeung  
       14 小时 49 分钟前
    还好我司强制性要求版本固定,还在 1.13.5
    v21984
        23
    v21984  
       14 小时 49 分钟前
    以及 0.30.4
    Bronya
        24
    Bronya  
       14 小时 47 分钟前
    吓人,这种基础库,涉及范围太广了
    今天是 axios ,明天又会是哪个🤯
    liuxue
        25
    liuxue  
       14 小时 45 分钟前 via iPhone
    @realJamespond 这个用的一般也是 npm 的仓库吧
    loading
        26
    loading  
       14 小时 44 分钟前
    latest 这种不确定性,真的可怕噢。
    stinkytofux
        27
    stinkytofux  
       14 小时 43 分钟前
    @Bronya 已经开始人传人迹象了.
    Javin
        28
    Javin  
       14 小时 42 分钟前
    现在这种漏洞越来越多,和 AI 是不是有关系呢
    MIUIOS
        29
    MIUIOS  
       14 小时 40 分钟前
    我操 我中招了
    Ketteiron
        30
    Ketteiron  
       14 小时 35 分钟前   ❤️ 1
    @realJamespond #17 pnpm10+ 默认在安装期间阻止依赖项的生命周期脚本执行,因此主动安装的 axios 不会中招,但是 CLI/MCP 很可能使用 npx ,这样依然会中招。
    chen7897499
        31
    chen7897499  
       14 小时 28 分钟前
    ld.py payload https://pastebin.com/MtsK5QHx
    其他的弄不下来了
    xling
        32
    xling  
       14 小时 25 分钟前
    npm 这奇葩自动升级策略迟早要酿成大祸
    diudiuu
        33
    diudiuu  
       14 小时 24 分钟前
    无解,就固定版本吧,非必要不升级
    renmu
        34
    renmu  
       14 小时 17 分钟前 via Android
    我今天上午刚升级的 axios 依赖,中招了,火绒有拦截提醒,但被我允许了,还骂了一句火绒 sb,我错怪你了啊
    june4
        35
    june4  
       14 小时 3 分钟前
    nodejs 安全性确实不行,应该也搞成 deno 这样的
    lisongeee
        36
    lisongeee  
       13 小时 52 分钟前
    如果是上次的 apifox 事件导致的 npm token 泄露,是不是会频繁导致此类问题
    0X00FFFF
        37
    0X00FFFF  
    OP
       13 小时 48 分钟前
    @renmu 😂
    a33291
        38
    a33291  
       13 小时 46 分钟前
    @lisongeee 是,至少会持续一段时间,比如 https://github.com/hicccc77/WeFlow/issues/555
    C64NRD
        39
    C64NRD  
       13 小时 24 分钟前
    npm 官网好像刚刚撤掉顶部 banner ( 2F ) 没多久
    kasusa
        40
    kasusa  
       13 小时 15 分钟前
    好新啊。
    poly1911
        41
    poly1911  
       13 小时 10 分钟前
    自查完毕,没有中招

    I'm tired boss
    test9106
        42
    test9106  
       12 小时 52 分钟前
    中招了怎么清理机器啊
    tiaod
        43
    tiaod  
       12 小时 30 分钟前
    我就说为啥现在 npm 发个包那么复杂
    m9rco
        44
    m9rco  
       12 小时 21 分钟前
    @chen7897499 #31 这是什么东西大佬,观摩下
    meteora0tkvo
        45
    meteora0tkvo  
       11 小时 40 分钟前
    说实话,直接用浏览器原生 fetch 也挺方便的,搞不懂为啥还要特地装个 axios
    wkend
        46
    wkend  
       10 小时 36 分钟前
    老妈,互联网太危险了,我想回家😭
    FireKey
        47
    FireKey  
       10 小时 32 分钟前
    感觉是有基础设施中招了或者这类攻击模式开始传播,现在能不升级先不升级了
    renyixu
        48
    renyixu  
       10 小时 13 分钟前   ❤️ 1
    明天华为是不是就自研了
    realkaiway
        49
    realkaiway  
       9 小时 51 分钟前
    test9106
        50
    test9106  
       7 小时 32 分钟前
    @realkaiway 多谢!
    Livid
        51
    Livid  
    MOD
    PRO
       6 小时 57 分钟前   ❤️ 1
    $ cat ~/.npmrc
    min-release-age=7
    AiBoy
        52
    AiBoy  
       6 小时 46 分钟前
    又来又来!
    Sezxy
        53
    Sezxy  
       6 小时 13 分钟前 via Android
    @renyixu ???!?
    cairnechen
        54
    cairnechen  
       5 小时 38 分钟前
    1.13.4 运气不错
    Lemonadeccc
        55
    Lemonadeccc  
       5 小时 31 分钟前
    1.14.0 差一步我去
    oIMOo
        56
    oIMOo  
       5 小时 27 分钟前
    分享一篇文章:[Axios npm Supply Chain Compromise — Full Analysis Package]( https://gist.github.com/N3mes1s/0c0fc7a0c23cdb5e1c8f66b208053ed6)

    另外求大家帮帮孩子:[求推荐代码审计软件/平台/插件]( https://v2ex.com/t/1202258#reply0)
    mrabit
        57
    mrabit  
       4 小时 28 分钟前
    @renyixu 你回复错了吧? 你是想说 Claude Code 源码?
    dcsuibian
        58
    dcsuibian  
       3 小时 59 分钟前
    Java+Python+JavaScript/TypeScript 使用者表示
    在工程规范上,Java 真的吊打后面两者
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   928 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 20:26 · PVG 04:26 · LAX 13:26 · JFK 16:26
    ♥ Do have faith in what you're doing.