데브허브 | DEVHUB | Watch this if you use ReactWatch this if you use React
- React 19.x 버전(19, 19.1, 1911, 19.2)에서 심각한 원격 코드 실행(RCE) 취약점(CVE)이 발견되었습니다. 🚨
- 이 취약점은 백엔드와 프론트엔드 간 데이터 전송에 사용되는 '서버 컴포넌트 플라이트 프로토콜'을 하이재킹하여 서버에서 임의 코드를 실행할 수 있게 합니다. 💻
- 공식 CVE 심각도 점수 10점 만점에 10점을 받은, 현대 웹에서 가장 심각한 취약점 중 하나로 평가됩니다. 💥
- 클라우드플레어, 버셀, 넷리파이와 같은 주요 웹 호스팅 제공업체는 부분적인 방화벽 완화 조치를 제공하지만, 모든 React 사용자는 최신 마이너 버전으로 즉시 업데이트해야 합니다. 🛡️
- 이 취약점은 'React to Shell'로 명명되었으며, 개발자 경험을 향상시키기 위해 도입된 React의 독자적인 데이터 직렬화(promise 전달, 폼 액션 처리 등) 방식인 '플라이트 프로토콜'을 악용합니다. ✈️
- 취약점은 Lachlan Davidson에 의해 발견되었으며, 그는 이를 책임감 있게 공개하여 더 큰 피해를 막는 데 기여했습니다. 🕵️♂️
- 공격은
console.log와 constructor를 포함하는 특정 페이로드를 통해 이루어지며, 이는 취약한 서버에서 평가되어 셸 수준의 코드를 실행합니다. 😈
- React 팀이 개발자 경험을 위해 도입한 복잡한 메커니즘(예: 서버 컴포넌트, 서스펜스, 폼 액션의 숨겨진 필드)이 새로운 공격 표면을 만들었음을 보여줍니다. ⚖️