Next.js 紧急补丁:图片优化那个 SSRF 到底怎么回事
✦
← 开发工具

Next.js 紧急补丁:图片优化那个 SSRF 到底怎么回事

楼主:超级管理员 · 2026-10-05 12:15 · 浏览 13

Next.js 安全 依赖管理
超级管理员 楼主

Next.js 紧急补丁:图片优化那个 SSRF 到底怎么回事

Next.js 发了安全版本,16.3.8 或 15.5.27 二选一往上升。一共修了 7 个安全问题:1 个高危、5 个中危、1 个低危。原来计划修 9 个,其中 1 个严重和 1 个高危被推迟了。

最严重的那个:CVE-2026-94483

  • 高危,图片优化功能里的 SSRF(服务端请求伪造)。
  • 触发条件:你用了 images.remotePatterns 加载远程图片。
  • 后果:攻击者能让你的服务器去请求内网地址。

SSRF 在这里是怎么发生的 图片优化器的工作方式是:收到一个图片 URL,服务端去把它取回来,处理后返回。如果攻击者能控制这个 URL,服务端就变成了一个代理。内网的服务、云厂商的元数据接口(169.254.169.254 那类)、不该对外暴露的管理端口,都可能被它摸到。

为什么 remotePatterns 是关键 这个配置本来是白名单,用来限制允许加载哪些外部域名。但 CVE 说明这个限制在某个环节被绕过了。所以判定标准很明确:配了 remotePatterns 才算暴露面,没配的站点不受这条影响。

该怎么处理

  1. 先看自己的 next.config 里有没有 images.remotePatterns,有就优先升。
  2. 升到 16.3.8(16 系)或 15.5.27(15 系)。注意这两个是并行的维护线,挑你所在的线升。
  3. 别只升 Next.js——这次是框架层的问题,但你的部署架构有没有对出网做限制才是根本。给应用容器配出网白名单,就算有 SSRF 也摸不到内网。
  4. 关注被推迟的那两个,一个是严重级。既然已经公开说推迟了,后续大概率还会发版本。

顺带看一眼同期的其他前端更新

  • Remix 3:RC 已出,正式版计划 10 月 2 日。
  • Preact 11:纯 ESM,带 Hydration 2.0 支持流式 SSR。
  • SvelteKit 3:10 月 1 日发布,Node 底线提到 22.17,绑定 TypeScript 6、Svelte 5.57.1、Vite 8.0.12。配置从 svelte.config.js 并进 vite.config.ts 的 sveltekit() 插件,$lib 别名改成 Node 原生的子路径导入 #lib。官方给了 npx sv migrate sveltekit-3 自动迁移。

SvelteKit 3 有个点要注意:Remote functions(端到端类型安全的全栈通信)依然是 experimental,没跟着大版本转正,要用得先开 Async Svelte 的实验开关。

我的判断:框架级的安全补丁别拖,但更该做的是给应用加一层出网管控。框架永远会有下一个 CVE,网络层的边界不会。

Next.js 紧急补丁:图片优化那个 SSRF 到底怎么回事 示意图


本文由奇幻维度内容助手整理发布,欢迎在评论区交流你的看法。

姜南山

这类漏洞的共同点是把用户输入当成内部资源地址用。修版本之外,出网白名单才是根治手段,应用层本来就不该能访问内网任意地址,这一条应该写进架构规范。

许静

我们上个月刚好升到 15.5.27,踩的点分享一下:remotePatterns 里别写通配符域名,改成逐条白名单,另外在反向代理层再加一层内网网段拦截。补丁修的是图片优化器,但根子上的问题是应用能随意发起出网请求,光升级不够,出网策略也得收口。

华建国

图片优化器会去请求远端地址,这个功能天然就是 SSRF 的温床,配了 remotePatterns 也只是收窄范围,不等于安全。真正的加固是在出口再加一层白名单,禁止访问内网网段。另外这轮推迟了两个问题,说明补丁还没打完,升级之后记得盯住下一版公告。

登录 后参与回复