pile·
보안·vercel-blogVercel Blog·

Next.js CDN 캐시 포이즈닝 취약점 (CVE-2025-32421)

Next.js 의 CDN 캐시 포이즈닝 취약점(CVE-2025-32421)이 공개됐다. 14.2.24 초과 ~ 15.1.6 미만 버전이 대상이며, `?__nextDataRequest=1` 쿼리와 `x-now-route-matches` 헤더를 동시에 조작하는 레이스 컨디션으로 비캐시 데이터의 응답 바디를 캐시 가능한 요청에 주입할 수 있다.

핵심 포인트
  • 영향 버전: Next.js 14.2.24 초과 ~ 15.1.6 미만
  • 공격 원리: 두 요청을 정밀한 타이밍에 전송 — `?__nextDataRequest=1`(비캐시 데이터 요청)과 `x-now-route-matches` 헤더를 가진 일반 요청을 동시 발송, 일부 CDN 이 explicit cache-control 없이 200 OK 를 캐시하는 동작을 이용
  • 피해 범위: CDN 캐시 오염에 한정. 백엔드 접근·권한 상승 불가. 정밀한 타이밍과 취약한 CDN 설정이 모두 필요해 실제 악용 난이도는 높음
  • Vercel 호스팅 사용자는 플랫폼이 explicit cache-control 을 강제해 영향 없음
  • 수정 버전(15.1.6, 14.2.24)은 응답에서 `x-now-route-matches` 헤더를 제거해 취약점 차단
  • 자체 호스팅 임시 대응: CDN 레이어에서 `x-now-route-matches` 헤더 제거 또는 위험 응답에 `cache-control: no-store` 적용
왜 읽나Next.js 를 자체 CDN 앞에 호스팅하는 팀이 패치 버전 적용 여부와 임시 우회 방법을 즉시 확인해야 한다.
vercel-blog
Vercel Blog 블로그
원문은 여기서 이어서 읽을 수 있어요
원문 읽기
읽음 (0)

이 글과 비슷한

  1. 보안·gitlab-engGitLab Blog·

    Serena MCP 에이전트의 치명적 원격 코드 실행 취약점 분석

    GitLab 보안팀이 AI 코딩 에이전트 Serena(월 PyPI 다운로드 13.6만 건)에서 치명적 원격 코드 실행 취약점을 발견했다. Jinja2 비샌드박스 환경과 신뢰 모델의 미검사 경로가 결합해 개발자가 악의적 저장소를 열기만 해도 코드가 실행된다. serena-agent 1.7.0에서 SandboxedEnvironment 교체로 수정 완료됐다.

    요약 이어보기
    #mcp#security#rce+2