🇰🇷 한글 설명
webpack-dev-server 5.2.5 이하 버전에서 인증되지 않은 사용자가 조작된 Host 헤더를 포함한 HTTP 요청을 보내거나, 조작된 Origin 헤더를 포함한 WebSocket 업그레이드를 시도할 경우 Node.js 프로세스가 강제 종료됩니다. 이 취약점은 호스트 검증 과정에서 발생하는 예외 처리 미흡으로 인해 발생하며, 개발 서버의 가용성을 저해합니다.
💡 쉬운 설명
공격자가 특수하게 조작된 요청을 보내면 개발 중인 웹 서버가 갑자기 꺼져버리는 문제입니다. 데이터가 유출되거나 해킹을 당하는 것은 아니지만, 개발 작업이 중단될 수 있습니다.
🇺🇸 원문 (English)
webpack-dev-server versions 5.2.5 and earlier terminate the whole Node.js process when an unauthenticated peer sends either a normal HTTP request with a malformed Host header or a WebSocket upgrade to the default /ws endpoint with a malformed Origin header. The malformed value causes an uncaught exception in the host-validation path and crashes the dev server. Impact is limited to availability of the development server, no data disclosure, no code execution. Patches: upgrade to webpack-dev-server 5.2.6. Workarounds: keep the dev server bound to localhost (the default) and do not expose it to untrusted networks.
📍 영향받는 시스템
webpack-dev-server 5.2.5 및 그 이전 모든 버전
⚔️ 공격 벡터
조작된 Host 헤더를 포함한 HTTP 요청 또는 조작된 Origin 헤더를 포함한 WebSocket 업그레이드 요청
🛡️ 대응 방법
webpack-dev-server를 5.2.6 버전 이상으로 업그레이드하거나, 서버를 localhost에만 바인딩하여 외부 노출을 차단하십시오.
🔧 검증 코드
출력된 결과에서 webpack-dev-server의 버전을 확인하여 5.2.6 미만인지 체크합니다.
npm list webpack-dev-server