🇰🇷 한글 설명
Node.js의 http 모듈 내 llhttp 파서가 HTTP 요청을 구분할 때 CRLF 시퀀스를 엄격하게 사용하지 않는 취약점입니다. 이로 인해 HTTP 요청 스머글링(HRS) 공격이 발생할 수 있습니다.
💡 쉬운 설명
웹 서버가 요청의 끝을 확인하는 규칙이 느슨하여, 공격자가 몰래 다른 요청을 숨겨서 보낼 수 있는 문제입니다. 이를 통해 보안 검사를 우회하거나 다른 사용자의 데이터를 가로챌 위험이 있습니다.
🇺🇸 원문 (English)
The llhttp parser <v14.20.1, <v16.17.1 and <v18.9.1 in the http module in Node.js does not strictly use the CRLF sequence to delimit HTTP requests. This can lead to HTTP Request Smuggling (HRS).
📍 영향받는 시스템
Node.js llhttp parser <v14.20.1, <v16.17.1, <v18.9.1
⚔️ 공격 벡터
조작된 HTTP 요청의 구분자를 사용하여 프록시와 백엔드 서버 간의 해석 차이를 유도함
🛡️ 대응 방법
Node.js를 최신 보안 패치가 적용된 버전(v14.20.1, v16.17.1, v18.9.1 이상)으로 업데이트
🔧 검증 코드
출력된 Node.js 버전이 취약점이 해결된 버전보다 낮은지 확인
node -e 'console.log(process.version)'