Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach HTTP/2 endpoint using hpack
-
DeliveryCraft header block with long 0xFF varint
-
ExploitSend malformed HPACK input
-
ExecutionTrigger O(n^2) varint decoding
-
ImpactExhaust CPU / block processing
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V2 - Validation and Business Logic Resource consumption limits
MITRE ATT&CK
1 technique across 1 tactic: Impact The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires that the target application decode attacker-influenced HTTP/2 HPACK header data using python-hyper/hpack prior to version 4.2.0 - typically an internet-facing or otherwise reachable Python HTTP/2 server or client built on the h2/hyper stack. The specific trigger is a malformed variable-length integer encoded as a long sequence of 0xFF octets, which pre-fix has no upper bound and drives O(n^2) decoding. Limiting factors: the CVSS AT:P attack requirement reflects that the attacker must be able to submit unsanitized header input to the decoder; impact is confined to availability (a single processing path/worker), with no confidentiality or integrity effect. The documented workaround is to sanitize decoder input for long runs of 0xFF values. |
| Impact | This is a genuine but bounded denial-of-service issue, not a high-urgency emergency. The vendor CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L) and score of 6.3 (Medium) are internally consistent with the description: network-reachable, low complexity, no privileges or user interaction, but only a LOW availability impact and an AT:P attack requirement (the target must be feeding attacker-controlled HPACK header blocks into the decoder). The only impact is availability (VA:L) - there is no confidentiality or integrity exposure - which correctly caps the severity. No EPSS score was supplied, there is no CISA KEV listing, and no weaponized POC is provided; the referenced GitHub artifacts are the security advisory (GHSA-8v8h-hg4w-mvq2) and the fix commit, not exploit code. Signals are therefore consistent rather than conflicting: a real, easily-triggered algorithmic-complexity DoS with modest single-connection impact, meriting routine patching rather than crisis response. Note the 'unbounded' O(n^2) computation means impact scales with input size, so an attacker who can send large malformed header blocks could tie up a worker thread - worth prioritizing for internet-facing HTTP/2 endpoints that pass untrusted input to hpack. |
| Exploit ScenarioDerived | An attacker sends a malformed HTTP/2 HPACK header block containing a long run of 0xFF bytes encoding an unbounded variable-length integer to a Python service that decodes headers with hpack (e.g. via the h2 stack). The decoder enters run-away O(n^2) computation, consuming CPU and blocking further processing of that input. No authentication or user interaction is required; no public exploit code is identified, though the fix commit and a regression test (b'\xff\xff\xff\xff\xff\xff') illustrate the trigger. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 23, 2026
Denial of service in python-hyper/hpack prior to 4.2.0 allows unauthenticated remote attackers to force run-away computation by supplying malformed HTTP/2 header input containing a variable-length integer encoded as a long run of 0xFF octets; the pre-fix decoder imposes no upper bound on the integer length, producing O(n^2) decoding work that effectively blocks the processing path. The library is a core HPACK header-compression dependency of Python HTTP/2 stacks (h2/hyper), so any internet-facing or otherwise reachable Python HTTP/2 server or client that decodes attacker-influenced headers is exposed, though impact is limited to availability of the affected worker with no confidentiality or integrity effect. No KEV entry or public exploit code was identified at time of analysis, and risk is bounded: the vendor-released fix in hpack 4.2.0 caps variable integer decoding to uint32, and a documented input-sanitization workaround exists.
RemediationAI
Upgrade to the vendor-released patch, hpack 4.2.0 or later (pip install --upgrade 'hpack>=4.2.0'), and re-resolve transitive pins so that h2 and downstream frameworks pick up the fixed release; the changelog for 4.2.0 documents the uint32 restriction on variable integer decoding. If immediate upgrade is not possible, apply the vendor-documented workaround of sanitizing decoder input: reject or truncate HPACK header blocks containing long runs of 0xFF continuation octets before they reach hpack's decoder, since the pre-fix code path can be driven into quadratic work by roughly five or more trailing 0xFF bytes in a single integer field. The trade-off is that this requires a fronting filter or proxy layer that understands HTTP/2 framing - if it buffers or rewrites header blocks it adds latency and memory pressure, and a naive byte-scan for 0xFF can false-positive on legitimate high-entropy header values (for example binary or non-ASCII header content), so scope the check to the integer-prefix position rather than the whole block. Where a reverse proxy terminates HTTP/2 in front of the Python application and down-converts to HTTP/1.1, the hpack decode path is removed from the attacker's reach entirely, which is the cleanest short-term compensating control at the cost of losing end-to-end HTTP/2 semantics. Note that limiting concurrent connections or request rates reduces the number of blocked decode paths but does not eliminate the per-request O(n^2) blowup, so it should be treated as a supplement, not a substitute, for the 4.2.0 upgrade. The full advisory is at https://github.com/python-hyper/hpack/security/advisories/GHSA-8v8h-hg4w-mvq2.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in pypi
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
HPACK is the header compression scheme defined in RFC 7541 for HTTP/2, and python-hyper/hpack implements its encoder and decoder in Python. Section 5.1 of RFC 7541 defines a variable-length integer representation with an indefinite size; the same section explicitly warns that encoders may emit large numbers of zero-continuation octets, wasting octets and potentially overflowing integer values, and mandates that encodings exceeding implementation limits in value or octet length be treated as decoding errors. The root cause here is CWE-400 (Uncontrolled Resource Consumption): decode_integer() accepted arbitrarily long continuation sequences without a bound, so a malicious header block containing many 0xFF bytes forced the decoder into quadratic-time work before any error was raised. The upstream fix introduces VARINT_MAX_LENGTH = 5 octets (enough for a 5-bit prefix plus a uint32 payload) and raises HPACKDecodingError when the index exceeds that limit, with a regression test asserting that b'\xff' * 6 fails. The referenced commit also constrains round-trip property tests to max_value=2**32, confirming the intended decode range. The advisory cross-references the Go x/net/http2/hpack decoder and the Rust http2 crate decoder implementations, both of which encode structurally similar bound checks in their integer readers - useful comparison points for implementers porting or auditing equivalent logic. The vulnerability is network-reachable (AV:N), requires no privileges or user interaction, and needs the attack precondition AT:P reflected in the CVSS 4.0 vector: the attacker must be able to feed unsanitized header bytes to the decoder, which is normal for an HTTP/2 peer but is a genuine environmental precondition.
Know when Hpack gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
Network-reachable malformed header input, no auth or interaction, low-complexity algorithmic DoS with only partial single-path availability impact and no confidentiality or integrity effect.
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
hpack is an HTTP/2 Header Encoding for Python. Prior to version 4.2.0, unbounded variable integer decoding can cause run-away computation on malformed input leading to O(n^2) runtime, effectively blocking further processing with large enough unsanitized input. A fix is available in python-hyper/hpack v4.2.0 to restricted variable integer decoding to uint32 to prevent run-away computation. As a workaround, sanitize input to hpack decoder for long sequences of 0xFF values to prevent malicious use.
Blast Radius
ecosystem impact- 9,293 pypi packages depend on hpack (37 direct, 9,264 indirect)
Ecosystem-wide dependent count for version 4.2.0.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Same weakness CWE-400 – Uncontrolled Resource Consumption
View allSame technique Denial Of Service
View allVendor StatusVendor
SUSE
Severity: Moderate| Product | Status |
|---|---|
| openSUSE Tumbleweed | Fixed |
| SUSE Linux Enterprise Module for Python 3 15 SP7 | Affected |
| SUSE Linux Enterprise Server 15 SP7 | Affected |
| SUSE Linux Enterprise Desktop 15 SP7 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Server 15 SP7 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Desktop 15 SP7 | Affected |
| SUSE Linux Enterprise Module for Python 3 15 SP7 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Server 15 SP7 | Affected |
| SUSE Linux Enterprise Server 16.0 | Affected |
| SUSE Linux Enterprise Server 16.1 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Affected |
| openSUSE Leap 16.0 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | Affected |
| SUSE Linux Enterprise Module for Python 3 15 SP4 | Affected |
| SUSE Linux Enterprise Module for Python 3 15 SP5 | Affected |
| SUSE Linux Enterprise Module for Python 3 15 SP6 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP4 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP5 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP6 | Affected |
| SUSE Linux Enterprise Server 15 SP4 | Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP5 | Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP6 | Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | Affected |
| SUSE Enterprise Storage 7 | Affected |
| SUSE Enterprise Storage 7.1 | Affected |
| SUSE Linux Enterprise Desktop 15 SP4 | Affected |
| SUSE Linux Enterprise Desktop 15 SP5 | Affected |
| SUSE Linux Enterprise Desktop 15 SP6 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP2 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP3 | Affected |
| SUSE Linux Enterprise Real Time 15 SP2 | Affected |
| SUSE Linux Enterprise Real Time 15 SP3 | Affected |
| SUSE Linux Enterprise Real Time 15 SP4 | Affected |
| SUSE Linux Enterprise Server 15 SP2 | Affected |
| SUSE Linux Enterprise Server 15 SP2-BCL | Affected |
| SUSE Linux Enterprise Server 15 SP2-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP3 | Affected |
| SUSE Linux Enterprise Server 15 SP3-BCL | Affected |
| SUSE Linux Enterprise Server 15 SP3-LTSS | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP2 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP3 | Affected |
| SUSE Manager Proxy 4.1 | Affected |
| SUSE Manager Proxy 4.2 | Affected |
| SUSE Manager Proxy 4.3 | Affected |
| SUSE Manager Proxy LTS 4.3 | Affected |
| SUSE Manager Retail Branch Server 4.1 | Affected |
| SUSE Manager Retail Branch Server 4.2 | Affected |
| SUSE Manager Retail Branch Server 4.3 | Affected |
| SUSE Manager Retail Branch Server LTS 4.3 | Affected |
| SUSE Manager Server 4.1 | Affected |
| SUSE Manager Server 4.2 | Affected |
| SUSE Manager Server 4.3 | Affected |
| SUSE Manager Server LTS 4.3 | Affected |
| openSUSE Leap 15.3 | Affected |
| openSUSE Leap 15.4 | Affected |
| openSUSE Leap 15.5 | Affected |
| openSUSE Leap 15.6 | Affected |
| SUSE Linux Enterprise Server for NVIDIA 16.1 | Affected |
EUVD-2026-85712
GHSA-8v8h-hg4w-mvq2
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB