🔍 CVE-2026-109869

7.5
CVSS Score
HIGH
2026-10-15
2026-10-19 20:45
✅ 완료

🇰🇷 한글 설명

Node.js용 HTTP 클라이언트 라이브러리인 undici의 특정 버전에서 fetch() 구현 시 발생하는 취약점입니다. 악의적인 서버가 5개 이상의 content-encoding을 포함한 응답을 보내고 본문을 전송하기 전에 연결을 끊으면, Node.js 프로세스가 예외 처리를 하지 못하고 충돌하여 종료됩니다. 이는 원격의 인증되지 않은 공격자가 단 한 번의 응답만으로 서비스 거부(DoS) 공격을 수행할 수 있게 합니다.

💡 쉬운 설명

나쁜 서버가 특수한 방식으로 응답을 보내면 Node.js 프로그램이 갑자기 꺼져버리는 문제입니다. 공격자가 이 방법을 사용하면 웹 서비스가 중단되어 정상적인 이용이 불가능해질 수 있습니다.

🇺🇸 원문 (English)

undici is an HTTP client library for Node.js. In versions 6.23.0 through 6.29.0, 7.18.0 through 7.30.0, and 8.0.0 through 8.12.1, its fetch() implementation crashes the Node.js process when a malicious server returns a response with more than five content codings and closes the connection before sending the body. undici rejects such responses because of a content-encoding limit, but it created the internal response stream before that check and returned without attaching an error listener or aborting the request, so the early close surfaces a content-length mismatch on the orphaned stream, which Node.js treats as an unhandled error and terminates the process. A remote, unauthenticated server can trigger this with a single response, even when the application correctly catches the fetch() rejection, resulting in a denial of service. The issue is fixed in undici 6.29.1, 7.30.1, and 8.12.2, and users should upgrade to one of those versions or later. There is no workaround.

📍 영향받는 시스템

undici 6.23.0-6.29.0, 7.18.0-7.30.0, 8.0.0-8.12.1

⚔️ 공격 벡터

원격의 악의적인 서버가 비정상적인 HTTP 응답(5개 이상의 content-encoding 및 조기 연결 종료)을 전송하여 발생

🛡️ 대응 방법

undici 버전을 6.29.1, 7.30.1 또는 8.12.2 이상으로 업그레이드하십시오.

🔧 검증 코드

출력된 undici의 버전이 취약한 범위(6.23.0-6.29.0, 7.18.0-7.30.0, 8.0.0-8.12.1)에 포함되는지 확인하십시오.

Shell / Script
npm list undici

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

💻 영향받는 소프트웨어

IBM WebSphere Application Server