🇰🇷 한글 설명
Node.js HTTP/2 서버에서 클라이언트가 스트림 0에 WINDOW_UPDATE 프레임을 전송하여 흐름 제어 창이 최대값(2³¹-1)을 초과할 경우 메모리 누수가 발생합니다. 서버가 GOAWAY 프레임을 정상적으로 전송하더라도 Http2Session 객체가 해제되지 않고 메모리에 남게 됩니다.
💡 쉬운 설명
특수한 신호를 계속 보내 서버의 메모리를 조금씩 갉아먹는 취약점입니다. 시간이 지나면 서버의 메모리가 가득 차서 서비스가 느려지거나 멈출 수 있습니다.
🇺🇸 원문 (English)
A memory leak occurs in Node.js HTTP/2 servers when a client sends WINDOW_UPDATE frames on stream 0 (connection-level) that cause the flow control window to exceed the maximum value of 2³¹-1. The server correctly sends a GOAWAY frame, but the Http2Session object is never cleaned up.
This vulnerability affects HTTP2 users on Node.js 20, 22, 24 and 25.
📍 영향받는 시스템
Node.js 20, 22, 24, 25 버전의 HTTP/2 사용자
⚔️ 공격 벡터
조작된 WINDOW_UPDATE 프레임을 전송하여 서버의 Http2Session 객체 미삭제 유도
🛡️ 대응 방법
Node.js를 최신 보안 패치가 적용된 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 버전이 영향받는 버전(20, 22, 24, 25)에 해당하는지 확인하십시오.