Issue
2025년 12월 08일React와 Next.js의 취약점 발견?
- 우연히 해당 내용이 있어 읽어보고 내용 정리 및 내 프로젝트의 버전을 체크해보았다.
해당 글의 내용을 정리해보자면
🚨 React Server Components의 치명적인 보안 취약점 (핵심 정리)
React Server Components(RSC)에서 인증되지 않은 원격 코드 실행(Remote Code Execution, RCE)이 가능한 치명적인 보안 취약점이 발견되었습니다.
1. 취약점 개요
- 취약점 유형: 인증되지 않은 원격 코드 실행(Unauthenticated Remote Code Execution, RCE)
- 발생 원인: React가 React Server Function 엔드포인트로 전송된 페이로드(payload)를 디코딩하는 방식에 결함이 있어, 악성 HTTP 요청이 서버에서 코드를 실행하도록 만들 수 있습니다.
- 심각도: CVSS 10.0 (최고 등급의 치명적), CVE-2025-55182로 공개되었습니다.
- 특징: 앱에서 React Server Function 엔드포인트를 명시적으로 구현하지 않았더라도, React Server Components를 지원하는 경우 이 취약점에 노출될 수 있습니다.
2. 영향 범위 및 즉각적인 조치 사항
📌 영향을 받는 패키지 및 버전
다음 패키지의 특정 버전에서 취약점이 발견되었습니다.
react-server-dom-webpackreact-server-dom-parcelreact-server-dom-turbopack
취약 버전: 19.0, 19.1.0, 19.1.1, 19.2.0
🛠️ 즉각적인 조치 (수정된 버전)
다음 버전으로 즉시 업그레이드해야 합니다.
- 19.0.1
- 19.1.2
- 19.2.1
💻 영향을 받는 주요 프레임워크 및 번들러
RSC를 지원하는 다음 프레임워크 및 번들러를 사용하는 경우, 관련 패키지를 업데이트해야 합니다.
- Next.js
- React Router (불안정한 RSC API 사용 시)
- Waku
@parcel/rsc@vitejs/plugin-rscrwsdk
React
취약점이 React Server Components의 페이로드 디코딩 방식과 관련된 React 19 버전대 패키지에 있기 때문에, React 18을 포함한 이전 버전은 이 특정 취약점으로부터 안전하다고 판단할 수 있습니다.
Next.js
Next.js 15.0.x ~ 16.0.x 버전 라인과 Next.js 14의 특정 Canary 버전(14.3.0-canary.77 이상)만 언급하고 있습니다.
참고: Next.js 사용자의 경우, 해당 공지에서 제공된 패치 버전 (예: Next.js 15.0.5, 16.0.7 등)으로 업그레이드해야 합니다.
3. 영향을 받지 않는 경우
- 앱의 React 코드가 서버를 사용하지 않는 경우.
- 앱이 React Server Components를 지원하는 프레임워크, 번들러 또는 번들러 플러그인을 사용하지 않는 경우.
내 프로젝트에서는….?
실제로 내 포트폴리오 프로젝트의 React와 next버전을 살펴보았다.
// package.json "dependencies": { "next": "16.0.3", "react": "19.2.0", "react-dom": "19.2.0", }
실제로 내 프로젝트도 해당 취약점 범위에 포함되있는 형태였고, 현재 해당 버전의 배포시에 해당 에러를 통해 버전 변경을 유도하고 있었다.
💡
Error: Vulnerable version of Next.js detected, please update immediately. Learn More: https://vercel.link/CVE-2025-66478- 따라서 문서에 따라 안전한 수정 버전으로 변경하여 다시 배포하니 정상 배포 동작 완료
// package.json "dependencies": { "next": "16.0.7", "react": "19.2.1", "react-dom": "19.2.1", }