🔍 CVE-2026-73493

7.5
CVSS Score
HIGH
2026-08-12
2026-10-24 15:10
✅ 완료

🇰🇷 한글 설명

Http4s의 Blaze 서버에서 WebSocket 메시지 조각의 총 크기나 개수에 제한을 두지 않아 발생하는 취약점입니다. 공격자가 종료되지 않은 메시지 조각을 지속적으로 전송하면 서버 JVM의 힙 메모리가 무제한으로 증가하여 OutOfMemoryError와 함께 서비스 거부(DoS) 상태가 발생할 수 있습니다.

💡 쉬운 설명

웹소켓을 통해 끝내지 않는 메시지 조각을 계속 보내 서버의 메모리를 가득 채우는 공격입니다. 이로 인해 서버가 메모리 부족으로 인해 멈추거나 강제 종료될 수 있습니다.

🇺🇸 원문 (English)

Http4s (http4s-blaze-server) is a minimal, idiomatic Scala interface for HTTP services. Prior to 0.23.18 and 1.0.0-M42, http4s-blaze-server aggregates fragments of an incoming WebSocket message with no limit on total size or fragment count. A client that completes a WebSocket handshake can send an unterminated fragmented message and drive unbounded heap growth in the server JVM, resulting in denial of service through OutOfMemoryError. Any http4s application serving WebSocket routes over BlazeServerBuilder is affected, no non-default configuration is required, and maxWebSocketBufferSize does not bound the aggregate because it bounds only individual frames. A single connection sending continuation frames that never set FIN forces the server to buffer every fragment until the heap is exhausted, terminating the JVM with OutOfMemoryError on the blaze selector thread. Small fragments amplify the cost through per-frame object overhead, so a modest volume of wire bytes is sufficient. This issue is fixed in versions 0.23.18 and 1.0.0-M42.

📍 영향받는 시스템

http4s-blaze-server 0.23.18 미만 및 1.0.0-M42 미만 버전

⚔️ 공격 벡터

WebSocket 핸드셰이크 완료 후 FIN 비트가 설정되지 않은 연속적인 프레임을 전송하여 메모리 고갈 유도

🛡️ 대응 방법

http4s 버전을 0.23.18 또는 1.0.0-M42 이상으로 업데이트

🔧 검증 코드

출력된 결과에서 http4s-blaze-server의 버전이 0.23.18 또는 1.0.0-M42보다 낮은지 확인

Shell / Script
mvn dependency:list | grep -E 'http4s-blaze-server'

📊 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