9월 30일에 Next.js의 정기 보안 릴리스로 16.3.8과 15.5.27이 배포됐습니다. 손본 취약점은 7건이며, 16.x 계열이라면 next 패키지를 16.3.8까지 올리는 것으로 대응이 됩니다.
배포 버전 — 16.3.8(Active LTS) · 15.5.27(Maintenance LTS)
해당 프로젝트 — Next.js 15.x·16.x를 쓰는 프로젝트
수정 내용 — 취약점 7건 수정(High 1 · Medium 5 · Low 1)
아직 미정 — 미뤄진 critical 1건 · high 1건의 수정 날짜
Next.js 보안 패치 16.3.8에서 고쳐진 취약점 7건
7건의 심각도는 Low와 High가 각각 1건이고, 나머지 5건이 Medium입니다.

가장 위험한 등급을 받은 것은 이미지 최적화 기능의 SSRF(CVE-2026-94483)입니다. SSRF는 공격자가 지정한 주소로 서버가 대신 접속하도록 속일 수 있는 결함을 뜻합니다.
Medium 다섯 건 가운데 다수는 캐시와 관련됩니다. 저장해 둔 응답이 엉뚱한 내용으로 뒤바뀌는 경우(캐시 오염)와, 노출되면 안 되는 내용이 함께 나가는 경우가 여기에 속합니다.
| 심각도 | 취약점 | 영향 버전 |
|---|---|---|
| High | 이미지 최적화 SSRF | 16.0.0 이상 |
| Medium | Pages Router SSG·ISR 캐시 오염 | 15.0.0 이상 |
| Medium | 루트 catch-all 캐시 오염 | 15.0.0 이상 |
| Medium | 메타데이터 이미지 dynamicParams 우회 | 16.0.0 이상 |
| Medium | ‘use cache’ 루트 파라미터 캐시 누출 | 16.3.0 |
| Medium | Draft Mode 내용 누출 | 16.3.0 |
| Low | 개발 서버 MCP 정보 노출 | 16.0.0 이상 |
권고문이 매긴 CVSS 4.0 점수는 High가 8.3이고, Medium 다섯 건은 모두 6.3, Low는 2.3으로 매겨졌습니다.
취약점 번호로 찾아보려는 독자를 위해 아래에 항목별로 묶어 두었습니다.
- 이미지 최적화 쪽 SSRF 건: GHSA-cjq9-62q9-8jv4, CVE-2026-94483
- Pages Router 캐시 오염 건: GHSA-4jqv-mc3x-m676, CVE-2026-94543
- 루트 catch-all 캐시 오염 건: GHSA-mcj8-r9mp-w47p, CVE-2026-94484
- dynamicParams 우회 건: GHSA-f87g-xv8r-7p7x, CVE-2026-94485
- ‘use cache’ 캐시 누출 건: GHSA-h694-7cp9-m8p3
- Draft Mode 내용 누출 건: CVE-2026-94544, GHSA-3w37-wq28-93×7
- 개발 서버 MCP 건: GHSA-39w2-rjm5-chcv, CVE-2026-94486
‘use cache’ 건은 공식 블로그에 CVE 번호가 따로 적혀 있지 않지만, GitHub 보안 권고 화면에는 CVE-2026-103004가 붙어 있습니다.
출처: Next.js 공식 블로그 · September 2026 Security Release
내 프로젝트가 해당되는지 확인하는 법
릴리스 노트로 보면 16.x는 7건 모두, 15.x는 Medium 3건이 해당합니다.
우선 지금 쓰는 next 버전이 몇인지 확인합니다. 프로젝트 폴더에서 명령 하나만 실행하면 됩니다.
npm ls next
직접 실행함 (환경: Windows 10, Node 22.22.0, npm 10.9.4) · 현재 설치된 next 버전을 조회
proj@1.0.0 C:\...\dev-next\proj
`-- next@16.3.7
직접 실행함 (같은 환경) · 16.3.7을 설치해 둔 빈 프로젝트에서 얻은 결과이며 경로 일부는 생략
대상 판별은 간단합니다. 16.x에서 16.3.8보다 아래이거나 15.x에서 15.5.27보다 아래이면 업그레이드가 필요합니다.
버전만 해당한다고 전부 위험한 것은 아닙니다. 특정 기능을 켜 두지 않았다면 영향이 없는 항목이 있고, 그 조건은 공식 글에 명시돼 있습니다.
| 취약점 | 해당 조건 |
|---|---|
| 이미지 SSRF | images.remotePatterns를 설정한 앱 |
| Pages Router 캐시 오염 | 자체 호스팅 + SSG·ISR 페이지 |
| 루트 catch-all 캐시 오염 | 루트 catch-all 페이지 + SSG·ISR |
| dynamicParams 우회 | webpack으로 빌드한 App Router |
| ‘use cache’ 캐시 누출 | Cache Components를 켠 앱 |
| Draft Mode 누출 | Cache Components + Draft Mode 미리보기 |
| 개발 서버 MCP | next dev로 띄운 개발 서버 |
공식 글이 직접 영향 없음으로 못 박은 경우는 네 가지입니다. 이미지 원격 허용 설정이 없는 앱은 SSRF에서, Vercel에서 운영 중인 앱은 Pages Router 캐시 오염에서 빠집니다. 또 Turbopack으로 빌드하면 dynamicParams 건에서, 운영 배포 환경이면 MCP 건에서 제외됩니다.
15.x 쪽 릴리스 노트인 15.5.27에는 캐시 오염 두 건과 dynamicParams 한 건, 합쳐서 Medium 3건이 적혀 있습니다. 한편 dynamicParams 권고문의 영향 버전은 16.0.0 이상으로만 돼 있어, 두 문서가 서로 어긋납니다.
출처: GitHub vercel/next.js · v15.5.27 릴리스 노트
여기에 걸린다면 다음 할 일은 버전 업그레이드입니다.
올리는 명령과 올린 뒤 확인
16.x 사용자는 next@16.3.8, 15.x 사용자는 next@15.5.27이 목표 버전입니다.

| 구분 | 직전 버전 | 9월 30일부터 |
|---|---|---|
| 16.x | 16.3.7 | 16.3.8 |
| 15.x | 15.5.26 | 15.5.27 |
공식 글은 설치 명령을 두 줄 소개합니다. 자신의 줄기에 해당하는 한 줄만 쓰면 됩니다.
npm install next@15.5.27 # for 15.5
npm install next@16.3.8 # for 16.3
공식 문서 예시 · Next.js 팀이 9월 30일 글에 올린 Terminal 블록을 원문 그대로 옮김
npm 레지스트리에서 10월 2일에 확인한 latest 태그는 16.3.8입니다. 이 버전을 쓰려면 Node.js가 20.9.0 이상이어야 합니다.
이어지는 기록은 16.3.7이 설치된 빈 프로젝트에서 16.3.8로 올려 본 과정입니다.
npm install next@16.3.8 --ignore-scripts --no-fund
npm ls next
npm audit
직접 실행함 (환경: Windows 10, Node 22.22.0, npm 10.9.4) · 업그레이드, 버전 조회, 취약점 조회 순서로 실행한 세 줄
added 4 packages, changed 2 packages, and audited 26 packages in 8m
found 0 vulnerabilities
proj@1.0.0 C:\...\dev-next\proj
`-- next@16.3.8
found 0 vulnerabilities
직접 실행함 (같은 환경) · 앞의 세 줄을 실행해 얻은 출력이며 경로 일부만 생략
npm ls next 결과에서 16.3.8을 볼 수 있다면 올리기에 성공한 것입니다.
눈여겨볼 점이 하나 있습니다. 16.3.7 상태였던 같은 날의 npm audit도 0건이었고, GitHub 권고 여섯 건의 수정 버전 항목에는 16.3.?라는 표기가 남아 있습니다.
따라서 현 시점에서 신뢰할 만한 확인법은 audit 결과보다 설치된 버전 숫자입니다.
7건의 보안 수정은 16.3.8 릴리스 노트에 전부 담겨 있고, 그 밖의 변경은 적혀 있지 않습니다.
출처: GitHub vercel/next.js · v16.3.8 릴리스 노트
당장 못 올릴 때 쓸 수 있는 공식 완화책
권고문 중 임시 대응책을 제시한 것은 이미지 SSRF 한 건이 유일합니다.
그 권고의 Workaround 항목은 허용 목록에 올려 둔 원격 이미지 주소, 즉 images.remotePatterns 설정을 다시 훑어보라고 말합니다. DNS까지 포함해 믿을 수 없는 호스트가 섞여 있는지 확인하라는 의미입니다.
이 설정은 next.config 안에서 외부 이미지 서버를 허용할 때 쓰며, 공식 문서가 보여 주는 형태는 아래와 같습니다.
import type { NextConfig } from 'next'
const config: NextConfig = {
images: {
remotePatterns: [
{
protocol: 'https',
hostname: 's3.amazonaws.com',
port: '',
pathname: '/my-bucket/**',
search: '',
},
],
},
}
export default config
공식 문서 예시 · Next.js 문서 이미지 항목(Remote images)의 next.config.ts, S3 버킷 한 곳만 허용하는 설정
패턴은 가능하면 촘촘하게 적으라는 것이 문서의 조언입니다.
다른 항목들은 상황이 다릅니다. ‘use cache’ 루트 파라미터 권고는 알려진 우회 방법이 없다고 밝혔고, 나머지 다섯 건의 권고에는 대응 방법을 적는 칸 자체가 보이지 않습니다.
출처: GitHub 보안 권고 · GHSA-cjq9-62q9-8jv4 이미지 최적화 SSRF
아직 정해지지 않은 것, 미뤄진 2건
이번 릴리스에서 빠진 critical 1건과 high 1건은 언제 고쳐질지 정해지지 않았습니다.

9월 30일에 올라온 글의 도입부가 이 사정을 다룹니다. 연동된 상위 패키지 쪽 지연으로 critical 1건과 high 1건의 수정이 연기됐다고 설명합니다.
앞서 9월 23일에 나온 예고 글에도 같은 날짜로 고침 문구가 붙었습니다. 9건이 아니라 7건을 이번에 다루며, 나머지 두 건은 Next.js의 이후 릴리스에서 수정한다고 쓰여 있습니다.
9월 하순의 전개를 시간 순서대로 보면, 9월 22일에 긴급 업데이트 16.3.6과 15.5.26이 나왔고 이어 9월 23일에 정기 릴리스 예고 글이 게시됐습니다.
16.3.7(9월 29일)은 버그 한 건만 고친 버전이라 보안 수정이 없고, 7건이 실린 것은 9월 30일의 16.3.8과 15.5.27입니다.
9월 22일의 긴급 건은 GHSA-vcvr-r3jv-pc5j 로 번호가 붙었고, next/og 안의 Node.js용 ImageResponse에서 나온 문제였습니다. 16.2.0 이상 16.3.6 미만이 영향 범위이고, 15.x는 이 원격 코드 실행 취약점과 무관하다고 적혀 있습니다.
미뤄진 두 건은 번호도 내용도 밝혀진 바 없습니다. 9월 22일 건과 같은 사안인지조차 공식 글에서는 확인되지 않습니다.
출처: Next.js 공식 블로그 · Upcoming Next.js September Security Release
올리기 전에 볼 여섯 가지
첫 줄에 ‘예’라고 답할 수 있으면 대상이며, 이어지는 줄들은 어떤 취약점과 연결되는지 가르쳐 줍니다.

