HTTP/2 HPACK amplification: detection signatures + the nginx/Apache directives that actually stop it (lab- & vps verified)
Source Reddit BlueTeam
Discussion
This security news discusses HTTP/2 HPACK amplification attacks, also known as the "HTTP/2 bomb," which can cause large server-side memory allocations from small client requests. The research covers multiple HTTP/2 server implementations including nginx, Apache httpd, Envoy, Pingora, and Microsoft IIS. The authors provide detection signatures and verified mitigation directives, such as specific nginx and Apache configuration changes and version upgrades. Lab tests show significant amplification effects, with memory usage rising from megabytes of wire traffic to multiple gigabytes of server RAM. Fixes are available for nginx (version 1.29.8 and later) and Apache httpd (mod_http2 version 2.0.41 and later). The status of fixes for IIS, Envoy, and Pingora is currently unknown.
r/blueteamsec (opens in a new tab)u/T0t470 points0 comments
Open harness for authorized lab validation:
Whole Project --> https://github.com/Leviticus-Triage/APEX-Ngin2dos
Lab write-up on HTTP/2 HPACK amplification (the "HTTP/2 bomb" primitive) — studied across nginx, Apache httpd, Envoy, Pingora and IIS with hard 8 GiB memory caps.
For defenders:
Detect: low wire-bytes / high header-count on HTTP/2; worker RSS climbing without a traffic spike and not receding after disconnects
Apache-specific: cookie-crumb merge path bypasses
LimitRequestFieldson pre-2.0.41mod_http2Harden: patch first (nginx ≥ 1.29.8 +
http2_max_headers; httpd mod_http2 ≥ 2.0.41), then stream/conn caps, tighter timeouts, emergency HTTP/2 disableVerify: authorization-gated harness to confirm your fix actually stops RSS climb (not just on paper)
Lab numbers: httpd ~0.19 MB wire → 8 GiB; nginx ~200 MB → 8 GiB. Single-IP caveat: ~31 concurrent bombs from one public IPv4, no persistent OOM.
Feedback on detection beyond rate-limiting welcome.