Description
Protocol::HTTP2 versions before 1.13 for Perl is vulnerable to a HTTP/2 Bomb.
Protocol::HTTP2's inbound HPACK path has no header-list size limit, so a small HTTP/2 request can expand into large server memory (the "HTTP/2 bomb").
The headers_decode method materialises a full key+value copy per indexed reference with no running size check, and the stream_header_block_add method appends (since version 1.12) every CONTINUATION frame to the per-stream buffer unbounded.
MAX_HEADER_LIST_SIZE (default 65536) is advertised in SETTINGS but never consulted on decode. It is absent from the decoder and from the :limits export tag.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| CRUX | Protocol::HTTP2 | < 1.13 | 1.13 |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | libprotocol-http2-perl | 1.12-2 | — |
| Debian 13 | libprotocol-http2-perl | No fix yet | — |
| Debian 12 | libprotocol-http2-perl | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.04 LTS | libprotocol-http2-perl | No fix yet | — |
| Ubuntu 25.10 | libprotocol-http2-perl | No fix yet | — |
| Ubuntu 24.04 LTS | libprotocol-http2-perl | No fix yet | — |
| Ubuntu 22.04 LTS | libprotocol-http2-perl | No fix yet | — |
| Ubuntu 20.04 LTS | libprotocol-http2-perl | No fix yet | — |
Show 1 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 18.04 LTS | libprotocol-http2-perl | No fix yet | — |
SUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES for SAP 16.0 | perl-Protocol-HTTP2 | 1.10-160000.3.1 | SUSE-SU-2026:22188-1 |
| SLES 16.0 | perl-Protocol-HTTP2 | 1.10-160000.3.1 | SUSE-SU-2026:22188-1 |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Tumbleweed | perl-Protocol-HTTP2 | 1.130.0-1.1 | openSUSE-SU-2026:10988-1 |
| openSUSE Leap 16.0 | perl-Protocol-HTTP2 | 1.10-160000.3.1 | openSUSE-SU-2026:21125-1 |
Alpine
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Alpine v3.24 | perl-protocol-http2 | 1.14-r0 | — |
| Alpine v3.23 | perl-protocol-http2 | 1.14-r0 | — |
Advisories 3
- openSUSE-SU-2026:21125-1 Security update for perl-Protocol-HTTP2 SUSE / openSUSE Security Updates · Jun 30, 2026
- SUSE-SU-2026:22188-1 Security update for perl-Protocol-HTTP2 SUSE / openSUSE Security Updates · Jun 24, 2026
- openSUSE-SU-2026:10988-1 perl-Protocol-HTTP2-1.130.0-1.1 on GA media SUSE / openSUSE Security Updates · Jun 10, 2026
References
- https://metacpan.org/release/CRUX/Protocol-HTTP2-1.13/changes release-notes
- https://metacpan.org/release/CRUX/Protocol-HTTP2-1.12/source/lib/Protocol/HTTP2/HeaderCompression.pm#L133
- https://metacpan.org/release/CRUX/Protocol-HTTP2-1.12/source/lib/Protocol/HTTP2/Stream.pm#L414
- https://github.com/vlet/p5-Protocol-HTTP2/commit/822bf22224adbd662e8d0b865eeacb2b294d16cd.patch patch
- https://security.metacpan.org/patches/P/Protocol-HTTP2/1.12/CVE-2026-10725-r2.patch patch