🔍 CVE-2026-109584

0.0
CVSS Score
UNKNOWN
2026-10-26
2026-10-26 16:59
✅ 완료

🇰🇷 한글 설명

mtrudel bandit의 HTTP/2 구현에서 고도로 압축된 데이터를 부적절하게 처리하는 취약점(데이터 증폭)이 존재합니다. 인증되지 않은 원격 공격자가 작은 HPACK 압축 HEADERS 블록으로 서버 메모리를 고갈시킬 수 있습니다. 해당 취약점은 bandit 0.3.3 이상 1.14.0 미만 버전에 영향을 미칩니다.

💡 쉬운 설명

아주 작은 요청 하나로 서버가 큰 쿠키 데이터를 메모리에 펼쳐서 메모리를 과도하게 사용하게 만들 수 있습니다. 동시에 여러 연결로 공격하면 서버 메모리가 모두 소진되어 서비스가 중단될 수 있습니다.

🇺🇸 원문 (English)

Improper Handling of Highly Compressed Data (Data Amplification) vulnerability in the HTTP/2 implementation of mtrudel bandit allows an unauthenticated remote attacker to exhaust server memory via a small HPACK-compressed HEADERS block. The block stores one large cookie value in the HPACK dynamic table and then references it tens of thousands of times with 1-byte indexed fields. In the reporter's run, a 49 KB block made a server with default settings allocate a 183 MB cookie binary before any application code ran, and every concurrent stream can repeat the cost. Bandit.HTTP2.Connection caps only the compressed block (max_header_block_size), and its check of the decoded list against max_header_list_size never fires because that setting defaults to :infinity. combine_cookie_crumbs/1 in lib/bandit/http2/stream.ex then joins every crumb into one binary. This issue affects bandit: from 0.3.3 before 1.14.0.

📍 영향받는 시스템

Elixir bandit 라이브러리 0.3.3 이상 1.14.0 미만 버전을 사용하는 웹 서버

⚔️ 공격 벡터

인증 없이 HPACK 압축을 악용한 작은 HTTP/2 HEADERS 블록을 다수 연결로 전송하여 대용량 쿠키 값을 반복 참조시켜 메모리를 고갈시킴

🛡️ 대응 방법

bandit을 1.14.0 이상으로 업그레이드하고, 필요시 max_header_list_size 설정을 명시적으로 제한

🔧 검증 코드

출력된 버전이 0.3.3 이상 1.14.0 미만이면 취약하며, 1.14.0 이상이면 패치된 버전입니다.

Shell / Script
cd /path/to/project && grep -E '"bandit"' mix.lock | head -1

💻 영향받는 소프트웨어

IBM WebSphere Application Server