데브허브 | DEVHUB | React RSC 대형 취약점 폭로! 당신의 서버도 위험합니다React RSC 대형 취약점 폭로! 당신의 서버도 위험합니다
- 리액트 서버 컴포넌트(RSC)에서 인증이 필요 없는 원격 코드 실행(RCE) 취약점이 발견되었습니다. 🚨
- 이 취약점은 CVSS 10.0으로 평가된 최고 등급의 심각한 보안 문제입니다. 💥
- 11월 29일 Naclone Davidson이 리액트 서버 함수 엔드포인트로 전송되는 페이로드 디코딩 결함을 악용하여 보고했습니다. 🕵️♂️
- 리액트 서버 함수 엔드포인트를 명시적으로 구현하지 않아도 RSC를 지원하는 앱은 모두 취약합니다. 🌐
- 취약한 버전은 React 19.0.0, 19.1.0, 19.1.1, 19.2.0이며, 리액트 컴파일러 적용 버전도 포함됩니다. ⚠️
- 즉각적인 조치로 React 19.0.1, 19.1.2, 19.2.1 버전으로 업데이트해야 합니다. ✅
- Next.js, React Router, Vite, Expo, Redwood 등 리액트 기반의 모든 애플리케이션이 영향을 받습니다. 💻
- 공격자가 서버 함수로 위장한 요청을 보내면 리액트가 이를 역직렬화하여 코드를 실행하는 구조적 문제입니다. 👾
- 호스팅 제공업체의 임시 완화 조치는 근본적인 해결책이 아니므로 반드시 패키지 자체를 업데이트해야 합니다. 🛡️
- Next.js 사용자는 현재 사용 중인 라인(예: 15.0.x)의 최신 패치 버전(예: 15.0.5)으로 업데이트해야 합니다. 🚀
- Next.js 14.3.0 카나리 7.7 이상 버전을 사용 중이라면 안정화된 14.x 버전으로 다운그레이드해야 합니다. ⬇️
- React Router, Expo, Redwood 등 관련 패키지들도 최신 버전으로 업데이트가 필요합니다. 📦
- 가장 간단한 방법은
package.json의 모든 의존성을 가장 안정적인 최신 버전으로 일괄 업데이트하는 것입니다. 🔄
- 취약점은 11월 29일 보고되어 12월 3일 수정 버전이 NPM에 게시되며 빠르게 해결되었습니다. 🗓️
- 현재 리액트 또는 넥스트JS 프로젝트를 진행 중이라면 즉시 관련 패키지를 업데이트하여 보안 위협에 대처해야 합니다. ⚡