ConfigDeck
HIGH CVSS 7.5 npm: react-server-dom-webpack CWE-400 CWE-770

React Server Components DoS (CVE-2026-23870)

발행
2026년 5월 6일
최종 갱신
2026년 5월 9일
상태
Active
GHSA
GHSA-rv78-f8rc-xrxh

요약

React Server Components 패키지(`react-server-dom-webpack` / `parcel` / `turbopack`) 19.0.0 ~ 19.2.5의 서버 함수 엔드포인트가 조작된 HTTP 요청 처리 시 메모리 부족 또는 과도한 CPU 사용으로 서비스 거부(DoS)에 빠질 수 있는 high(CVSS 7.5) 취약점입니다. 19.0.6 / 19.1.7 / 19.2.6 패치 버전으로 즉시 업그레이드가 권장됩니다.

즉시 진단

내 프로젝트는 영향받나요?

사용 중인 react-server-dom-webpack 버전을 입력하면 이 advisory의 영향 여부를 즉시 확인합니다.

ⓘ react-server-dom-webpack 패키지 버전을 입력하면 영향 여부를 즉시 확인합니다.

이 진단 결과는 정보 제공 목적이며 무보증(AS IS)으로 제공됩니다. 실제 보안 위험 평가는 npm audit, Snyk, Dependabot 등의 공식 도구와 관리자 검토를 병행하세요. 공식 advisory에서 확인 ↗

영향 범위

영향받는 버전 범위 및 패치 버전
영향받는 범위 패치 버전
>=19.2.0 <19.2.6 19.0.6
>=19.1.0 <19.1.7 19.1.7
>=19.0.0 <19.0.6 19.2.6

호스팅 환경별 영향

이 취약점은 React Server Components 의 서버 함수(Server Functions) 엔드포인트를 외부에 노출하는 모든 환경에서 영향을 받습니다.

  • Next.js App Router (15.x / 16.x): 영향받음. Next.js 자체도 함께 5월 릴리즈에서 패치됨 (15.5.16 / 16.2.5 이상).
  • Vercel / Netlify / Cloudflare Pages: 영향받음. 호스팅 어댑터와 무관하게 RSC 런타임이 동일한 패키지를 사용하므로 패치 버전 적용이 필수.
  • Self-host Node.js: 영향받음. 직접 RSC 통합을 운영하는 경우, react-server-dom-* 패키지 버전을 직접 점검해야 함.
  • Parcel / Turbopack 직접 사용: 영향받음. react-server-dom-parcel, react-server-dom-turbopack 도 동일하게 패치 필요.

취약점 메커니즘

React Server Components 는 클라이언트 → 서버 함수 호출을 위해 HTTP 요청을 받아 RSC 페이로드(직렬화된 React 트리)를 역직렬화한 뒤 실행합니다. 이 역직렬화 경로에 입력 크기·중첩·반복 횟수에 대한 충분한 한계(throttling, allocation cap)가 적용되어 있지 않아, 공격자가 의도적으로 거대하거나 깊이 중첩된 페이로드를 보내면 다음과 같은 결과가 발생할 수 있습니다.

  • Node.js 프로세스의 힙 메모리 고갈 → Out of Memory 예외
  • 직렬화/역직렬화 단계에서의 과도한 CPU 사용 → 응답 지연 → 같은 인스턴스의 다른 요청까지 영향 (Cascading DoS)

CVSS 7.5(High)가 부여된 이유는 (1) 인증 없이도 누구나 시도 가능하고, (2) 단일 요청만으로 서비스 가용성을 떨어뜨릴 수 있으며, (3) RSC를 사용하는 모든 Next.js App Router 프로젝트가 광범위하게 영향받기 때문입니다.

패치 코드 예시

1. 패치 버전으로 업그레이드 (권장)

영향받는 RSC 패키지는 사용하는 React 메이저에 맞춰 패치된 버전을 설치합니다.

# React 19.0.x 사용 중
npm install [email protected] \
            [email protected] \
            [email protected]

# React 19.1.x 사용 중
npm install [email protected] \
            [email protected] \
            [email protected]

# React 19.2.x 사용 중 (권장)
npm install [email protected] \
            [email protected] \
            [email protected]

2. Next.js 사용자

Next.js App Router 사용자는 RSC 패키지를 직접 다루지 않으므로 Next.js 자체를 패치 버전으로 업그레이드하면 됩니다 (May 2026 통합 릴리즈에 함께 포함).

npm install [email protected]   # 15.x 라인
npm install [email protected]    # 16.x 라인
npm install next@latest    # 최신 안정

3. 임시 완화 방안 (패치 적용 전)

업스트림 패치를 즉시 적용하기 어려운 경우, 다음 방어 계층을 운영 환경에 추가하여 영향을 줄일 수 있습니다.

  • 요청 본문 크기 제한: 리버스 프록시(Nginx, Cloudflare, AWS ALB) 또는 WAF에서 RSC 엔드포인트의 요청 본문 크기를 사용 패턴에 맞춰 제한 (예: 256KB 또는 1MB).
  • 요청 빈도 제한 (Rate Limit): 동일 IP에서 단시간 다량의 RSC 요청이 들어올 경우 차단 또는 throttle.
  • 타임아웃 단축: Node.js 런타임의 요청 타임아웃을 짧게 설정해 단일 요청이 전체 인스턴스를 점유하지 못하도록 격리.

이 완화는 우회 가능성이 있으므로 어디까지나 패치 적용 전 일시적 보호망으로 사용해야 하며, 가능한 한 빠르게 패치 버전으로 업그레이드하는 것을 권장합니다.

정리

CVE-2026-23870 은 React Server Components 의 서버 함수 처리 경로에서 자원 사용 한계가 부족하여 단일 요청만으로 서비스 거부에 빠질 수 있는 결함입니다. RSC 또는 Next.js App Router 를 사용하는 모든 프로젝트는 즉시 패치 버전으로 업그레이드해야 합니다.

참고 자료

Credits

  • · zpao

이 페이지는 다음 데이터 출처를 기반으로 작성되었습니다:

  • · GitHub Advisory Database (CC-BY-4.0) — github.com/advisories
  • · National Vulnerability Database (Public Domain) — nvd.nist.gov
  • · MITRE CVE Program (royalty-free) — cve.mitre.org

ConfigDeck으로 설정 파일 업데이트하기

관련 설정 파일을 ConfigDeck에서 빠르게 생성합니다.

설정 파일 생성기 →

AI 코딩 도구 설정도 점검하세요

Cursor, Copilot, Claude Code 등 AI 코딩 도구 설정을 안내합니다.

AI Config 보기 →