The SETTINGS handling in Bandit.HTTP2.Connection (lib/bandit/http2/connection.ex) passes remote_settings.header_table_size to HPAX.resize/2 with no server-side cap, and encode_headers encodes every response header as :store. Serving N responses on one connection therefore costs O(N²) CPU in the connection process.
This issue affects bandit: from 0.3.6 before 1.14.0.
Analysis and contextual insights are available on OpenCVE Cloud.
Vendor Workaround
From 0.7.0, cap the requests one HTTP/2 connection may serve, for example with http_2_options: [max_requests: 1000], so each connection and its encoder table is closed before the cost grows large. Alternatively, disable HTTP/2 with http_2_options: [enabled: false].
Tracking
Sign in to view the affected projects.
No advisories yet.
Mon, 26 Oct 2026 14:00:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Allocation of Resources Without Limits or Throttling vulnerability in the HTTP/2 implementation of mtrudel bandit allows an unauthenticated remote attacker to grow per-connection memory and CPU cost without bound via a large SETTINGS_HEADER_TABLE_SIZE. Bandit resizes its HPACK encoder table to whatever size the client advertises, up to 2^32-1 bytes, and indexes response headers into it. Because responses carry distinct values such as date or content-length, nothing is evicted and the table grows with every response for the life of the connection, while each lookup scans it linearly. The SETTINGS handling in Bandit.HTTP2.Connection (lib/bandit/http2/connection.ex) passes remote_settings.header_table_size to HPAX.resize/2 with no server-side cap, and encode_headers encodes every response header as :store. Serving N responses on one connection therefore costs O(N²) CPU in the connection process. This issue affects bandit: from 0.3.6 before 1.14.0. | |
| Title | Client-chosen HPACK encoder table size is applied uncapped, growing per-connection state with every response in Bandit | |
| First Time appeared |
Mtrudel
Mtrudel bandit |
|
| Weaknesses | CWE-770 | |
| CPEs | cpe:2.3:a:mtrudel:bandit:*:*:*:*:*:*:*:* | |
| Vendors & Products |
Mtrudel
Mtrudel bandit |
|
| References |
|
|
| Metrics |
cvssV4_0
|
Status: PUBLISHED
Assigner: EEF
Published:
Updated: 2026-10-26T15:35:50.929Z
Reserved: 2026-10-22T09:30:02.077Z
Link: CVE-2026-110499
No data.
Status : Received
Published: 2026-10-26T14:16:26.820
Modified: 2026-10-26T14:16:26.820
Link: CVE-2026-110499
No data.
OpenCVE Enrichment
Updated: 2026-10-26T15:30:15Z
-
CWE-770
Allocation of Resources Without Limits or Throttling