- 설치된 next가 16.3.8보다 낮다(15.x 줄기는 15.5.27 기준)
- 이미지 원격 허용 설정(remotePatterns)을 next.config에 적어 두었다
- 직접 서버를 운영하고, SSG·ISR로 만든 페이지가 있다
- 빌드 도구가 webpack이다
- Cache Components나 Draft Mode를 켜 두었다
- Node.js 버전이 20.9.0 이상이어야 한다(16.3.8 기준)
지원 줄기도 점검하세요. Next.js 지원 정책상 16.x는 Active LTS, 15.x는 Maintenance LTS입니다. 14.x와 13.x는 종료된 버전으로 분류돼 있습니다.
Next.js 보안 패치, 자주 묻는 질문
Q. Vercel에 배포했으면 안 올려도 되나요?
A. Vercel 배포는 영향이 없다고 공식 글이 명시한 항목은 Pages Router의 SSG·ISR 캐시 오염 하나입니다. 나머지 여섯 건에는 그런 단서가 달려 있지 않습니다.
Q. 개발할 때만 next dev를 쓰는데 MCP 건도 걸리나요?
A. 예, 해당됩니다. 다만 대상은 next dev로 실행한 개발 서버에 한정되고, 운영 배포에서는 그 엔드포인트가 열리지 않으며 심각도도 Low입니다.
Q. 16.3.6으로 이미 올렸는데 또 올려야 하나요?
A. 16.3.6은 9월 22일의 긴급 건에 대응한 버전입니다. 9월 30일의 7건은 16.3.8부터 반영돼 있으니 다시 한 번 올리셔야 합니다.
명령 자체는 한 줄로 끝나지만, 어느 취약점이 내 프로젝트에 걸리는지 따져 보는 데 품이 더 듭니다. 개인적으로는 미뤄진 critical 건의 수정 시점이 가장 궁금합니다.
수정 기록: 2026년 10월 2일 최초 작성
출처: Next.js 공식 블로그 9.30 · Next.js 공식 블로그 9.23 예고 · Next.js 공식 블로그 9.22 긴급 업데이트 · GitHub v16.3.8 릴리스 노트 · GitHub v15.5.27 릴리스 노트 · GitHub 보안 권고 GHSA-cjq9-62q9-8jv4 · GitHub 보안 권고 GHSA-h694-7cp9-m8p3 · Next.js 문서 Image Optimization · Next.js Support Policy(10월 2일 16시 50분 읽음)
이 글은 공식 발표와 권고 내용을 옮겨 적은 것입니다. 업그레이드에 앞서 버전과 조건을 공식 글에서 한 번 더 대조해 주세요.
Next.js 관련해 더 궁금한 점이 있으신가요? 댓글로 알려주세요.
🌏 English — Next.js 보안 패치 16.3.8, 취약점 7건과 올리는 법
- On September 30, Next.js released its regular security update as versions 16.3.8 and 15.5.27. It addresses 7 vulnerabilities, and on the 16.x line you can respond by raising the next package to 16.3.8.
- Of the 7, 1 is Low, 1 is High and the other 5 are Medium.
- The item with the highest rating is the SSRF (CVE-2026-94483) in image optimization. SSRF is a flaw that can trick a server into connecting, on its own, to an address the attacker specifies.
- Most of the 5 Medium items relate to caching: a stored response can be swapped for different content (cache poisoning), or content that should not be exposed can leak out with the response.
- The CVSS 4.0 scores given in the advisories are 8.3 for the High item, 6.3 for each of the 5 Medium items and 2.3 for the Low item.
🇯🇵 日本語 — Next.js 보안 패치 16.3.8, 취약점 7건과 올리는 법
- 9月30日に、Next.jsの定例セキュリティリリースとして16.3.8と15.5.27が配布されました。修正された脆弱性は7件で、16.x系ならnextパッケージを16.3.8まで上げれば対応できます。
- 7件のうち、LowとHighがそれぞれ1件で、残りの5件がMediumです。
- 最も等級が高いのは、画像最適化機能のSSRF(CVE-2026-94483)です。SSRFとは、攻撃者が指定したアドレスへサーバー自身が接続してしまうよう仕向けられる欠陥を指します。
- Mediumの5件の多くはキャッシュに関するものです。保存してある応答が別の内容にすり替わる場合(キャッシュ汚染)や、公開してはいけない内容が一緒に出てしまう場合があります。
- 勧告が付けたCVSS 4.0のスコアは、Highが8.3、Mediumの5件はいずれも6.3、Lowは2.3です。
🇨🇳 中文 — Next.js 보안 패치 16.3.8, 취약점 7건과 올리는 법
- 9月30日,Next.js 以例行安全更新的形式发布了 16.3.8 和 15.5.27。本次处理了7个漏洞,使用 16.x 系列的项目把 next 包升级到 16.3.8 即可应对。
- 这7个漏洞中,Low 和 High 各1个,其余5个为 Medium。
- 等级最高的是图片优化功能中的 SSRF(CVE-2026-94483)。SSRF 是一种可诱使服务器自行连接到攻击者所指定地址的缺陷。
- 5个 Medium 漏洞中多数与缓存有关:已保存的响应可能被换成别的内容(缓存污染),或者不该暴露的内容随响应一起泄露出去。
- 公告给出的 CVSS 4.0 分数为:High 项 8.3,5个 Medium 项均为 6.3,Low 项为 2.3。

답글 남기기