피드로 돌아가기
Node.js BlogSecurity
원문 읽기
Node.js 18.20.1 LTS가 HTTP/2 서버 크래시와 HTTP 요청 스머글링 보안 취약점 2건을 수정해 llhttp 9.2.1과 undici 5.28.4로 업데이트
Node.js 18.20.1 (LTS)
AI 요약
Context
Node.js HTTP/2 구현에서 Http2Session 소멸자의 검증 실패로 인한 서버 크래시 취약점이 존재했다. Content-Length 난독화를 통한 HTTP 요청 스머글링 공격이 가능한 상태였다.
Technical Solution
- CVE-2024-27983 수정: Http2Session 소멸자의 잘못된 어서션 검증 로직 패치
- CVE-2024-27982 수정: HTTP 요청 헤더의 Content-Length 값 검증 강화
- llhttp 버전을 9.2.1로 업그레이드하여 HTTP 파싱 보안 개선
- undici 버전을 5.28.4로 업그레이드하여 HTTP 클라이언트 라이브러리 보안 강화
Key Takeaway
Node.js LTS 버전은 보안 취약점 발견 시 신속한 패치를 통해 프로덕션 환경의 안정성을 유지하므로, HTTP/2 서버를 운영하는 엔지니어는 보안 릴리스를 우선적으로 적용해야 한다.
실천 포인트
Node.js
1
8.x를 사용하는 프로덕션 HTTP/2 서버를 운영할 때, CVE-2024-27983으로 인한 Http2Session 크래시와 CVE-2024-27982의 요청 스머글링 공격으로부터 보호받으려면
1
8.
2
0.1 이상으로 즉시 업그레이드해야 한다.