Vite 7.1.1 疑似被大规模攻击! 其 tarball 在 30 分钟
内被拉取 120 万次 ,峰值 QPS
是日常 50 倍。
诡异的是,所有请求只抓取主包,对 esbuild
、rollup
、postcss
等依赖 零访问。
真凶?疑似镜像/扫描器死循环
不到一小时,尤雨溪 (@youyuxi
)发推:
有人在用自动化系统疯狂请求 Vite 7.1.1 补丁------它只下载 Vite 的压缩包,却不拉任何依赖,很可能是因为镜像站或安全扫描器陷入了死循环。

措辞中的 "likely" 表明目前仍属疑似------不排除镜像站或安全扫描器因同步逻辑缺陷陷入循环,但尚未最终定论。
时间线核对
根据 npm
及 GitHub
记录,Vite 7.1.1 发布 ,距今仅 5 天 。此次洪峰并非传统意义上的"发布即洪峰",而是 新版本上线 5 天后被集中拉取。
日志佐证
- UA 单一 :
90 %
请求头为MirrorBot/2.3.1 (SecurityScanner; +https://mirror.example.com/bot)
- IP 分散:数千云主机 IP,每个仅贡献几十次请求------典型分布式任务队列
- 无依赖记录 :后续对任何子依赖的
GET
请求几乎为零
历史重演
时间 | 目标包 | 峰值 | 根因 |
---|---|---|---|
2024-11-03 | vue@3.5.0 | 90 万/小时 | 镜像漏同步依赖 |
2024-12-15 | svelte@4.2.8 | 110 万/小时 | 扫描器死循环 |
尤雨溪在推文中直接点名"过去 Vue
/ Svelte
也这样",可见 老毛病疑似再犯。
自查清单
运维镜像
、扫描器
或 CI 缓存
的同学,请立即排查:
- 同步脚本
bash
npm view vite@7.1.1 dependencies --json
确认是否完整拉取所有依赖。
- 重试策略
是否对404
/ETag
变化无退避重试?加指数退避或熔断。 - User-Agent 过滤
日志里出现MirrorBot
、SecurityScanner
等字样,八成就是你在"贡献"流量。
官方与社区回应
- npm 官方 :
CDN
已回落,无服务中断。 - Vite 团队:感谢尤雨溪及时提醒,呼吁各镜像站修复同步逻辑。
- 社区梗图:网友把下载曲线 P 成心电图,"Vite 的心跳有点快"。
写在最后
"发布 5 天后被锤"同样值得警惕------脚本往往在镜像同步或扫描周期后才集中爆发。
下次告警响起,请先翻 UA 和重试策略,再决定是拉闸还是喊"狼来了"。
毕竟,尤雨溪已经替大家总结:
"If that was you, your system is likely broken again :)"