원문은 CC-BY-4.0 라이선스로 제공되며, 이 글은 한국어로 번역한 2차 저작물입니다.
보안 연구원들이 지난주 발표된 중요 취약점 패치를 테스트하던 중 React Server Components에서 두 가지 추가 취약점을 발견하여 공개했습니다.
이 새로운 취약점들은 원격 코드 실행(Remote Code Execution)을 허용하지 않습니다. React2Shell에 대한 패치는 원격 코드 실행 익스플로잇 완화에 효과적입니다.
새로운 취약점은 다음과 같이 공개되었습니다:
- 서비스 거부(Denial of Service) - 심각도 높음: CVE-2025-55184, CVE-2025-67779, 및 CVE-2026-23864 (CVSS 7.5)
- 소스 코드 노출(Source Code Exposure) - 심각도 중간: CVE-2025-55183 (CVSS 5.3)
새로 공개된 취약점의 심각도를 고려하여 즉시 업그레이드할 것을 권장합니다.
참고
이전에 게시된 패치는 취약합니다.
이전에 취약점을 해결하기 위해 업데이트를 진행하셨더라도 다시 한번 업데이트해야 합니다.
19.0.3, 19.1.4, 19.2.3 버전으로 업데이트하셨다면, 이 업데이트는 불완전하므로 다시 한번 업데이트해야 합니다.
업그레이드 단계는 이전 게시물의 지침을 참조하십시오.
이 취약점들에 대한 자세한 내용은 수정 사항 배포가 완료된 후 제공될 예정입니다.
즉시 조치 필요
이 취약점들은 CVE-2025-55182와 동일한 패키지 및 버전에 존재합니다.
여기에는 다음의 19.0.0, 19.0.1, 19.0.2, 19.0.3, 19.1.0, 19.1.1, 19.1.2, 19.1.3, 19.2.0, 19.2.1, 19.2.2, 19.2.3 버전이 포함됩니다:
수정 사항은 19.0.4, 19.1.5, 19.2.4 버전으로 백포팅되었습니다. 위에 나열된 패키지를 사용 중이라면 즉시 수정된 버전으로 업그레이드하십시오.
이전과 마찬가지로, 앱의 React 코드가 서버를 사용하지 않는 경우 이 취약점의 영향을 받지 않습니다. 앱이 React Server Components를 지원하는 프레임워크, 번들러 또는 번들러 플러그인을 사용하지 않는 경우에도 영향을 받지 않습니다.
참고
중요한 CVE는 후속 취약점을 발견하는 것이 일반적입니다.
중요 취약점이 공개되면, 연구원들은 초기 완화 조치가 우회될 수 있는지 확인하기 위해 인접한 코드 경로를 면밀히 조사하여 변형된 익스플로잇 기술을 찾습니다.
이 패턴은 JavaScript뿐만 아니라 산업 전반에 걸쳐 나타납니다. 예를 들어, Log4Shell 이후, 커뮤니티가 초기 수정 사항을 조사하면서 추가 CVE(1, 2)가 보고되었습니다.
추가 공개는 좌절스러울 수 있지만, 일반적으로 건전한 대응 주기의 신호입니다.
영향을 받는 프레임워크 및 번들러
일부 React 프레임워크와 번들러는 취약한 React 패키지에 의존하거나, 피어 의존성을 가지거나, 포함했습니다. 다음 React 프레임워크 및 번들러가 영향을 받습니다: next, react-router, waku, @parcel/rsc, @vite/rsc-plugin, 및 rwsdk.
업그레이드 단계는 이전 게시물의 지침을 참조하십시오.
호스팅 제공업체 완화 조치
이전과 마찬가지로, 여러 호스팅 제공업체와 협력하여 임시 완화 조치를 적용했습니다.
앱 보안을 위해 이러한 완화 조치에 의존해서는 안 되며, 즉시 업데이트해야 합니다.
React Native
모노레포 또는
react-dom을 사용하지 않는 React Native 사용자라면, package.json에 react 버전이 고정되어 있으며 추가 조치가 필요하지 않습니다.모노레포에서 React Native를 사용하는 경우, 설치된 경우에만 해당되는 패키지를 업데이트해야 합니다:
react-server-dom-webpackreact-server-dom-parcelreact-server-dom-turbopack
이는 보안 권고 사항을 완화하기 위해 필요하지만,
react 및 react-dom을 업데이트할 필요는 없으므로 React Native에서 버전 불일치 오류를 유발하지 않습니다.자세한 내용은 이 이슈를 참조하십시오.
심각도 높음: 다중 서비스 거부(Multiple Denial of Service)
CVE: CVE-2026-23864 기본 점수: 7.5 (높음) 날짜: 2026년 1월 26일
보안 연구원들은 React Server Components에 여전히 DoS 취약점이 존재함을 발견했습니다.
이 취약점은 Server Function 엔드포인트로 특별히 조작된 HTTP 요청을 보내 트리거될 수 있으며, 취약한 코드 경로, 애플리케이션 구성 및 애플리케이션 코드에 따라 서버 충돌, 메모리 부족 예외 또는 과도한 CPU 사용으로 이어질 수 있습니다.
2026년 1월 26일에 게시된 패치는 이러한 DoS 취약점을 완화합니다.
참고
추가 수정 사항 게시됨
CVE-2025-55184를 해결하기 위한 초기 수정 사항은 불완전했습니다.
이로 인해 이전 버전이 취약한 상태로 남았습니다. 19.0.4, 19.1.5, 19.2.4 버전은 안전합니다.
심각도 높음: 서비스 거부(Denial of Service)
CVE: CVE-2025-55184 및 CVE-2025-67779 기본 점수: 7.5 (높음)
보안 연구원들은 악의적인 HTTP 요청을 Craft하여 모든 Server Functions 엔드포인트로 보낼 수 있다는 사실을 발견했습니다. 이 요청은 React에 의해 역직렬화될 때 서버 프로세스를 중단시키고 CPU를 소비하는 무한 루프를 유발할 수 있습니다. 앱이 React Server Function 엔드포인트를 구현하지 않더라도, 앱이 React Server Components를 지원하는 경우 여전히 취약할 수 있습니다.
이는 공격자가 제품에 대한 사용자 접근을 거부하고 잠재적으로 서버 환경에 성능 영향을 미칠 수 있는 취약점 벡터를 생성합니다.
오늘 게시된 패치는 무한 루프를 방지하여 이를 완화합니다.
심각도 중간: 소스 코드 노출(Source Code Exposure)
CVE: CVE-2025-55183 기본 점수: 5.3 (중간)
한 보안 연구원은 취약한 Server Function으로 전송된 악의적인 HTTP 요청이 임의의 Server Function의 소스 코드를 안전하지 않게 반환할 수 있다는 사실을 발견했습니다. 악용은 Server Function이 존재하며 명시적으로 또는 암시적으로 문자열화된 인수를 노출하는 경우에 필요합니다:
공격자는 다음을 유출할 수 있습니다:
오늘 게시된 패치는 Server Function 소스 코드를 문자열화하는 것을 방지합니다.
참고
소스 코드 내의 비밀만 노출될 수 있습니다.
소스 코드에 하드코딩된 비밀은 노출될 수 있지만,
process.env.SECRET과 같은 런타임 비밀은 영향을 받지 않습니다.노출되는 코드의 범위는 Server Function 내의 코드로 제한되며, 번들러가 제공하는 인라이닝 정도에 따라 다른 함수가 포함될 수 있습니다.
항상 프로덕션 번들을 상대로 검증하십시오.
타임라인
- 12월 3일: Andrew MacPherson에 의해 Vercel 및 Meta Bug Bounty에 유출 보고.
- 12월 4일: GMO Flatt Security Inc.의 RyotaK에 의해 초기 DoS 보고.
- 12월 6일: 두 문제 모두 React 팀에서 확인했으며, 팀에서 조사 시작.
- 12월 7일: 초기 수정 사항 생성 및 React 팀에서 검증 및 새 패치 계획 시작.
- 12월 8일: 영향을 받는 호스팅 제공업체 및 오픈 소스 프로젝트에 통지.
- 12월 10일: 호스팅 제공업체 완화 조치 완료 및 패치 검증.
- 12월 11일: Shinsaku Nomura가 Meta Bug Bounty에 추가 DoS 보고.
- 12월 11일: 패치 게시 및 CVE-2025-55183 및 CVE-2025-55184로 공개적으로 공개.
- 12월 11일: 누락된 DoS 사례가 내부적으로 발견되어 패치되고 CVE-2025-67779로 공개적으로 공개.
- 1월 26일: 추가 DoS 사례가 발견되어 패치되고 CVE-2026-23864로 공개적으로 공개.
감사
소스 코드 노출 보고에 Andrew MacPherson (AndrewMohawk)에게, 서비스 거부 취약점 보고에 GMO Flatt Security Inc.의 RyotaK 및 Bitforest Co., Ltd.의 Shinsaku Nomura에게 감사합니다. 추가 서비스 거부 취약점 보고에 Winfunc Research의 Mufeed VH, Joachim Viide, GMO Flatt Security Inc의 RyotaK 및 Tencent Security YUNDING LAB의 Xiangwei Zhang에게 감사합니다.


