🇰🇷 한글 설명
Node.js의 HTTP 파서가 조작된 Content-Length 헤더를 잘못 처리하여 HTTP 요청 스매깅(Request Smuggling) 공격이 가능한 취약점입니다. 공격자는 이를 통해 뒤에 오는 요청을 조작되거나 캐시된 응답으로 변조할 수 있습니다.
💡 쉬운 설명
웹 서버가 요청의 크기를 잘못 이해하면, 여러 요청을 하나의 요청으로 혼동할 수 있습니다. 이를 악용하면 다른 사용자의 요청을 가로채거나 조작할 수 있습니다.
🇺🇸 원문 (English)
Node.js 0.10.x before 0.10.42, 0.12.x before 0.12.10, 4.x before 4.3.0, and 5.x before 5.6.0 allow remote attackers to conduct HTTP request smuggling attacks via a crafted Content-Length HTTP header.
📍 영향받는 시스템
Node.js 0.10.x (0.10.42 이전), 0.12.x (0.12.10 이전), 4.x (4.3.0 이전), 5.x (5.6.0 이전)
⚔️ 공격 벡터
조작된 Content-Length 헤더가 포함된 HTTP 요청을 전송하여 요청 구분 로직 우회
🛡️ 대응 방법
Node.js를 안전한 버전(0.10.42+, 0.12.10+, 4.3.0+, 5.6.0+)으로 업그레이드
🔧 검증 코드
출력이 'Safe'면 안전한 버전, 'Vulnerable'이면 즉시 업그레이드 필요
node --version | grep -E 'v0\.10\.(4[2-9]|[5-9][0-9])|v0\.12\.(1[0-9]|[2-9])|v[4-9]|v[0-9][0-9]' && echo 'Safe' || echo 'Vulnerable'