🇰🇷 한글 설명
Quicly QUIC 프로토콜 구현체에서 발생하는 취약점으로, 공격자가 특정 오프셋을 가진 STREAM 프레임을 전송하여 비정상적인 흐름 제어 크레딧을 획득할 수 있습니다. 이로 인해 애플리케이션이 수신 버퍼를 과도하게 할당하게 되어 메모리 고갈 및 서비스 거부(DoS) 상태를 유발할 수 있습니다.
💡 쉬운 설명
공격자가 아주 적은 양의 데이터를 보내면서 마치 엄청나게 큰 데이터를 보낼 것처럼 속여 서버의 메모리를 순식간에 가득 채우는 공격입니다. 이로 인해 서버가 메모리 부족으로 인해 멈추거나 작동하지 않을 수 있습니다.
🇺🇸 원문 (English)
Quicly is an IETF QUIC protocol implementation intended primarily for use within the H2O HTTP server. Prior to commit 8b178e6, an adversarial peer could send a STREAM frame carrying just one byte at the largest offset being permitted to obtain additional flow control credit, which under certain circumstances could lead to a Denial of Service. Assuming the application prepares a receive buffer for storing all data that arrive out-of-order, up to the largest offset being received, this behavior could lead to the application allocating large amount of memory with the peer sending only a handful of packets, resulting in memory exhaustion. In addition to the receive buffer allocation strategy, the severity of this vulnerability depends on how the application controls the stream concurrency. In case of the H2O HTTP server, under its default setting, this bug increases the maximum amount of memory allocated per connection by about 4 times. This issue has been fixed by commit 8b178e6.
📍 영향받는 시스템
Quicly (commit 8b178e6 이전 버전) 및 H2O HTTP 서버
⚔️ 공격 벡터
조작된 오프셋을 가진 STREAM 프레임을 전송하여 메모리 할당 유도
🛡️ 대응 방법
Quicly 라이브러리를 커밋 8b178e6 이상 버전으로 업데이트
🔧 검증 코드
명령어 결과로 8b178e6가 포함된 커밋 해시가 출력되면 취약점이 해결된 상태입니다.
git log -1 --format=%H | grep 8b178e6
📊 CVSS Vector String
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
💻 영향받는 소프트웨어
IBM WebSphere Application Server